| Создание PDF в OS/2 Дмитрий Бан PDF (Portable Document Format) -- стандарт фирмы Adobe, предназначенный для обмена документами между разными платформами. Несмотря на очевидные недостатки (значительный объём и медлительность интерпретации), PDF используется довольно широко, так как позволяет получить документы, которые выглядят одинаково на любой платформе. В OS/2 мне всегда нехватало аналога утилиты PDF Writer, которая есть для Windows NT. Эта утилита позволяет любой программе распечатывать свои документы прямо в PDF-файл. Наконец, я созрел и с помощью Евгения Кулешова реализовал подобную возможность и в OS/2. Идея такова: с помощью драйвера PostScript-принтера создавать PostScript-файл, который затем можно сконвертировать в PDF. Для этого потребуется целый ворох утилит, хотя полученная в результате схема проста и удобна в использовании. Необходимые программы -
Прежде всего необходима библиотека EMX версии не ниже 0.9c. Если (что достаточно странно) эта библиотека у вас не установлена, возьмите последнюю версию emx 0.9d с нашего сайта (550k). -
Далее потребуется Aladdin Ghostscript (текущая версия 5.50). -
Утилита printmon (9k) нужна для того, чтобы перенаправить вывод драйвера PostScript-принтера в программу GhostScript. -
Написанная на Visual REXX утилита Poor man's Distiller (Distiller для бедных, 13k) обеспечит скромный front end ко всей этой комбинации. -
Если у вас не установлен Visual REXX for Presentation Manager (скорее всего, так оно и есть), вам необходимо будет загрузить файл vrexx2.zip (203k). Установка -
Установите 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.
-
Установите драйвер PostScript-принтера Бросьте шаблон "Принтер" (Printer) в папку "Принтеры" (Printers). Выберите подходящий драйвер цветного PostScript-принтера (я использую драйвер Tektronix Phaser 550). В свойствах принтера на странице "Output port" назначьте ему для вывода неиспользуемый порт, например, LPT3, как показано на скриншоте. -
Установите Visual REXX Распакуйте vrexx2.zip и поместите файл vrexx.inf в каталог \OS2\BOOK, библиотеки devbase.dll и vrexx.dll -- в \OS2\DLL, а vrexx.exe и *.cmd -- в \OS2 -
Установите Poor man's Distiller Распакуйте файл distill.cmd из архива distill.zip в любой прописанный в PATH каталог. Подправьте в нём переменные gsdir (путь к файлам GhostScript), acdir (путь к файлам Adobe Acrobat Reader, если он у вас установлен) и gvdir (путь к файлам GSview). -
Установите 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 Материал с RU/2 <<< Вернуться | |