Я пишу скрипт Python для просмотра моей коллекции шрифтов (некоторые TTF, некоторые OFD, некоторые SFD) и в конечном итоге создаю один документ (PDF?) с примерами страниц для всех из них.
Мой желаемый выходной формат был бы похож на тот, который вы получаете при просмотре файла шрифта в Windows или Gnome; образец здесь из ответа qubodup в https://unix.stackexchange.com/questions/5715/how-to-view-a-ttf-font-file). Используя этот ответ, я могу использовать ImageMagick для создания образцов изображений для файлов TTF и OFD.
Я пытаюсь использовать fontforge для обработки файлов SFD. Я на Ubuntu, установил fontforge и python-fontforge. Я использую https://fontforge.github.io/python.html для документации, в частности разделы printSetup и printSample.
Этот скрипт отлично работает для печати шрифта display и fontsample, но водопад показывает только заголовок «Размеры образцов FX Matrix 105 Mono Compr Exp Dbl UL Sub Italic» и не содержит текста водопада. Я возился с кортежем pointsize в вызове printSample (включая неиспользование кортежа) и различными значениями третьего параметра printSample.
import fontforge
amb = fontforge.open('FXMatrix105MonoComprExpDblULSubItalic.sfd')
fontforge.printSetup('pdf-file', 'z.pdf')
amb.printSample('fontdisplay', 24, 'abcdefABCDEF', 'fontdisplay.pdf')
amb.printSample('waterfall', (12, 16, 24, 36), 'abcdefABCDEF', 'waterfall.pdf')
amb.printSample('fontsample', 24, 'abcdefABCDEF', 'fontsample.pdf')
Я ожидаю, что printSample('waterfall', ...)
предоставит мне образец шрифта с различными размерами точек (например, при просмотре файла шрифта в Windows или Linux), но, как я уже писал, водопад.pdf имеет только заголовок «Образцы размеров FX Matrix 105 Mono Compr Exp Dbl UL Sub Italic" и ничего под ним.
Что я делаю не так, пытаясь создать водопадный документ из модуля python fontforge?