Печать

Во-вторых, надо в свойствах драйвера "Общий / Только текст" перейти на вкладку "Параметры устройства" и настроить "Таблицу соответствия расширенных символов". Для этого следует поочерёдно в списке "На экране" выбирать буквы кириллицы и вводить для них в поле "На принтере" нужные коды из CP-866, которые надо передавать на принтер. Например, выбираем букву "А" кириллицы и задаём для неё код 128 (в поле "На принтере" нажимаем клавишу <Alt> и набираем 128 на цифровой панели клавиатуры). Аналогично поступаем со всеми остальными буквами кириллицы, а также некоторыми знаками (например, знак номера "№" — код 252). В списке "Соответствие" должно быть задано "1 TTY". Введённые коды сохраняются в файле tty.dat в каталоге Windows.

Драйвер "Общий / Только текст" можно использовать также для сохранения информации в текстовый файл из тех приложений, которые сами не позволяют этого, но осуществляют печать. Надо будет лишь в свойствах данного драйвера портом для вывода на печать назначить FILE:
Следует иметь в виду, что настроить печать кириллицы на матричном принтере в текстовом режиме удастся только для Windows 95/98/Me/2000, причём в Windows 95/98/Me этот способ не сработает для программ, использующих кодировку Unicode, например, Word 97/2000/2002 (придётся документ сохранять в формате RTF или Word 6.0/95 и печатать из стандартного редактора WordPad). В Windows NT/2000/XP нет возможности самостоятельной настройки таблицы соответствия, там файл tty.dat не используется. Однако в Windows 2000 в драйвере "Generic / Text Only" можно выбрать кодовую страницу 866 на вкладке "Выбор шрифта". В Windows XP почему-то доступна только кодовая страница 1251, что позволяет решить вторую задачу (сохранение печатной информации в текстовый файл), но не первую (печать в текстовом режиме).

 

  • Если при печати из приложения установить флажок "Печать в файл" ("Print to file") или производить печать в порт "FILE:", операционная система выведет запрос имени файла. В случаях, когда это неудобно указывать каждый раз, можно задать имя файла, в который всегда будет производиться печать. Для этого необходимо выполнить следующие шаги:

1. В папке "Принтеры" ("Printers") нажмите правую кнопку мыши на имени принтера, с помощью которого предполагается печатать в файл. В появившемся меню выберите пункт "Свойства" ("Properties").
2. В окне "Свойства" ("Properties") перейдите на закладку "Дополнительно" ("Details").
3. Нажмите кнопку "Добавить порт" ("Add Port").
4. Выбрав тип добавляемого порта "Другой" ("Other"), выделите значение "Локальный порт" ("Local Port") и нажмите кнопку "OK".

5. В окне "Имя порта" ("Port Name") введите полное имя файла, в который будет производиться печать, например, "c:\myfolder\myfile.prn" (без кавычек). Нажмите кнопку "ОК".
6. В окне "Свойства" ("Properties") нажмите кнопку "OK".
Статья R10830 сборника технических статей Microsoft

  • Если DOS-программа не позволяет выбрать порт для печати и посылает печать на LPT1, а надо печатать на сетевой принтер, то воспользуйтесь командой net use. Введите в консоли:

net use lpt1: \\Server_Name\Printer_Name
где Server_Name — это имя компьютера, к которому подключен сетевой принтер с именем Printer_Name.
При завершении работы DOS-программы можно освободить порт:
net use lpt1: /d

  • При отправке заданий на печать на сетевой принтер из приложений MS-DOS может происходить задержка на 60–90 секунд до начала печати, что вызывает остановку работы MS-DOS-приложения в течение этого времени. При завершении работы приложения печать начинается сразу после его закрытия. Такое же поведение может наблюдаться при нажатии клавиши <Print Screen> в приложении MS-DOS. Проблема обусловлена тем, что приложение MS-DOS при печати не закрывает принтерный порт. По умолчанию, MS Windows 95 ожидает поступления новых данных в течение 45 секунд, после чего начинает печать документа. Для решения проблемы необходимо отредактировать файл System.ini на том компьютере, где выполняется приложение MS-DOS.

Добавьте в раздел [Network] файла System.ini следующую строку:
PrintBufTime=10
А в раздел [IFSMGR] следующую строку:
PrintBufTime=10

1 2 3

   
Hosted by uCoz