OpenType 기능 냉동고를 사용하면 일부 OpenType 기능을 글꼴로 "동결"할 수 있습니다.
이러한 기능은 "기본적으로"이므로 OpenType 기능을 통해 이전에 액세스 할 수있는 문자 (예 : SmallCaps, Oldstyle Numerals 또는 Localized Forms 등)는 이제 LibReoffice, OpenOffice 및 Smallcaps의 경우 Microsoft Office와 같은 특정 기능을 지원하지 않는 앱에서도 OPENTYPE 기능을 지원하지 않는 앱에서도 액세스 할 수 있습니다.
참고 :이 도구는 실제로 지정된 GSUB 기능을 적용하여 글꼴의 cmap 테이블을 다시 만듭니다. Glyph에 cmap 항목이없는 경우 대체물에 효과적이지 않습니다. 단일 및 대체 치환 만 지원됩니다.
이 도구는 OTFeatureFreezer : 특별한 사망으로 다운로드하여 실행할 수있는 MacOS 및 Windows 용 간단한 GUI (그래픽) 앱과 PyftFeatFreeze : CLI (Command-Line) 앱을 컴퓨터에 설치 해야하는 CLI (명령 줄) 앱의 두 가지 버전으로 제공됩니다.
현재 버전 : 1.32
이 도구는 먼저 Python 3.6 이상을 설치해야합니다. https://www.python.org 또는 패키지 관리자에서 받으십시오.
PIPX를 사용하여 Python 명령 줄 도구를 설치하는 것이 좋습니다. Pipx는 컴퓨터에 깔끔하게 그들을 집어 넣고 Python 설치에 엉망이되지 않고 모든 플랫폼에서 Python 도구를 추가, 업데이트 및 제거하는 쉬운 방법을 제공합니다.
pipx install opentype-feature-freezer
다른 Python 패키지와 같이 pip 로 설치하십시오.
# This is best done inside a virtual environment, so you don't pollute
# your Python installation and need no special privileges to install anything.
pip install --upgrade opentype-feature-freezer
이것이 작동하지 않으면 시도하십시오.
python3 -m pip install --user --upgrade opentype-feature-freezer
pip install --upgrade git+https://github.com/twardoch/fonttools-opentype-feature-freezer
이것이 작동하지 않으면 사용하십시오.
python3 -m pip install --user --upgrade git+https://github.com/twardoch/fonttools-opentype-feature-freezer
pip install --upgrade configparser 수행해야 할 수도 있습니다. 글꼴 charissil-r.ttf (메뉴 이름 "charis sil")가 있다고 가정 해 보겠습니다.이 글꼴에는 OpenType 레이아웃 기능 c2sc (대문자) 및 smcp (소문자)를 통해 액세스 할 수있는 실제 스몰 캡이 포함되어 있습니다. 기본적으로 실제 스몰 캡을 사용할 수있는 두 번째 글꼴을 만들고 싶다고 가정 해 봅시다. 그냥 실행 :
pyftfeatfreeze -f 'c2sc,smcp' -S -U SC -R 'Charis SIL/Charix,CharisSIL/Charix' CharisSIL-R.ttf CharixSC-R.ttf
새로운 글꼴 charissil-r.ttf (메뉴 이름 "charix sc")가 있습니다. 이 글꼴에는 소문자 및 대문자 대신 스몰 캡이 있으며 모든 앱에서 사용할 수 있습니다.
"charis sil"글꼴은 OFL에 따라 라이센스가 부여되며 예약 된 글꼴 이름 "charis"및 "sil"을 사용하기 때문에 -R 옵션을 지정하여 문자열 Charis SIL 과 CharisSIL Charix 로 대체했습니다. 이런 식으로 수정 된 글꼴은 OFL을 준수하며 배포 할 수 있습니다.
다음 예제는 모든 앱에서 불가리아 현지화 된 양식을 기본적으로 사용할 수 있도록 글꼴을 다시 얻습니다 (접미사“BG”는 메뉴 이름에 추가됩니다).
pyftfeatfreeze -f 'locl' -s 'cyrl' -l 'BGR ' -S -U BG SomeFont.ttf SomeFontBG.ttf
참고 : 여러 스크립트 또는 언어 시스템에서 기능을 다시 만들려면 도구를 여러 번 실행하십시오 (이전 실행의 출력을 입력으로 사용). 최종 실행에서만 -S 옵션을 사용하십시오.
다음은 "기능 동결"을 수행하지 않고 모든 내부 글꼴 이름 ( name 및 CFF 테이블)에서 Otal 의 String Lato 대체합니다. 이것은 내부 글꼴 이름을 빠르게 변경하는 데 사용될 수 있습니다.
pyftfeatfreeze -R 'Lato/Otal' Lato-Regular.ttf Otal-Regular.ttf
usage: pyftfeatfreeze [-h] [-f FEATURES] [-s SCRIPT] [-l LANG] [-z] [-S]
[-U USESUFFIX] [-R REPLACENAMES] [-i] [-r] [-n] [-v]
[-V]
inpath [outpath]
With pyftfeatfreeze you can "freeze" some OpenType features into a font. These
features are then "on by default", even in apps that don't support OpenType
features. Internally, the tool remaps the "cmap" table of the font by applying
the specified GSUB features. Only single and alternate substitutions are
supported.
positional arguments:
inpath input .otf or .ttf font file
outpath output .otf or .ttf font file (optional)
optional arguments:
-h, --help show this help message and exit
options to control feature freezing:
-f FEATURES, --features FEATURES
comma-separated list of OpenType feature tags, e.g.
'smcp,c2sc,onum'
-s SCRIPT, --script SCRIPT
OpenType script tag, e.g. 'cyrl' (default: 'latn')
-l LANG, --lang LANG OpenType language tag, e.g. 'SRB ' (optional)
-z, --zapnames zap glyphnames from the font ('post' table version 3,
.ttf only)
options to control font renaming:
-S, --suffix add a suffix to the font family name (by default, the
suffix will be constructed from the OpenType feature
tags)
-U USESUFFIX, --usesuffix USESUFFIX
use a custom suffix when --suffix is provided
-R REPLACENAMES, --replacenames REPLACENAMES
search for strings in the font naming tables and
replace them, format is
'search1/replace1,search2/replace2,...'
-i, --info update font version string
reporting options:
-r, --report report languages, scripts and features in font
-n, --names output names of remapped glyphs during processing
-v, --verbose print additional information during processing
-V, --version show program's version number and exit
Examples: pyftfeatfreeze -f 'c2sc,smcp' -S -U SC OpenSans.ttf OpenSansSC.ttf
pyftfeatfreeze -R 'Lato/Otal' Lato-Regular.ttf Otal-Regular.ttf
팁 : -n 옵션은 공간 분리 된 "냉동"글리프 목록을 출력합니다. 파일로 리디렉션되면이 목록을 pyftsubset 의 입력으로 사용할 수있어 "Frozen"글리프 만 포함 된 작은 글꼴을 만들 수 있습니다.
문제를보고하려면 문제를 여십시오. GitHub 계정이 필요합니다.
이 도구는 Apache 라이센스, 버전 2.0에 따라 "있는 그대로"라이센스가 부여됩니다. 이 도구를 사용하면 보증 부인 및 책임 제한을 포함하여 라이센스의 모든 조건을 수락합니다. 이 도구를 사용하는 경우 글꼴의 EULA에 수정이 허용되는 경우 상담하십시오. 글꼴이 OFL에 따라 라이센스가 부여되고 예약 된 글꼴 이름을 사용하는 경우 -R 옵션을 사용하여 예약 된 글꼴 이름을 다른 것으로 변경하십시오.
이 도구는 Python 3.6+ 용으로 작성되었으며 FontTools/TTX를 사용합니다.
-s (스크립트) 옵션을 변경하여 제공되지 않으면 리핑이 모든 스크립트에 있습니다.-S (접미사) 옵션을 변경하십시오.fonttools-utils Repo의 다른 도구는 이제 FontTools-TTXJSON 및 MAC-OS-X-SYSTEM-FONT-Replacer에 있습니다.파이썬 패키지를 만들려면시를 설치하십시오.
pip install poetry
또는
python3 -m install --user --upgrade poetry
그런 다음 프로젝트의 기본 폴더에서 실행됩니다.
poetry build
DMG & EXE를 구축하려면 MacOS가 필요합니다. 앱 하위 폴더에서 run ./macdeploy all