У меня есть файл WOFF, загруженный с веб-сайта, который я хочу преобразовать для использования в документах Microsoft Word и т.д. Есть ли бесплатный способ сделать это? После долгих поисков я не нашел пути, поэтому обращаюсь к Super User за помощью.
Преобразование шрифта из WOFF (Web Open Font Format) в формат, который я могу использовать в MS Word
6 ответов
Да, формат WOFF является контейнером для табличной структуры sfnt (используется TrueType и OpenType). Он добавляет некоторые метаданные к шрифту TTF/OTF, а также может сжимать фактические данные шрифта.
Если вы хотите конвертировать из WOFF в обернутый шрифт TTF/OTF, вы можете использовать инструмент woff2sfnt, созданный Джонатаном Кью из Mozilla. Он предоставляет предварительно скомпилированные двоичные файлы для инструмента sfnt2woff (конвертировать из TTF/OTF в WOFF) для OS X и Windows, но не для инструмента woff2sfnt (конвертировать из WOFF в TTF/OTF), поэтому вы должны скомпилировать из источник. Это легко сделать, если у вас есть работающая цепочка инструментов компилятора - просто скачайте исходный zip-файл и запустите make
.
Когда у вас есть работающий бинарный файл woff2sfnt, вы просто делаете:
$ ./woff2sfnt font.woff > font.otf
Результирующий шрифт - это обычный шрифт TTF/OTF, который вы можете использовать, но учтите, что если вы загружаете шрифт WOFF с веб-сайта, вы должны соблюдать лицензию этого шрифта. Лицензионная информация может быть включена в метаданные WOFF.
Следуя ссылке Эрика Тьернлунда, я загрузил исходный код и скомпилировал исполняемый файл i386 для woff2sfnt
и sfnt2woff
для Windows. Вы можете скачать его с моего Dropbox здесь.
(Обратите внимание, что это работает и на машинах x86-64. Фактически, вы не можете собрать его для x86-64, потому что двоичный объект, предоставленный Джонатаном Кью, предназначен для типа архитектуры i386.)
Вы можете использовать FontForge для конвертации - это приложение, которое может создавать и редактировать файлы шрифтов.
Вы устанавливаете его, а затем вы можете щелкнуть правой кнопкой мыши по файлу шрифта и выбрать «Свойства». Рядом с «Открыть с помощью» нажмите «Изменить», затем перейдите к «Обзор»:
Затем вам нужно найти местоположение исполняемого файла FontForge - в Windows 7 64bit он находится здесь:
C:\Program Files (x86)\FontForge\run_fontforge.exe
Открыв шрифт, вы игнорируете большинство ошибок, связанных с неправильными типами таблиц и прочим, и нажимаете «Сгенерировать шрифты»:
Выберите место сохранения и в качестве формата экспорта укажите ttf
или otf
. Шрифты OTF иногда могут иметь более высокое качество в зависимости от импортируемого шрифта.
Fontforge может использовать различные типы шрифтов для экспорта и импорта, поэтому его можно использовать и для преобразования других шрифтов. Это также очень полезно для создания или воссоздания ваших собственных шрифтов. Существует руководство здесь с другими видами использования FontForge.
я получил исходный код woff2sfnt для компиляции для windows 10 x64 со следующими шагами, собранными из других ссылок (т.е. я не претендую на какую-либо оригинальную мысль здесь)
- исходный хост mozilla, кажется, мертв, нашел его здесь: https://github.com/wget/sfnt2woff... распаковал все это в рабочую папку
- использовал http://tdm-gcc.tdragon.net/ как дружественный установщик стека компилятора gcc
- добавлен #include <fcntl.h> в верхней части woff2sfnt.c под #ifdef WIN32, в дополнение к io.h уже там
- скачал исходник zlib с http://www.zlib.net/ и скопировал все его корневые файлы .c и .h в мою рабочую папку
- моя командная строка gcc :
gcc -o woff2sfnt.exe woff2sfnt.c woff.c compress.c uncompr.c deflate.c inflate.c adler32.c inffast.c crc32.c trees.c zutil.c inftrees.c
я понимаю, что все это очень грубая сила, потому что я простой программист на C # с мягким подбрюшком, предоставляемым современными инструментами, не связанным с правильной работой gcc.
конвертировать файлы WOFF2 в ttf на macOS, попробуйте
brew install fonttools
ttx font.woff
ttx font.ttx
ttx font.woff
преобразует ваш файл .woff
файл .ttx
(формат файла шрифта XML). Затем ttx font.ttx
преобразует .ttx
в .ttf
Если файл, который вы получаете из ttx font.ttx
не может быть импортирован, вы можете попробовать перетащить font.ttf
в Font Book, прочитать ошибки (щелкнуть стрелку вниз рядом с именем шрифта) и исправить их в . файл .ttx
. Например, мне пришлось добавить запись namerecord
.
Для пакетного преобразования попробуйте
for f in *.woff; do ttx $f; done
for f in *.ttx; do ttx $f; done
Я также попробовал Google Woff2 из этого репо
brew tap bramstein/webfonttools
brew install woff2
woff2_decompress font.woff
но это не создавало никаких файлов .ttf
или .otf
.
В конце концов, я гуглил "fontname otf" и установил его вместо этого.
Вы можете использовать онлайн-конвертер шрифтов, например: