PostScript — это язык программирования, программы на котором для отрисовки элементов страниц автоматически формируются «сурьезными» верстально-рисовальными программами при печати на
PostScript-принтер или выводе в
PostScript-файл. Исполняется эта программа на интерпретаторе этого языка, более известного под названием «RIP», и встроенным в каждый
PostScript-принтер и т.п. устройства. После исполнения этой программы в памяти устройства получается растровое изображение страницы.
PDF также основан на
PostScript'е, но использует только «рисовальные» его возможности и очень ограниченные вычислительные — на уровне арифметических действий. В отличие от
PostScript-программы
PDF состоит из блоков, описывающих логическую структуру документа (в
PostScritpt-программе этого нет) и т.п.; сами страницы
PDF'а рисуются
PostScript-кодом, хранящимся в специальных блоках —объектах-потоках (
streams). Каждая растровая картинка представляет в PDF также отдельный объект (даже несколько).
Для уменьшения объема PDF-документа названия
PostScript-операторов на уровне спецификации формата
PDF сокращены до одной-трех букв, а сам документ еще и сжимается.
* * *
Type1-шрифты для данных применений хороши тем, что сами по себе фактически представляют набор данных и команд на языке
PostScript (набор процедур
CharStrings), непосредственное выполнение которых приводит к рисованию того или иного знака (глифы). Контур глифы в
Type1 Fonts описывается стандартной для
PostScript'а кривой Безье. Т. обр.
Type1-шрифт представляет собой просто динамически встраиваемую в момент формирования
PostScript-программы (PDF-файла) в нее библиотеку процедур отрисовки глиф некоторого шрифта. Кроме того,
Type1-шрифт может динамически подгружаться по мере надобности
RIP'ом (
PDF-просмотрщиком) из своих «закромов» в ходе выполнения
PostScript-программы наподобие
DLL-файлов при выполнении программ в
Windows.
* * *
С
True- и
OpenType (в
Microsoft-версии) все несколько сложнее — контур глифы в них описывается не кривыми Безье, а сплайнами (в
Adobe OpenType — Безье-кривые). В частности поэтому
TrueType при формировании
PostScript-программы или
PDF либо преобразуются драйвером
PostScript-принтера (Adob'овской библиотекой
PDFL или аналогичной) в
Type1-шрифт (иногда в растровый
Type3), либо (в
Postsript Level 3) встраиваются как
Type42.
* * *
В любом случае — будь то преобразование в
Type1 или
3, либо простое «перетолкование» в
Type42 как во всякой переделке скрыта возможность ошибки. Однако последние версии Adob'овских программ что показывают на экране, то и выводят в
PostScript/
PDF. Т.е. если текст нормально виден на экране без использования шаманского набора продуктов и инвентаря, то с 99.9% все будет нормально и при «публикации». Если шрифт потенциально опасен, то он вызовет или чудную работу программ — от
Acrobat'а до
Photoshopa,— этим грешат «чудо-шрифты» с именами типа «…-
Furs»,
«…-Spot», полученные автоматически из нормального шрифта с помощью не_помню_какой_программы, либо ошибку при запуске программы с последующим ее выпадением. Чреваты проблемами также шрифты с названием, начинающимся с «a_».
* * *
C
CorelDRAW все немного сложнее в плане работы со шрифтами — особенно в 10-12 версиях. Текст в кривые (особенно мелкие кегли) нежелательно переводить хотя бы потому, что
на «текстовые» буквы не распространяется действие Flattening'а и используются специальные алгоритмы отрисовки глиф, в результате чего мелкий текст выглядит более аккуратно. Ну и, кроме этого, файл с большим кол-вом текста получается меньше и выполняется быстрее. Другое дело, что просто вывести кириллический
PostScript из CDR vv.10-12 не в виде кривых и не используя затычки, было невозмножно. Для вывода текста в виде кривых, не преобразовывая его в кривые в самом документе достаточно отключить галочку
Download Fonts при печати на
PostScript-принтер/экспорте в
EPS.