Проблеми при друці іноді виникають і в OS 2. Наприклад, не захоче правильно друкувати нова модель принтера йди ж завдання на друк почнуть просто безслідно зникати. Причиною цьому може послужити те, що OS/2 пред'являє більш суворі вимоги, ніж DOS, до відповідності паралельних портів друкуючого пристрою стандартам. Крім того, в деяких випадках варто прикласти зусилля і знайти самі останні версії драйверів OS/2 для вашого принтера.
Як ми вже відмічали, основні виробники принтерів час від часу випускають нові версії OS/2-драйверів для своїх друкуючих пристроїв. Періодичне оновлення прінтерних драйверів допомагає уникнути більшість потенційних проблем при друці в OS'2. Однак слідує пам'ятає)), що перед установкою нової версії необхідно видалити стару. У цьому випадку ви будете упевнені в тому, що OS/2 має дійсно новий драйвер і всі посилання на нього в Workplace Shell встановлені коректно.
Перед тим як старий драйвер буде видалений, в системі повинен бути хоч би ще один прінтерний драйвер, який би встав йому на заміну.
Не видаляйте фіктивний драйвер принтера IBMNULL. Тоді наш прінтерний об'єкт завжди буде мати принаймні два драйвери (фіктивний і поточний драйвер вашого принтера), і ви спокійно зможете перед установкою нової версії драйвера видалити стару.
Програма установки Install new printer driver не включає в свій список драйвер, що вже є на вашому комп'ютері. Це виглядає так, неначе цього драйвера взагалі немає на дистрибутивному диску. Передбачимо, ви вже встановили драйвер принтера LaserJet Series III. Якщо тепер запустити програму установки Install new printer driver з дистрибутивною дискетою Device Driver 1, то ви побачите такий список, як показаний на малюнку.
Раніше драйвер Series III знаходився між драйверами IID і III Cartridge Plus, але тепер його там немає: він вже на жорсткому диску комп'ютера, а програма установки вважає непотрібним показувати вже присутніх в системі драйвери принтерів.
Хоч, в принципі, при заміні версій прінтерних драйверів і OS 2 особливих ускладнень не виникає, для того щоб уникнути деяких потенційних старих проблем, потрібно завжди керуватися двома нескладними правилами:
Видаляти перед установкою нової версії прінтерного драйвера стару. Зберігати фіктивний драйвер принтера IBMNULL.
При установці OS/2 автоматично виконує оптимальну для широкого кола задач настройку процесу друку. Однак для користувачів з великою кількістю принтерів в операційній системі передбачений ряд параметрів, за допомогою яких можна самостійно управляти (окремими характеристиками друку в OS 2.
Навички в управлінні друком можуть пригодитися і в щоденній роботі. Іноді потрібно видалити завдання на друк з черги, тимчасово припинити друк на принтері або ж змінити порядок розташування завданні в черзі. Наприклад, якщо вам треба перевірити, чи друкує даний додаток, але ви не хочете тратити на це папір, можна поступити таким чином: припинити чергу на друк, розпечатати з додатку зразок, а завдання на друк зразка видалити з черги.
Драйвер принтера дозволяє вам задати ряд специфічних для нашого друкуючого пристрою параметрів. Наприклад, якщо ви використовуєте принтер з двома піддонами для подачі паперу, ви можете в настройках прінтерного драйвера указати, який з них потрібно використати для роздруку. Для лазерного принтера драйвер, як правило, дозволяє задавати орієнтацію сторінок книжкову або альбомну.
Як ви вже знаєте, щоб намалювати зображення, оформити текст з шрифтами або скористатися іншими можливостями графічного призначеного для користувача інтерфейсу, додатки OS 2 можуть звертатися до операційної системи. Та частина OS/2, яка забезпечує виконання цих функцій, називається інтерфейсом графічного програмування (raphical Programming Interface, GPI). Програми можуть виконувати десятки різних звертань до GPI, використовуючи для цього команди, що починаються з префікса «GPI». Ім'я буферного файла друку має вигляд nnnnn.SPL, де ппппп послідовний номер, що привласнюється програмою буферизації друку, наприклад, 00001.SPL, 00002. SPL і т. д. Файл SPL містить команди GPI.
Потім файл з даними, що виводяться на друк вміщується в чергу відповідного принтера. Нагадаємо, що в цьому файлі як і раніше містяться незалежні від типу принтера команди GPI.
Нарешті, коли буферний файл друку дочекається своїй черзі, драйвер друку прочитає з нього набір команд GPI і перетворює їх в команди даного конкретного принтера.
Звернемо увагу на пункт Printer specific format (Формат для конкретного принтера). Якщо помітити цей пункт, то вся описана вище послідовність виведення на друк зміниться.
Драйвер принтера відразу ж залучається до роботи і генерує код для конкретного принтера. Потім програма буферизації друку перенаправляти код в файл, який вміщується в чергу і згодом виводиться на принтер.
Навіщо може зажадатися відразу ж перетворювати дані в формат певного принтера? У деяких ситуаціях це прискорює друк в OS/2. Крім того, такий підхід дозволяє розпечатувати буферні файли SPL або їх копії на іншому комп'ютері. Навіть якщо до вашого комп'ютера взагалі не підключений принтер, ви проте можете абсолютно спокійно виводити дані на друк з своїх прикладних програм. Ці дані будуть перехоплені і вміщені в файли nnnnn.SPL. Однак якщо ці файли будуть мати формат GPI, то ви мало що зможете з ними зробити. Якщо ж вони будуть вже в форматі конкретного принтера, ви зможете їх скопіювати на дискету, перенести на комп'ютер, до якого підключений такий принтер, і розпечатати їх. Причому на цій машині абсолютно не обов'язково повинна стояти операційна система OS 2.
І нарешті є ще одна причина, через яку варто звернути увагу на пункт Printer specific format. Помітивши цей пункт, ви отримуєте можливість скористатися і пунктом Print while spooling (Друк в ході буферизації). При цьому на буферизацію і управління чергою буде затрачуватися істотно менше часу і, відповідно, скоротяться до мінімуму затримки перед реальним виведенням на принтер.
Буферизація друку в OS/2 дозволяє декільком програмам одночасно виводити дані на декілька принтерів, підключених до різних інтерфейсів комп'ютера. Якщо OS/2 виступає в ролі платформи для того або іншого сервера, то без буферизації друку обійтися надто складно. Однак в більшості випадків до персонального комп'ютера підключений усього один принтер, і друк призначується кожним моментом часу тільки з одного додатку. У такій ситуації додаткова обробка даних програмою буферизації і драйвером черги тільки лише знижує загальну продуктивність друку. Тому в умовах персонального використання комп'ютера з одним-єдиним принтером доцільно помітити обидва пункти Printer-specific format і Print while spooling на сторінці Queue options записника параметрів прінтерного об'єкта. Тоді виникаючі в фоновому режимі процеси буферизації і управління чергою не будуть надавати ніякого впливу на швидкість роздруку даних з прикладних програм.
При виборі пункту Printer-specific format, команди GPI негайно перетворюються у відповідні команди управління принтером. Таким чином, файли SPL будуть містити саме ці команди і тому можуть зайняти істотно більше місця на жорсткому диску. Так, наприклад, мова управління принтерами HP PCL не так лаконічна, як GPI, і для файлів в цьому форматі вам потрібно передбачити як мінімум 1-2 Мб додаткового вільного простору на диску.
Якщо ви працюєте з декількома операційними системами, то ви напевно вже звернули увагу, що в управлінні прінтерними чергами існують певні загальні функції: затримка, звільнення, видалення завдань на друк, а також зміну пріоритету завдання на друк.
При роботі з великою кількістю завдань на друк в OS/2 детальне представлення прінтерного об'єкта більш зручно, ніж піктографічне. Детальне уявлення дозволяє відразу ж побачити назву документа, дату, час, поточну стан завдання на друк, ім'я і ідентифікатор його власника.
Кожна черга має своє спливаюче меню управління. Це меню викликається натисненням правої кнопки миші по будь-якому вільному місцю вікна черги. На мал. 11.13 як приклад показане каскадне меню пункту Change status (Змінити стан) спливаючого меню прінтерного об'єкта.
Як ви вже знаєте, OS/2 дозволяє управляти чергою на друк загалом, а також способом напряму даних в цю чергу. Але цим ваші можливості не вичерпуються. Ви також можете управляти і кожним завданням на друк нарізно. На мал. 11.14 показане вікно черги з одним завданням на друк і спливаючим меню управління цим завданням. Викликається таке меню натисненням правої кнопки миші по строчці із завданням на друк. Ви можете припинити виконання завдання, видалити його або змінити порядок проходження завдань в черзі.