Преобразование PDF в PCL

В моем Java-приложении у меня есть PDF-файлы, которые в конечном итоге мне нужно преобразовать в PCL и отправить на сервер RightFax. Мне также нужно будет встроить коды в файлы PCL, которые RightFax будет читать, чтобы знать, куда отправить факс.

Какой лучший подход к этому?

Похоже, что при поиске в Интернете я мог бы использовать StreamPrintService Java для печати файлов PDF на PCL. Это правильно? Означает ли это также, что в моей ОС должен быть установлен принтер, который может интерпретировать PCL?

Как только файл PCL сгенерирован, мне нужно добавить встроенные коды в файл. Я добавляю коды в конец файла (открывая его на Java и записывая в него)?

4 ответа

Решение

IMHO, самое простое решение - поместить PDF-файл в папку на сервере RightFax. Затем создайте небольшой текстовый файл со всеми инструкциями для того, кому отправлять документ и т. Д. С использованием встроенных кодов или FCL (язык команд факса). Мы делаем это все время, и это прекрасно работает. Примечание. Язык команд факса доступен только при наличии модуля интеграции. Оба встроенных кода и FCL имеют команду для прикрепления файла (ов). Как только RightFax получит этот текстовый файл, он обработает команды и приложит PDF, факс и / или отправит документ по электронной почте. Вот два примера (один встроенный и один FCL).

Файл встроенного кода:

<TOFAXNUM:999999999>
<TONAME:Douglas Anderson>
<BILLINFO1:12345>
<NOCOVER>
<WHO:DOUG>
<ADDDOC2: C:\pdfFiles\12345.pcl>

Кодовый файл FCL:

{{begin}}
{{fax 999999999}}
{{contact Douglas Anderson}}
{{billinfo1 12346}}
{{nocover}}
{{attach C:\pdfFiles\12345.pcl delete}}
{{imagetype pdf}}
{{end}}

Отправка этого простого текстового файла в RightFax предложит ему обработать и вставить указанный вами документ. Существуют различные команды и переключатели ADDDOC для ATTACH, которые сообщают RightFax об удалении файла после его отправки и т. Д.

Файл встроенного кода можно отправить через очередь HPFAX, а FCL - через входящую почту производства (c:\program files\rightfax\production\inbox).

Это дает большой контроль и упрощает поиск и устранение неисправностей, так как у вас все еще есть просматриваемый PDF-файл (из-за того, что вы не вставляли текст в начале), и вы можете легко выводить встроенный код или файлы FCL в альтернативную папку для просмотра и даже изменения с помощью простых инструментов, таких как Блокнот.


Изменить: OpenSource правильно, что вы можете объединить файлы вместе, я давно не делал этого со встроенными кодами (см. Пример в конце), но делал что-то похожее с FCL (если у вас есть модуль Ingetration, вы можете сделать это),

FCL с PDF или Postscript, встроенным в данные (RightFax обрабатывает PS и PDF): {{begin}} {{fax 999999999}} {{contact Douglas Anderson}} {{billinfo1 12346}} {{nocover}} {{beginpostscript}} %PDF-1.3... ... ваш pdf... {{endpostscript}} {{end}}

Вариант PCL выглядит так:

{{begin}}
{{fax 999999999}}
{{contact Douglas Anderson}}
{{billinfo1 12346}}
{{nocover}}
{{beginpcl}}
...your pcl data...
{{endpcl}}
{{end}}

Ложная первая страница со встроенными кодами (согласно моим заметкам о том, что мы делали давным-давно):

<TOFAXNUM:999999999>
<TONAME:Douglas Anderson>
<BILLINFO1:12345>
<NOCOVER>
<WHO:DOUG>
<DELETEFIRSTPAGE>
*PCL formfeed character*
...your pcl data...

Все, что вы отправите, появится на "первой странице", но оно будет удалено. Другой вариант - отправить эти данные после подачи заявки в конец документа и использовать <DELETELASTPAGE> вариант. Эти данные могут также отображаться в строке с самим файлом PCL, и, следовательно, вы сможете отправить его в начале работы без <DELETEFIRSTPAGE> команда и разделитель формы.

У нас очень похожий процесс. То, что мы делаем, это то, что у нас есть pcl-файл и контрольный файл (текстовый файл с правильными инструкциями в нем). Мы объединяем эти два файла с помощью java NIO и отправляем их в очередь печати RightFax. Мы в основном создаем новый файл и записываем вышеупомянутые два в новый файл, используя метод TransferFrom() в канале, который получен stream.getChannel(). Мы помещаем инструкции по управлению вверху, а не внизу, как вы упомянули? может быть, вы ошиблись - я думаю, что Rightfax нуждается в этом наверху. Я должен признать, что я не пытался отправить его внизу. Может быть, это будет работать, просто не знаю.

JPS позволяет печатать в файл, поэтому вам просто нужно печатать в файл на принтере PCL.

Печать в файл, кажется, правильный подход здесь.

Другие вопросы по тегам