Создание PDF в OS/2


Дмитрий Бан
PDF (Portable Document Format) -- стандарт фирмы Adobe, предназначенный для обмена документами между разными платформами. Несмотря на очевидные недостатки (значительный объём и медлительность интерпретации), PDF используется довольно широко, так как позволяет получить документы, которые выглядят одинаково на любой платформе.

В OS/2 мне всегда нехватало аналога утилиты PDF Writer, которая есть для Windows NT. Эта утилита позволяет любой программе распечатывать свои документы прямо в PDF-файл. Наконец, я созрел и с помощью Евгения Кулешова реализовал подобную возможность и в OS/2.

Идея такова: с помощью драйвера PostScript-принтера создавать PostScript-файл, который затем можно сконвертировать в PDF. Для этого потребуется целый ворох утилит, хотя полученная в результате схема проста и удобна в использовании.

Необходимые программы

Установка

  1. Установите Aladdin GhostScript и GSview
    Распакуйте файл gsv27os2.zip во временный каталог и поместите туда же файлы gs550os2.zip, gs550ini.zip, gs550fn1.zip и gs550fn2.zip в нераспакованном виде. Запустите os2setup.exe. После установки запустите GSview для завершения настройки программы. Переименуйте файл gsos2.exe в gs.exe.

    GSview -- программа для просмотра и конвертирования файлов в форматах PDF, PostScript и Encapsulated PostScript.

    assign port
  2. Установите драйвер PostScript-принтера
    Бросьте шаблон "Принтер" (Printer) в папку "Принтеры" (Printers). Выберите подходящий драйвер цветного PostScript-принтера (я использую драйвер Tektronix Phaser 550). В свойствах принтера на странице "Output port" назначьте ему для вывода неиспользуемый порт, например, LPT3, как показано на скриншоте.
  3. Установите Visual REXX
    Распакуйте vrexx2.zip и поместите файл vrexx.inf в каталог \OS2\BOOK, библиотеки devbase.dll и vrexx.dll -- в \OS2\DLL, а vrexx.exe и *.cmd -- в \OS2
  4. Установите Poor man's Distiller
    Распакуйте файл distill.cmd из архива distill.zip в любой прописанный в PATH каталог. Подправьте в нём переменные gsdir (путь к файлам GhostScript), acdir (путь к файлам Adobe Acrobat Reader, если он у вас установлен) и gvdir (путь к файлам GSview).
  5. Установите PrintMon
    Распакуйте файл printmon.exe из архива printmon.zip в любой прописанный в PATH каталог. Активируйте его командой типа:

    START "PrintMon" /MIN PRINTMON LPT3 "DISTILL STDIN"

"а теперь со всем этим мы попытаемся взлететь"

Из любой программы OS/2 пошлите задание на печать, используя фейковый драйвер PostScript-принтера. Вам будет предложено ввести имя выходного PDF-файла. Некоторое время этот файл будет создаваться, после чего вам предложат просмотреть его с помощью Adobe Acrobat Reader или GSview. В качестве примера прилагаю черновой вариант этой страницы в виде PDF (>800k).

Замечания

Если вы будете использовать именно драйвер Tektronix Phaser 550, то в записной книжке свойств перейдите на страницу "Printer driver", вызовите "Job Properties" и на странице "Features" задайте значение "Simulate Display" для параметра "Color Correction", как показано здесь:

Уже готовые PostScript- и Encapsulated PostScript-файлы можно конвертировать в PDF командой distill <полное-имя-файла.ps>.

GhostScript содержит весьма серьёзное ограничение: текст, набранный любым шрифтом, отличным от 14 основных шрифтов Adobe (семейство Courier, Times и Helvetica, Symbol и Zapf Dingbats) при конвертировании превращается в битмап. То же самое произойдёт и в том случае, если текст набран одним из базовых шрифтов, но содержит символы в нестандартной кодировке. С латиницей проблем нет, а вот с кириллицей могут возникнуть...

Комментарии, предложения и прочее направляйте по адресу d-ban@softhome.net


Интересные ссылки:
Комментариев к странице: 0 | Добавить комментарий
Домой | Проект ядро Core/2 | Проект OS/4 Download | Новости | Гостевая книга | Подробно обо всем | Нужные программы | Проекты | OS/2 FAQ | Всячина | За и Против | Металлолом | #OS2Russian | RDM/2 | Весёлые картинки | Наша галерея | Доска объявлений | Карта сайта | ПОИСК | ФОРУМ