SPrint

Пpoгpaммa пeчaти

для DOS-пpилoжeний нa

любoм Windows-пpинтepe

Программа предназначена для перехвата файлов, создаваемых другими программами, для их последующей обработки c возможностью распечатки на любом доступном принтере. При этом шрифт документа подбирается таким образом, чтобы документ мог полностью поместиться на странице.

Предварительная обработка файла включает в себя перекодировку файла (если это необходимо, текущая кодировка определяется автоматически), обработку некоторых ESC-последовательностей и исключение из текста необрабатываемых последовательностей.

Контактный e-Mail: sprint@inet.ua


Программа предназначена для перехвата файлов

Главная

Описание программы SPrint

Программа предназначена для перехвата файлов, создаваемых другими программами, для их последующей обработки c возможностью распечатки на любом доступном принтере. При этом шрифт документа подбирается таким образом, чтобы документ мог полностью поместиться на странице.

Предварительная обработка файла включает в себя перекодировку файла (если это необходимо, текущая кодировка определяется автоматически), обработку некоторых ESC-последовательностей и исключение из текста необрабатываемых последовательностей.

Обрабатываются следующие Esc-последовательности:

Начальная последовательность | Завершающая последовательность | Стиль шрифта | Внешний вид (область)
#27#14,#14 | #20 | DoubleWidth | Увеличенная строка
#27+'W1',#27+'W'+#1 | #27+'W0',#27+'W'+#0 | DoubleWidth | Увеличенный фрагмент
#27+'E',#27+'F' | #27+'G',#27+'H' | Bold | Фрагмент жирный
#27+'4' | #27+'5' | Italic | Наклонный
#27+'-1',#27+'-'+#1 | #27+'-0',#27+'-'+#0 | Underline | Подчеркивание
#12,#27#12 |  |  | Прогон страницы

Также есть возможность выбрать ориентацию листа при печати, включая автоматический режим. При автоматическом режиме ориентация выбирается в зависимости от ширины текста и минимального шрифта, при котором программа меняет ориентацию листа, если ширина текста не позволяет напечатать документ в портретном режиме указанным минимальным шрифтом (вывод на печать будет произведен в альбомной ориентации).

Опция "Учитывать разрывы страниц" разбивает выходной документ на страницы, если соответствующие символы (#12, #27#12), присутствовали в документе. Иначе разбивка на страницы игнорируется. При этом учитывается последний прогон бумаги. Если после него нет никакого текста - он в этом случае игнорируется.

Начиная с версии 2005.11.29 программа обрабатывает символы табуляции, заменяя соответствующим число пробелами так, чтобы следующая после табуляции позиция в строке была кратна 8. В результате символ табуляции в позициях от 0 до 7 приводит к переходу на позицию 8, от 8 до 15 - на 16 и т.д.

Настройка "Максимальный размер шрифта" позволяет ограничить размер шрифта документа в случае, если ширина текста позволяет распечатать его и с большим размером шрифта. Это бывает необходимо для того, чтобы пакет документов имел одинаковый размер шрифта или в случае, когда текст печатается с учетом разделителей страниц и страница не помещается при выбранном размере шрифта на
лист полностью.

Настройка "Ограничение длины строки" позволяет программе подбирать размер шрифта таким образом, как если бы длина строки не превышала указанное в поле значение. При этом, если выбрана опция "Обрезать излишек строки", то данные находящиеся за пределами указанной длины, удаляются, а в случае выбора опции "Переносить на след.строку" - переносятся на следующую строку. Данная возможность появилась начиная с 2006.01.10

Есть несколько способов настройки печати документов, создаваемых ДОС-приложениями. Если приложение, с которым Вы работаете, создает файлы, которые впоследствии и выводит на печать, и эти файлы можно описать по маске, то настраиваете SPrint на подкаталог, где приложение создает свои файлы, и указываете их маску, например: C:\Prog\Zarplata\*.txt
В этом случае, как только приложение создаст файл, соответствующий заданной маске, SPrint обнаружит это, и примет файл к обработке (интервал мониторинга задается в настройках программы).
Если в Настройках стояла опция "Предварительный просмотр", то внешний вид документа будет показан в окне программы. Если эта опция была отключена, программа сразу перенаправит документ на принтер, указанный в настройках.

Программа отслеживает изменения файла после окончания его формирования. Если файл к этому моменту изменился, то он перечитывается заново. Есть возможность задать паузу для того, чтобы программа могла убедится, в том, что файл уже не изменяется. Данная возможность нужна для тех файлов, которые формируются по частям, чтобы предотвратить преждевременную обработку недоcформированного файла (введено с версии 2005.01.17).

В режиме предварительного просмотра можно послать документ на печать и вернуться в режим ожидания (Напечатать и закрыть), напечатать и остаться в режиме Предварительного просмотра или отказаться от печати (с последующим переходом в режим ожидания).

Также Вы можете слегка отредактировать находящий на просмотре документ и он будет напечатан с учетом этих изменений.
Если по какой-то причине Вы решили изменить какую-либо из настроек в момент предварительного просмотра документа (например ориентацию бумаги или максимальный размер шрифта), то перейдите на закладку настроек, выполните их, после возврата в окно предварительного просмотра файл обработается заново с учетом произведенных изменений.
Если документ не был распечатан и окно программы будет свернуто, то мониторинг папки(папок) будет прекращен, о чем засвидетельствует соответствующая иконка в трее (заполненный лист в принтере).
В режиме ожидания она будет мигать красной лампочкой с периодичностью интервала опроса, задаваемом в настройках, а при загрузке и обработке документа - мерцать.

Отключенная опция "Очищать очередь при старте", позволит Вам распечатать документы, которые были сформированы во входящей папке до запуска программы SPrint. Это может быть удобно, если режим распечатки после закрытия ДОС-приложения есть более предпочтительным, чем печать непосредственно после их создания.

В случае, если программа во время своей работы не создает файлов, а производит непосредственный вывод на печать (на LPT-порт), можно воспользоваться резидентным программами-редиректорами, которые производят перенаправление печати в файл, который и будет обрабатываться программой.
В комплекте идет программа-редиректор Дмитрия Гуртяка prn2file.com, но можно воспользоваться и любой другой, выполняющей такие же функции. Поставьте запуск редиректора в автозагрузку или запускайте его непосредственно перед запуском DOS-приложения, например:

Prn2file.com c:\temp\report.prn
DOSProg.exe

В этом случае создание файла будет осуществляться непосредственно в момент, когда Вы в своей программе инициируете печать файла, а не в момент его создания.
SPrint нужно будет настроить на печать файла, который создает Prn2File (в нашем случае c:\temp\report.prn)

Также этим способом (перехвата печати с помощью редиректора), можно воспользоваться, когда печать производится из нескольких приложений, размещенных в разных каталогах, или имена создаваемых файлов нельзя однозначно описать одной маской (например если маску определить как *.*, то возможна попытка печати индексных файлов или изменяющихся во время работы баз данных).
Начиная с версии от 2004.01.10.04 появилась возможность мониторинга нескольких папок или нескольких шаблонов, поэтому данное ограничение снято.

Редактировать список файлов (маски файлов), за которыми производится мониторинг, можно с помощью кнопок, расположенных справа от него.

Для правильного расчета ширины страницы Вашего принтера и размера шрифтов иногда нужно провести калибровку программы под выбранный принтер. Для печати тестовых страниц (для каждого вида ориентации бумаги будет напечатано по одной странице) нажмите кнопку "Тест" и ответьте утвердительно на вопрос.
После печати введите ширину бумаги для каждого вида ориентации, в виде числа, состоящего из последних цифр в каждой строке напечатанного текста.
Например, число 928 для книжной ориентации (цифры сверху вниз 0928) и число 1344 для альбомной.
Печать происходит на принтер, установленный в системе по умолчанию, однако можно произвести ее и на любой другой, установленный в системе, выбрав его в Параметрах печати.

В версиях, начиная с 2005.10.13 можно выбрать способ калибровки принтера - ручной или автоматический. Автоматический режим более удобен и предпочтительный (автоматически определяются параметры при изменении принтера или формата бумаги). Однако если у Вас возникают ошибки в этом режиме (в частности такие наблюдаются при работе программы под Windows 98), то пользуйтесь ручным режимом, который оставлен для совместимости.

Есть возможность сохранить обработанный файл в формате RTF для его последующей распечатки (без программы SPrint), а также для пересылки или других потребностей.

Программа может иметь не только русскоязычный интерфейс, а и любой другой. Для работы с другим языком нужен языковой файл этого языка, который должен иметь имя SPrint.lng и располагаться в папке с программой. Если такого файла у Вас нет, положите в папку с программой пустой файл с именем SPrint.lng и он после запуска программы будет заполнен русскоязычным интерфейсом, который Вы
можете перевести на любой другой язык.

Начиная с версии 2006.01.23 добавилась возможность задавать свои кодировки, которые стали подгружаемыми и размещаются в подкаталоге CP в отдельных файлах, и выбирать только те кодировки, которые необходимы пользователю. Редактирование списка возможно с помощью кнопок, расположенных под ним.

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

Все ее настройки хранятся в одноименном ini-файле, который создается и находится в папке с программой. Деинсталляция программы осуществляется простым удалением ее с компьютера.


История версий

Главная

История версий

►Версия 2006.02.02
- мульти-язычный интерфейс (настройка и добавление новых языков - в описании);
- исправлен модуль удаления необрабатываемых esc-последовательностей (в частности обрабатывается сочетания #27#12 как прогон страницы);
- другие исправления;

► Версия 2006.01.30
- исправлена ошибка, при которой мониторинг файлов "не включался", пока не развернешь окно программы;
- исправлена ошибка, при которой нельзя было открыть файл по кнопке, если была убрана отметка "Следить за файлами из списка";
- исправлена ошибка, которая возникала в случае, если в список кодировок не была добавлена ни одна кодировка;

► Версия 2006.01.23
- возможность задавать свои кодировки, которые стали подгружаемыми и размещаются в подкаталоге CP в отдельных файлах;
- изменена функция определения кодировки текста, основанная на информации из файлов кодировок, определенных пользователем;
- возможность выбирать только те кодировки, которые необходимы пользователю;
- при открывании файла из программы (с диска или через меню истории), открываемый файл сразу загружается в окно предварительного просмотра, а не ставится в очередь, как было ранее, очередь при этом очищается;
- страница "Настройки" перегруппирована и разбита на 3 подстраницы;
- выбор шрифта в окне предварительного просмотра и при печати; выбор осуществляется только из моноширинных шрифтов, хотя вручную можно написать любой из шрифтов - и в том и в другом случае шрифт запоминается при выходе из программы;
- удаление неизвестных последовательностей;
- много мелких изменений;

► Версия 2006.01.10
- Появилась настройка "Ограничение длины строки", а также варианты действий, когда длина строки превышает указанное значение (обрезать излишек - переносить на следующую строку);
- так как количество настроек растет, страница “Настройки” разбита на 2 - "Параметры работы программы" и "Параметры обработки файлов";
- завершающий прогон бумаги удаляется также в случае, если после него есть пустые строки;
- не запоминались некоторые настройки – исправлено.

► Версия от 30.11.2005
- Программа корректно отображает текст, содержащий символы табуляции;
- При выходе из программы дополнительно предупреждается о том, что будет прекращен мониторинг файлов (если он включен);
- В свете последних изменений немного переработано описание программы.

► Версия от 18.11.2005
- Программа не запоминала параметр "Время ожидания изменений", исправлено;
- Ограничения для ручной калибровки принтера увеличены вдвое (для форматов бумаги более A4);
- Другие мелкие изменения.

► Версия от 25.10.2005
- При нажатии на кнопку "Очистка" удаляло обрабатываемый файл, исправлено
- При передаче файла в качестве параметра сразу посылало его на печать вне зависимости от опции "Предварительный просмотр", исправлено;
- При появлении файла для печати программа разворачивает окно (если стоит опция "Предварительный просмотр"), как в старых версиях;
- Добавилась возможность выбора между автоматической калибровкой принтера (в случае, если возникают ошибки в таком режиме) или ручной (как в старых версиях).

► Версия от 13.10.2005
- Калибровка принтера выполняется автоматически, как следствие этого – не нужно изменять настройку принтера при его изменении (функция тестируется);
- Некоторые принтеры возвращают ширину и высоту листа наоборот, вследствие чего неправильно рассчитывался размер шрифта. Теперь размер бумаги определяется из принципа, что больший размер - это высота;
- Неправильно обрабатывались Esc-последовательности, в составе которых был символ с кодом #0, исправлено;

► Версия от 05.09.2005
- При недоступности текущего принтера для вывода заданий на печать, можно переназначить вывод на принтер, используемый в Windows по-умолчанию (или при входе в программу автоматически, если принтер отсутствует или при попытке изменения принтера или формата бумаги, если он недоступен).
- Исправлено определение размера бумаги, указанного в настройках принтера, для матричных и струйных принтеров; текущий размер бумаги указывается рядом с ориентацией листа в статусной строке и во всплывающей подсказке.
- Небольшая оптимизация кода

► Версия от 05.05.2005
- Появилась статусная строка, в которой отображаются параметры обрабатываемого файла.
- При открытии файла с признаком Read Only (только для чтения), программа не очищала окно после его обработки.
- Исправлено несколько ошибок, связанных с загрузкой и сохранением списка ранее обрабатывавшихся файлов.

► Версия от 06.04.2005
- В истории последних обрабатывающихся файлов запоминаются и начальная часть их текстовки.
- Исправлена ошибка, которая приводила к повторной обработке файлов, если те открывались по кнопке (время открытия таких файлов увеличивалось вдвое).
- Исправлена ошибка, при которой мониторинг не запускался автоматически, если программа сразу садилась в трей.
- Программа при расчетах учитывает размер бумаги, тип которой можно изменить в настройках принтера.
- Можно настроить правое поле в мм.
- Поле для переплета (левое) в настройке теперь тоже указывается в мм.
- Исправлены мелкие ошибки.

► Версия от 04.04.2005
- Запоминается принтер, указанный в настройках.
- Запоминает 10 последних обрабатывающихся файлов (список вызывается по контекстному меню на кнопке загрузки файлов).
- Исправлены мелкие ошибки.

► Версия от 01.04.2005
- Немного изменился дизайн программы.
- Добавлена возможность выделять текст наклонным шрифтом и подчеркиванием.
- Исправлена ошибка при работе программы в режиме "без предварительного просмотра"
- Исправлена ошибка, которая вызывала смещение первой строки текста влево.
- При записи в RTF-файл появилась возможность выбрать его имя и место сохранения.
- Появился горизонтальный скроллинг в окне предпросмотра.
- При опции "Выполнять свернутой в трей" программа во время запуска не показывает кратковременно свое окно, а сразу садится в трей.

► Версия от 17.01.2005
- Программа отслеживает изменения файла после окончания его формирования. Если файл к этому моменту изменился, то он перечитывается заново. Есть возможность задать паузу для того, чтобы программа могла убедиться, в том, что файл уже не изменяется. Данная возможность нужна для тех файлов, которые формируются по частям, чтобы предотвратить преждевременную обработку недосформированного файла.

► Версия от 10.01.2005
- Добавлена опция выбора кодировки обрабатываемого текста (Auto, DOS, Win, Koi), которую можно менять даже после загрузки документа (например, было "Auto", кодировка определилась неправильно, после ручного изменения текст будет открыт в выбранной кодировке).
- После любого изменения в настройках, текст автоматически перечитывается с новыми установками (раньше нужно было выбрать "Перечитать" из контекстного меню).

► Версия от 31.08.2004
- Если символ перевода страницы (#12) находится в конце документа и после него нет никакого текста, то он игнорируется (и пустая страница не печатается).

► Версия от 21.08.2004
- При открытии любого файла непосредственно из окна программы или если открытый файл был передан в качестве параметра, удаление его не происходит, даже при наличии опции "Удалять после обработки".

► Версия от 30.06.2004
- Определяется в какой из DOS кодировок находится загружаемый текст (для символов национальных алфавитов).
- Перекодируются национальные символы украинского и белорусского алфавитов в 866 (DOS) кодировке.
- В сплывающей подсказке показывается также кодировка исходного текста.

► Версия от 03.06.2004
- При открытии файла из программы возможен мультивыбор. Порядок открытия файлов зависит от даты их создания.

► Версия от 13.05.2004
- Изменена процедура автоматического определения кодировки обрабатываемого текста. Кодировка должна определяться еще точнее. Благодарю всех, кто присылал мне "проблемные" файлы, помогая в отладке функции определения кодировки.

► Версия от 01.03.2004
- Изменена процедура автоматического определения кодировки обрабатываемого текста. Кодировка должна определяться точнее.
- Добавлены всплывающие подсказки на некоторые элементы окна.

► Версия от 20.01.2004
- Появилась возможность мониторинга неограниченного числа папок.
- Опционно настраивается наличие подтверждения при выходе из программы.
- Выход из программы можно осуществить по клавише Esc (настраивается).
- С помощью контекстного меню появилась возможность работы с буфером обмена (копирование, вырезание, вставка), выделение жирным шрифтом фрагмента текста и откат сделанных изменений.
- Появилась возможность записать документ из окна предварительного просмотра в одноименный файл RTF-формата ( файл будет записан по пути нахождения файла-источника с расширением *.RTF ).

► Версия от 13.11.2003
- Добавлена опция в настройке "Запускать при старте Windows". В случае выбора данной настройки в системный реестр записывается соответствующий ключ.
- Добавлена возможность передать имя файла как параметр. В этом случае при старте программы первым в очереди будет указанный файл;
- Добавлена возможность перечитать файл заново (выбор из меню по правой клавише мыши). Это необходимо для того, чтобы текущий файл обработался с учетом изменений в настройках.

► Версия от 30.09.2003
- Добавлена возможность ручной загрузки файлов в SPrint из любых доступных папок;
- Учитывается кодировка обрабатываемых файлов (определяется программой автоматически), что позволяет теперь печатать файлы как в Дос (866), так и Win-кодировке (1251).

► Версия от 23.09.2003
- Добавлена возможность настройки размера отступа текста (для переплета) в сантиметрах.
- При расчете размера шрифта документа игнорируются (не учитываются и не печатаются) завершающие пробелы в строках в исходном текстовом файле.
- Появилась опция "Остановить проверку файлов", при установке которой файлы во входном каталоге не обрабатываются; если при этом программа свернута в трей, иконка ее не мигает.
- Появилась возможность установить межстрочное расстояние в выходном документе (в пикселах).

► Версия от 17.09.2003
- при установленной опции "Удалять файл после обработки", файл мог не удалиться, если он занят в этот момент программой, которая его создала, и повторно стать в очередь на печать; сейчас файл повторно не обрабатывается даже если он не удалился физически.

► Версия от 10.09.2003
- немного ускорена загрузка/обработка файла;
- предотвращение чтения файла, который окончательно не сформирован на момент проверки новых файлов во входном каталоге;
- в контекстном меню продублированы команды кнопок;
- при завершении работы Windows (перезагрузке), вопрос о закрытии программы не задается;
- другие мелкие исправления;

► Версия от 01.09.2003
- первая версия программы;


Часто задаваемые вопросы

Главная

Часто задаваемые вопросы (FAQ)

  1. Не знаю, в силу каких причин, но на одной из машин у меня не всегда срабатывает автоматическая перекодировка из 866 в 1251. Нельзя ли сделать возможной принудительную перекодировку?

  2. Прости за чайниковский вопрос - но добиться condesed (или эмуляции condensed) не реально?

  3. Программа ....не хочет печатать через SPrint.

  4. У меня получилось вручную запустить несколько копий SPrint - это ошибка или так задумано? И как в этом случае поведет себя SPrint ?

  5. В заголовке SPrint написано "печать для DOS программ на лазерном принтере" - так ведь на любом принтере, как я понимаю. Тогда должно быть "на Windows-принтере"

  6. Кто-то пробовал печать из-под SPrint на usb-шный струйник Lexmark Z615? поделитесь опытом, не удаётся заставить печатать...

  7. Я полагаю, что при направлении документа непосредственно на порт принтера SPrint перехватывает задание, конвертирует и отправляет дальше - на печать. Тогда нужно ли активировать опцию слежения за файлами ?..

  8. Тогда вопрос переносится в плоскость PRN2FILE.COM, он у меня упрямо не хочет формировать файл.

  9. Маску можно задавать не по имени, а по расширению? printjob.*?

  10. Из программы сформировали файл на печать, он распечатался (без удаления). Теперь что бы мне сделать копию отпечатанного нужно еще раз сформировать файл на печать, как следствие размер файлов одинаков, а дата уже разная(имеется ввиду время создания).

  11. Каким образом, не изменяя автоматически формируемой ширины символа, можно увеличить высоту символа вдвое ?

  12. А как тогда понять информацию из описания, в котором среди обрабатываемых ESC-последовательностей есть и #27+'W1', что и есть, по-моему, Double Height ?

  13. Есть ли возможность настроить программу следующим образом: отсылаем на печать 10 строчек по несколько символов, через некоторое время еще десять и так далее пока не накопится достаточное количество строчек, чтобы заполнить одну страницу

Не знаю, в силу каких причин, но на одной из машин у меня не всегда срабатывает автоматическая перекодировка из 866 в 1251. Нельзя ли сделать возможной принудительную перекодировку?

По идее от машины это не должно зависеть вообще, так как таблицы перекодировок (во избежание всяких недоразумений) я беру не из системы и api-шными функциями для перекодировки не пользуюсь. Поэтому аппаратная часть по идее влиять на работу программы не должна.
Если не сложно, попробуй открыть этот же файл на другой машине...
Если перекодировка будет неправильной, то просьба прислать такой файл (sprint@inet.ua), я попробую на его примере сделать функцию определения кодировки "более умной", если она ошиблась.
Можно, конечно, добавить возможность принудительной перекодировки (на данный момент такая возможность есть), но это будет борьба с последствиями ошибочной работы программы, а не борьба с причиной возникновения ошибки.

Возврат в начало

Простите за чайниковский вопрос - но добиться condesed (или эмуляции condensed) не реально ?

Нет. Программа его (и другие установки, касающиеся изменения ширины шрифта) игнорирует.
И не потому, что не может его обработать, а потому, что в ее концепцию заложено как раз автоматический подбор размера шрифта в зависимости от длины строки.
Ненамного ошибусь, если предположу, что использование Condensed или Elite в 90-95 % случаев в ДОС-е использовалось для того, чтобы "втиснуть" широкий документ в стандартный лист бумаги. И всего лишь малая толика (5-10 %) для того, чтобы выделить какой-либо текст внутри строки (это могли быть платежные поручения или какие-либо подобные бланки, где condensed мог использоваться как подпись под строкой, например).
Для этих целей SPrint не предназначался, и как следствие - непригоден.
Обратись к другим аналогам.

Возврат в начало

Пенсионная прога spu_pred (написанная на кларионе) не хочет печатать через SPprint (spu_pred ругается на неготовность принтера ... а принтер был usb). Пролетало как-то сообщение про нехорошую пенсионную программу, но не уточнялась какая именно.

SPrint не работает с какой-то конкретной программой, он работает с текстовыми файлами, которые появляются в каталогах, которые он мониторит. А как туда те файлы попадают - или их программа какая генерирует, или ты в текстовом редакторе набиваешь, или утилита Гуртяка их создает (перехватывая печать на принтер), разницы нет.

Возврат в начало

У меня получилось вручную запустить несколько копий SPrint - это ошибка или так задумано? И как в этом случае поведет себя SPrint ?

Скажем так, я не нашел причины, по которым я должен был это запрещать. Обе копии будут себя вести себя согласно их собственных настроек (если копии программы расположены в отдельных каталогах и у каждого свои настройки ini-файлы). Хотя смысла запускать 2 копии я не вижу, но и ничего страшного при этом произойти не должно. Сам не пробовал, но теоретически это так. Если это запуск одного ехе-шника несколько раз, то и настройки у них, естественно, одинаковы. Со всеми вытекающими.

Возврат в начало

В заголовке SPrint написано "печать для DOS программ на лазерном принтере" - так ведь на любом принтере, как я понимаю. Тогда должно быть "на Windows-принтере"

Да, я знаю. И в описании об этом говорится.
Просто начиналась программа именно с проблемы печати ДОС-текстов, так название и осталось.
Если его сейчас изменить (например "Программа для печати любых текстов на любом принтере"), то смысл ее в таком универсальном названии потеряется .

Возврат в начало

Кто-то пробовал печать из-под SPrint на usb-шный струйник Lexmark Z615? поделитесь опытом, не удаётся заставить печатать...

Именно с USB-принтерами не приходилось проверять, но по идее программа должна печатать на любой принтер, доступный в системе.

Возврат в начало

Я полагаю, что при направлении документа непосредственно на порт принтера SPrint перехватывает задание, конвертирует и отправляет дальше - на печать. Тогда нужно ли активировать опцию слежения за файлами ? Если слежение необходимо, то где именно формируется файл-задание, который потом печатается? Если же настроить принтер на печать в файл, то ось обязательно спросит у пользователя, куда именно и с каким именем этот файл поместить... тогда перехват уже не может быть автоматическим? объясните, будьте добры может, есть статьи по этому вопросу ?

Нет, не так. SPrint мониторит указанные папки на появление в них необработанных им файлов. И не его забота кто их сформировал и как они туда попали. При появлении файла он его конвертирует (если нужно), рассчитывает размер шрифта, преобразует некоторые последовательности и отсылает на любой принтер, установленный в системе.
Вообще почитайте описание, там все это есть.

Возврат в начало

Тогда вопрос переносится в плоскость PRN2FILE.COM, он у меня упрямо не хочет формировать файл. Видимо, проблема в том, что он расчитан на работу только с LPT ? а по дефолту у меня стоит юсб-шный струйник. Поможет ли эмуляция установки LPT-шного принтера (только драйвера, без самого девайса) и установки его дефолтным ? Или проблема в другом?

Дело в том, что когда писался prn2file.com (1992 год), то не было не только Windows, но и тем более USB-принтеров. Но предназначение этой утилиты - перехват печати на LPT в DOS-среде (или в крайней мере под ее эмуляцией). Это, конечно, не исключает ее работы в других условиях, но и не гарантирует.

Возврат в начало

Маску можно задавать не по имени, а по расширению? printjob.*?

Естественно.

Возврат в начало

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

Да. Более того, если даже и дата останется прежней, программа это поймет правильно.

Возврат в начало

Каким образом, не изменяя автоматически формируемой ширины символа, можно увеличить высоту символа вдвое?

Никаким. Нестандартная высота символов не поддерживается программой. Поддерживаются только некоторые Esc-последовательности.

Возврат в начало

А как тогда понять информацию из описания, в котором среди обрабатываемых ESC-последовательностей есть и #27+'W1', что и есть, по-моему, Double Height ? Жаль что все оказалось так сложно.

Да, обрабатывает он его (правда это DoubleWidth - двойная ширина), но увеличивает при этом на 1 единицу размер шрифта (пропорционально и ширину и высоту). Ну, скажем так, это не так и сложно, но просто я изначально ориентировался когда начинал делать программу, что я и не буду обрабатывать абсолютно все Esc-последовательности. Это скорее приятный бонус - попытаться обработать несколько известных esc-последовательностей дабы придать документу более приличный вид. Основное предназначение программы - поддержать работу старых ДОС-программ - подхватить, перекодировать и распечатать так, чтобы влезло. В данном случае как правило двойной шириной выделяли заголовки документа, поэтому он и обрабатывается именно таким образом.

Возврат в начало

Есть ли возможность настроить программу следующим образом: отсылаем на печать 10 строчек по несколько символов, через некоторое время еще десять и так далее пока не накопится достаточное количество строчек, чтобы заполнить одну страницу выбранного формата, при этом если очередные десять строчек не влезают на текущую страницу, то начинать их печать на следующей странице и только по полному ее заполнению или по истечению заданного времени( например 180 секунд ). Принтеры: HP(струйный), HP(сетевой).

Пока нет. Каждый файл идет как отдельное задание, а объединять задания и следить сколько строк накопилось... тем более, что один документ может пойти в альбомной ориентации, а другой, как портрет, разный размер шрифтов у разных документов (разная ширина)... довольно тоскливо. Хотя, если будет какое-то красивое, несложное решение, то почему бы и нет. Пока я его не вижу.

Возврат в начало

Последнее изменение: 14.02.2006.