Введение
FontForge — редактор шрифтов FOSS, поддерживающий множество распространенных форматов шрифтов. Разработанный преимущественно Джорджем Уильямсом до 2012 года, FontForge является свободным программным обеспечением и распространяется по смешанной лицензии GNU General Public License версии 3 и 3-clause BSD. Он доступен для операционных систем, включая Linux, Windows и macOS, и локализован на 12 языков. Для упрощения автоматического преобразования форматов и других повторяющихся задач FontForge реализует два языка сценариев: собственный язык и Python. FontForge может запускать скрипты из графического интерфейса, из командной строки, а также предоставляет свои функции в виде модуля Python, что позволяет интегрировать его в любую программу на Python. FontForge поддерживает спецификацию файлов функций OpenType от Adobe (с собственными расширениями синтаксиса). Он также поддерживает неофициальные расширения Microsoft для математического набора текста (таблицу MATH), представленные в Cambria Math и поддерживаемые Office 2007, XeTeX и LuaTeX. По крайней мере один бесплатный шрифт OpenType для математических формул был разработан в FontForge. FontForge использует FreeType для рендеринга шрифтов на экране. Начиная с релиза от 15 ноября 2008 года, FontForge использует программные библиотеки libcairo и libpango для графики и рендеринга текста, обеспечивая сглаживание графики и поддержку сложной компоновки текста. FontForge может использовать Potrace или AutoTrace для автоматического обведения растровых изображений и импорта их в шрифт. Части кода FontForge используются LuaTeX для чтения и разбора шрифтов OpenType. Исходный код FontForge включает в себя ряд служебных программ, в том числе 'showttf', которая отображает содержимое бинарных файлов шрифтов, а также конвертер и деконвертер WOFF.
FontForge is a FOSS font editor which supports many common font formats. Developed primarily by George Williams until 2012, FontForge is free software and is distributed under a mix of the GNU General Public License Version 3 and the 3 clause BSD license. It is available for operating systems including Linux, Windows, and macOS, and is localized into 12 languages. To facilitate automated format conversion and other repetitive tasks, FontForge implements two scripting languages: its own language and Python. FontForge can run scripts from its GUI, from the command line, and also offers its features as a Python module, so it can be integrated into any Python program. FontForge supports Adobe's OpenType feature file specification (with its own extensions to the syntax). It also supports the unofficial Microsoft mathematical typesetting extensions (MATH table) introduced for Cambria Math and supported by Office 2007, XeTeX and LuaTeX. At least one free OpenType mathematical font has been developed in FontForge. FontForge uses FreeType for rendering fonts on screen. Since the November 15, 2008 release, FontForge uses libcairo and libpango software libraries for graphics and text rendering, providing anti aliased graphics and complex text layout support. FontForge can use Potrace or AutoTrace to auto trace bitmap images and import them into a font. Parts of FontForge's code are used by the LuaTeX typesetting engine for reading and parsing OpenType fonts. The FontForge source code includes a number of utility programs, including 'showttf', which shows the contents of binary font files, and a WOFF converter and deconverter.
Поддерживаемые форматы
FontForge поддерживает широкий спектр форматов шрифтов. Его собственный формат базы данных шрифтов Spline Font Database (.sfd) основан на текстовом представлении и облегчает совместную работу дизайнеров, так как файлы с изменениями можно легко создавать. FontForge также поддерживает взаимодействующий формат исходного кода UFO, основанный на XML. Программное обеспечение поддерживает множество других форматов шрифтов и позволяет преобразовывать шрифты из одного формата в другой. Поддерживаемые форматы шрифтов включают: TrueType (TTF), TrueType Collection (TTC), OpenType (OTF), PostScript Type 1, растровые шрифты TeX, X11 OTB растровые шрифты (только sfnt), Glyph Bitmap Distribution Format (BDF), FON (Windows), FNT (Windows) и Web Open Font Format (WOFF). FontForge также импортирует и экспортирует шрифты в форматы Scalable Vector Graphics (SVG) и Unified Font Object (UFO) и из них.
История развития
Проект FontForge был основан Джорджем Уильямсом как проект на пенсии и первоначально публиковался с 2001 по март 2004 года под названием PfaEdit. Уильямс активно разрабатывал, поддерживал и оказывал поддержку программе и сопутствующим утилитам около 12 лет. В середине 2011 года Дэйв Кроссленд начал вносить вклад в проект, и проект был перенесён с SourceForge на GitHub. Кроссленд начал проводить вводные семинары по дизайну шрифтов через TeX Users Group (TUG) для сбора средств на найм разработчиков по контракту для поддержки и развития программы. Разработка FontForge стала более активной, и Халед Хосни и Барри Шварц внесли значительный вклад, но в конце 2012 года они и Кроссленд разошлись во мнениях относительно направления проекта, в результате чего они разветвили FontForge, создав SortsMill Tools. В 2011 году доктор Бен Мартин, при поддержке TUG, создал пакет для упрощённой установки FontForge на Mac OS X. В то же время Мэтью Петрофф опубликовал свою Windows Build System и неофициальные сборки для Windows. В 2013 году на SourceForge был запущен проект FontForgeBuilds для расширения этой функциональности; впоследствии он был полностью переписан и в настоящее время поддерживается Джереми Таном как приложение для Windows. В 2012 году Кроссленд организовал новый веб-сайт проекта, размещённый на GitHub Pages, и использовал средства, собранные от обучения начинающих работе с FontForge, для найма веб-дизайнера по контракту. С его поддержкой Мартин добавил функцию совместной работы в реальном времени, которую они оба представили в качестве ключевого доклада на Libre Graphics Meeting 2013 в Мадриде. В 2014 году, при финансовой поддержке Google, Фрэнк Трампе добавил полную поддержку формата исходного шрифта UFO.