До
У меня есть "старый" документ ODT на 2 страницы. Файл ODT составляет около 30 КБ. Когда я экспортировал документ в PDF со старым OpenOffice 3.2, полученный файл был слишком большим (я думаю, что> 200 КБ ).
Тогда я нашел способ избежать этого: я выделил весь текст в файле и вручную изменил шрифт, напечатав "Times" в поле выбора шрифта. Даже если в моей системе не было шрифта с именем "Times", он работал довольно хорошо, создавая файл PDF размером ~ 30 КБ .
Вот результат pdffonts oo-file.pdf
:
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
Times-Bold Type 1 WinAnsi no no no 26 0
Times-Roman Type 1 WinAnsi no no no 24 0
DAAAAA+DejaVuSans-Bold TrueType WinAnsi yes yes yes 18 0
Times-BoldItalic Type 1 WinAnsi no no no 27 0
Times-Italic Type 1 WinAnsi no no no 25 0
GAAAAA+DejaVuSerif TrueType WinAnsi yes yes yes 23 0
HAAAAA+OpenSymbol TrueType WinAnsi yes yes yes 13 0
Как видите, шрифт "Times" не является встроенным и не обязательным, поскольку он является частью стандартных 14 шрифтов, которые любой PDF-ридер должен отображать.
Проблемы с запуском
Но сейчас я использую LibreOffice 5.2.3, который явно изменил политику встраивания шрифтов. Тот же самый файл, экспортированный в PDF, теперь имеет размер 417 КБ (x14).
Посмотри pdffonts oo-file-exported-with-lo.pdf
:
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
NimbusRomNo9L-Medi Type 1 Builtin yes no yes 36 0
NimbusRomNo9L-Regu Type 1 Builtin yes no yes 52 0
NimbusRomNo9L-Regu Type 1 Custom yes no yes 55 0
EAAAAA+Verdana-Bold TrueType WinAnsi yes yes yes 18 0
NimbusRomNo9L-Medi Type 1 Custom yes no yes 39 0
NimbusRomNo9L-MediItal Type 1 Builtin yes no yes 28 0
NimbusRomNo9L-MediItal Type 1 Custom yes no yes 31 0
NimbusRomNo9L-ReguItal Type 1 Builtin yes no yes 44 0
JAAAAA+TimesNewRomanPSMT TrueType WinAnsi yes yes yes 23 0
NimbusRomNo9L-ReguItal Type 1 Custom yes no yes 47 0
LAAAAA+OpenSymbol TrueType WinAnsi yes yes yes 13 0
Временное решение
Мне удалось значительно уменьшить этот размер файла до 54 кБ , преобразовав его в ps и обратно в PDF:
pdf2ps lo-file-edited.pdf temp.ps
ps2pdf temp.ps smaller.pdf
Что дает (pdffonts smaller.pdf
):
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
KUEZVI+NimbusRomNo9L-Medi Type 1C Custom yes yes no 8 0
XHHJOA+NimbusRomNo9L-Regu Type 1C Custom yes yes no 10 0
LEKIBS+Verdana-Bold TrueType WinAnsi yes yes no 12 0
WMOWQS+NimbusRomNo9L-MediItal Type 1C Custom yes yes no 14 0
SOLBEP+NimbusRomNo9L-ReguItal Type 1C Custom yes yes no 16 0
OJIXHX+TimesNewRomanPSMT TrueType WinAnsi yes yes no 18 0
OJIXHX+OpenSymbol TrueType WinAnsi yes yes no 20 0
Тем не менее, я думаю, что это обходной путь не очень элегантный, и в любом случае, он по-прежнему создает файл примерно в два раза больше, чем первый.
Вопрос
Итак, как я могу заставить LibreOffice использовать стандартные 14 шрифтов PDF, не встраивая их в итоговый файл PDF?
Я хотел бы относительно небольшой файл.
Свободные программные решения приветствуются.