로컬 사용을위한 Google 글꼴을 추출하고 준비하기위한 자동 웹 크롤러. 이것은 유럽 데이터 보호법으로 인해 Nessessary입니다. (DSGVO) 모든 글꼴 파일을 직접 다운로드하고 연결하는 것은 깔끔합니다. 그래서 프로세스를 자동화하기 위해 작은 파이썬 스크립트를 작성했습니다.
"fonts.googleapis.com"URL을 통해 Google 글꼴에 액세스 할 때 파일은 요청 직후에 생성됩니다. 따라서 런타임에 글꼴 데이터에 액세스하려면 WebCrawler가 필요합니다.
이 Repo의 기본 폴더에서 시스템 CLI를 시작하고 다음 명령을 따라 실행하십시오.
python getGoogleFonts.py
그 후, 오래된 Google-Font 포함 링크를 찾으십시오. 다음과 같이 보일 것입니다.
<html>
<header>
<title>My website</title>
...
<link href="https://fonts.googleapis.com/css?family=Cormorant+Garamond:700,700i|Nunito+Sans:400,700,900" rel="stylesheet">
...
Python Cli Promt에 URL 자체를 입력하십시오.
Please copy your Google® fonts include URL here:
https://fonts.googleapis.com/css?family=Cormorant+Garamond:700,700i|Nunito+Sans:400,700,900
그 후에는 export -Folder 내의 모든 Nessessary 파일에 액세스 할 수 있습니다.
모든 글꼴은 fonts -folder로 다운로드됩니다. 그 외에도, header.html font.css -file로서 생성됩니다.
font.css -file은 다음과 같습니다.
/* CORMORANT GARAMOND | latin-ext */
/* italic-700 */
@font-face{
font-family: 'Cormorant Garamond';
font-style: italic;
font-weight: 700;
src: url('../src/fonts/Cormorant-Garamond-italic-700-latin-ext.woff2') format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* normal-700 */
@font-face{
font-family: 'Cormorant Garamond';
font-style: normal;
font-weight: 700;
...
새로 생성 된 fonts -Folder를 주요 프로젝트 루트의 src 폴더에 넣으십시오. src -Folder가없는 경우 새 제품 만 만드십시오. 또한 font.css -file header.html 에서 모든 글꼴 src -Attributes의 경로를 수동으로 조정할 수 있습니다.
font.css -file을 주요 프로젝트 루트의 css -Folder에 넣으십시오. 프로젝트의 다른 폴더를 사용하려면 header.html 에서 마지막 줄의 경로를 조정하십시오.
header.html 의 내용을 글꼴을 사용하려는 모든 사이트의 헤더 섹션에 복사하십시오. 코드는 다음과 같이 보일 것입니다.
<html>
<header>
<title>My website</title>
...
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Cormorant-Garamond-italic-700-latin-ext.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Cormorant-Garamond-normal-700-latin-ext.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Cormorant-Garamond-italic-700-latin.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Cormorant-Garamond-normal-700-latin.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Nunito-Sans-normal-400-latin-ext.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Nunito-Sans-normal-700-latin-ext.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Nunito-Sans-normal-900-latin-ext.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Nunito-Sans-normal-400-latin.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Nunito-Sans-normal-700-latin.woff2" crossorigin="anonymous" />
<link as="font" rel="preload" type="font/woff2" href="./src/fonts/Nunito-Sans-normal-900-latin.woff2" crossorigin="anonymous" />
<link rel="preload stylesheet" as="style" href="./css/font.css" />
...
아직 구현하지 않은 것