otfcc adalah perpustakaan C dan utilitas yang digunakan untuk parsing dan menulis file font opentype.
GSUB , GPOS dan GDEF ), CFD CID-keyed, metrik vertikal, dan banyak lagi.ttx pada CFF OTF, dan 40 × pada TTF.makeotf untuk membangun OTF CFF yang dioptimalkan sepenuhnya. Anda dapat mengunduh binari prebuilt di sini.
Jika Anda memiliki homebrew, cukup jalankan yang berikut di terminal Anda.
brew tap caryll/tap
brew install otfcc-mac64 Catatan: Diperlukan instalasi XCode lengkap. Silakan lihat instruksi di sini jika Anda melihat kesalahan yang terkait dengan xcode-select .
Jika tidak, Anda mungkin perlu mengklik "rilis" di atas, dan mengunduh arsip di dalamnya.
Paket otfcc dapat ditemukan di sini.
Lihat di bawah.
otfccdump : Buang file font opentype ke JSON otfccdump [OPTIONS] input.[otf|ttf|ttc]
-h, --help : Display this help message and exit.
-v, --version : Display version information and exit.
-o <file> : Set output file path to <file>. When absent the dump
will be written to STDOUT.
-n <n>, --ttc-index <n> : Use the <n>th subfont within the input font.
--pretty : Prettify the output JSON.
--ugly : Force uglify the output JSON.
--verbose : Show more information when building.
--ignore-glyph-order : Do not export glyph order information.
--glyph-name-prefix pfx : Add a prefix to the glyph names.
--ignore-hints : Do not export hinting information.
--decimal-cmap : Export 'cmap' keys as decimal number.
--name-by-hash : Name glyphs using its hash value.
--add-bom : Add BOM mark in the output. (It is default on Windows
when redirecting to another program. Use --no-bom to
turn it off.)
otfccbuild : Bangun file font OpenType dari JSON Usage : otfccbuild [OPTIONS] [input.json] -o output.[ttf|otf]
input.json : Path to input file. When absent the input will be
read from the STDIN.
-h, --help : Display this help message and exit.
-v, --version : Display version information and exit.
-o <file> : Set output file path to <file>.
-s, --dummy-dsig : Include an empty DSIG table in the font. For some
Microsoft applications, DSIG is required to enable
OpenType features.
-O<n> : Specify the level for optimization.
-O0 Turn off any optimization.
-O1 Default optimization.
-O2 More aggressive optimizations for web font. In this
level, the following options will be set:
--merge-features
--short-post
--subroutinize
-O3 The most aggressive opptimization strategy will be
used. In this level, these options will be set:
--force-cid
--ignore-glyph-order
--verbose : Show more information when building.
--ignore-hints : Ignore the hinting information in the input.
--keep-average-char-width : Keep the OS/2.xAvgCharWidth value from the input
instead of stating the average width of glyphs.
Useful when creating a monospaced font.
--keep-unicode-ranges : Keep the OS/2.ulUnicodeRange[1-4] as-is.
--keep-modified-time : Keep the head.modified time in the json, instead of
using current time.
--short-post : Don't export glyph names in the result font.
--ignore-glyph-order, -i : Ignore the glyph order information in the input.
--keep-glyph-order, -k : Keep the glyph order information in the input.
Use to preserve glyph order under -O2 and -O3.
--dont-ignore-glyph-order : Same as --keep-glyph-order.
--merge-features : Merge duplicate OpenType feature definitions.
--dont-merge-features : Keep duplicate OpenType feature definitions.
--merge-lookups : Merge duplicate OpenType lookups.
--dont-merge-lookups : Keep duplicate OpenType lookups.
--force-cid : Convert name-keyed CFF OTF into CID-keyed.
--subroutinize : Subroutinize CFF table.
--stub-cmap4 : Create a stub `cmap` format 4 subtable if format
12 subtable is present.
otfcc dapat dibangun di sejumlah platform. Ini menggunakan sistem premake build.
Ini dikembangkan dan dioptimalkan untuk dentang/llvm, oleh karena itu sangat disarankan untuk dikompilasi dengan dentang/llvm, tetapi jika itu tidak mungkin GCC juga didukung, GCC versi 5.1 atau yang lebih baru menjadi pilihan yang disukai untuk kinerja.
Di Linux, dentang/llvm atau GCC dapat digunakan untuk membangun otfcc .
premake5 gmake
cd build/gmake
make config=release_x64Jika Anda memiliki ninja yang diinstal pada sistem Anda, Anda juga dapat menggunakan ninja:
premake5 ninja
cd build/ninja
ninja otfccdump_release_x64 otfccbuild_release_x64Ubah target di atas bila perlu.
Di Windows, membangun otfcc diuji di bawah toolchains yang tercantum di bawah ini. premake5 vs2015 default akan menghasilkan solusi Visual Studio menggunakan Clang-CL sebagai kompilernya.
GCC 5.1 termasuk dalam TDM-GCC , atau GCC 6.1.0 di Mingw-W64. Jalankan yang berikut dari baris perintah (ubah config bila perlu):
premake5 gmake
cd build/gmake
make config=release_x64 Untuk menggunakan ninja seperti itu di Linux, Anda perlu menentukan --os=linux saat menggunakan premake5 ninja .
Visual C ++ Building Tools (Mar 2016) dengan dentang/llvm 3.9. Hanya pembuatan rilis yang diuji. Jalankan berikut ini dari prompt perintah Visual C ++:
premake5 vs2015
msbuild buildvsotfcc.sln /property:Configuration=Release Premake5 (dapat diinstal melalui brew install premake --devel , atau ditemukan di direktori dep/bin-osx ) menyediakan kemampuan untuk menghasilkan proyek XCODE. Berlari
premake5 xcode4 Dan kemudian Anda dapat membuka build/xcode/otfcc.xcworkspace dan membangun dengan Xcode. Anda dapat menemukan binari yang dibangun di bin/ .
Harap pastikan bahwa mode pengembang Xcode diaktifkan.
Untuk membangun binari di terminal Anda, jalankan
xcodebuild -workspace build/xcode/otfcc.xcworkspace -scheme otfccbuild -configuration Release
xcodebuild -workspace build/xcode/otfcc.xcworkspace -scheme otfccdump -configuration Release