<h2>Постановка задачи, история</h2> Все началось до банального просто - любимый директор сказал "Хочу!". Аргументация была следующей: <ul> <li>Переводится
много бумаги для печати и отправки по факсу (клиентов много, потому
отправленные счета сразу выбрасываются: найти нужный документ даже
через день - нереально) </li><li>Электронная почта "есть в наши дни у всех и каждого" (то, что сам директор ею не пользуется - другой вопрос :-) ) </li><li>Тратится меньше времени персонала (не нужно сидеть и ждать перед факсом, стартовать, "прошло"/"не прошло", ...) </li><li>Легче вести учет когда и что было отправлено. </li></ul>
Сначала ставился вопрос отправки документов вообще - что может быть
проще? Сохранить таблицу как файл MS-Excel, вызвать внешнюю программу
отправки с параметрами - и все. Потом возникли сомнения: <ol> <li>А вот клиенты отредактируют файл - и будут доказывать что мы такой и отправили, </li><li>В файле передается рисунок печати - они его смогут использовать с какой-нибудь темной целью. </li></ol>
Сразу же было предложено отправить как рисунок, благо я знал, что это
можно сделать, но как - еще не представлял. Согласие получено, и вот
начались поиски соответствующих программ...
<a name="tools"></a><h2>Подбор нужного инструментария</h2>
Некоторое время я стараюсь использовать бесплатные программы, а не
ломать те, за которые нужно платить деньги. Так что одним из условий
(не главным, но в результате выполненным почти на 100%) была
бесплатность инструментария. Понятно, что для получения рисунка на
выходе нужен виртуальный принтер, на который можно печатать любой
документ. Выходным форматом был выбран tiff как достаточно
распространенный, предполагая что его можно будет конвертировать в
любой формат, если возникнет необходимость. Были испробованы многие
принтеры, встреченные в просторах Internet`а, как бесплатные, так и
нет. Большинство из них умеют печатать кроме искомого tiff еще и pdf
документы, но не один не удовлетворял условиям передачи в них внешних
параметров (важно было указать место сохранения и возможно имя файла
для уменьшения коллизий, поскольку работа происходит на сервере
терминалов). В конечном итоге выбор пал на <b><a href="http://www.geocities.com/SiliconValley/5682/Ghostscript.html">AFPL Ghostscript 8.14 for Win32</a></b> и драйвер переадресации порта принтера <b><a href="http://www.cs.wisc.edu/%7Eghost/redmon/">RedMon</a></b>.
Ghost Script умеет конвертировать данные из ps, eps, pdf в разные
форматы (те же ps, eps, pdf, языки принтеров вроде PCL6 от HP, и
рисунки). Получать данные он может как из файла, так и из входящего
потока (stdin для посвященных). RedMon умеет данные, полученные от
драйвера принтера, передавать как входной поток выбранной программе.
Кроме того устанавливает несколько системных переменных, одну из
которых (<code>%REDMON_USER%</code> - имя пользователя, печатающего документ) мы будем использовать.
Читать всю статью: http://www.klerk.ru/soft/1c?15002







