Что такое GDI-принтер. GDI-printer (GDI-принтер) (Cм. Языки команд принтера) От чего зависит максимальная скорость печати принтера, почему она порой меньше заявленной производителем

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

В принципе, его можно назвать «контроллером принтера», но суть не в этом.
Любой встроенный процессор (контроллер) принтера обязательно управляется с помощью какого-либо языка описаний команд.

Среди таких языков можно назвать, например, Postscript, PCL, ESC/P, HPGL, Lineprinter, Xerox XES/UDK, Luminous LN02Plus и множество других.
Другое дело - GDI-принтер.

На самом деле, GDI, или Graphic Device Interface - не что иное, как библиотека определенных функций операционной системы Windows для осуществления вывода информации на графические периферийные устройства, такие как дисплеи или принтеры.

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

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

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

Плюсы такой «организации труда» огромны: вам не приходится переплачивать за достаточно дорогую электронную начинку принтера; для владельцев ПК даже средней мощности вопрос небольшой дополнительной нагрузки на CPU просто незаметен.

Есть, правда, и минусы, хотя в наше время они достаточно условны, если речь не идёт о работе с платформы, отличной от Windows.
Ну кому сейчас, к примеру, понадобится печать из-под DOS?
Ранее у отдельных моделей также были сложности с использованием в качестве сетевого принтера в смешанных сетях.

На практике нередки случаи, когда различные производители указывают в характеристиках принтера в качестве языка управления свои собственные разновидности GDI-системы.
Например, у принтеров компании Samsung это SPL, или SPL-Color - Samsung Printing Language.

Драйвер AMD Radeon Software Adrenalin Edition 19.9.2 Optional

Новая версия драйвера AMD Radeon Software Adrenalin Edition 19.9.2 Optional повышает производительность в игре «Borderlands 3» и добавляет поддержку технологии коррекции изображения Radeon Image Sharpening.

Накопительное обновление Windows 10 1903 KB4515384 (добавлено)

10 сентября 2019 г. Microsoft выпустила накопительное обновление для Windows 10 версии 1903 - KB4515384 с рядом улучшений безопасности и исправлением ошибки, которая нарушила работу Windows Search и вызвала высокую загрузку ЦП.

Драйвер Game Ready GeForce 436.30 WHQL

Компания NVIDIA выпустила пакет драйверов Game Ready GeForce 436.30 WHQL, который предназначен для оптимизации в играх: «Gears 5», «Borderlands 3» и «Call of Duty: Modern Warfare», «FIFA 20», «The Surge 2» и «Code Vein», исправляет ряд ошибок, замеченных в предыдущих релизах, и расширяет перечень дисплеев категории G-Sync Compatible.

Основное и очевидное различие это способ работы принтера и место обработки данных. Для того, чтобы напечатать изображение принтер должен иметь у себя в памяти массив точек, которые ему нужно будет воспроизвести на бумаге. Процесс создания массива точек - это одна из основных функций печатающего устройства. Этот процесс называется растеризацией .
В принтерах, работающих под управлением PCL и PostScript (или сокращённо PS) растеризация осуществляется непосредственно в принтере . Для этого в принтер встроен растровый процессор (РИП - от англ. "RIP" - R aster I mage P rocessor), который получает от компьютера команды на одном из языков разметки страниц (PCL или PostScript) и интерпретирует их так, чтобы создать по этим командам массив точек. Этот массив при помощи механики принтера переносится на бумагу в результате чего создаётся отпечаток.
В случае GDI-принтеров (GDI сокращение от G raphical D evice I nterface - интерфейс графического устройства) функции растрового процессора выполняет драйвер принтера, работающий на компьютере . Именно там происходит преобразование образов, хранимых в памяти компьютера в будущий растр, необходимый для печати. По мере формирования этого растрового массива он передаётся на принтер, который сразу же начинает наносить его на бумагу. В этом случае память принтера используется лишь как буфер для передачи данных. Вполне может быть такая ситуация, когда начало листа уже отпечатано, а последняя порция данных для его окончания ещё передаётся из компьютера в принтер. Если в этот момент происходит сбой связи, то, естественно, возникают ошибки в напечатанном изображении (недопечатанный лист или лист на котором вместо изображения нижнюю часть листа занимает подобие штрих-кода).
GDI-принтеру память вообще не особо нужна (только для удобства, чтобы быстрее сливать в него обработанные на компе данные). А это значит, что можно печатать на GDI-принтере практически любые по размеру задания: и 50мпкс панорамную фотку на баннере и вёрстку с кучей векторов на А3 в дуплексе. Пока не кончится виртуальная память на компе, всё это будет печататься на GDI-принтере, но практически наверняка сдохнет с ошибкой out of memory на PS/PCL принтере. Это уже не говоря о том, сколько времени будет обрабатываться задание для печати на самом принтере с его процессором на 500МГц и на современном компе, где производительность наверняка раза в 4 выше.
С другой стороны - PS-принтер это ещё и возможность работы под управлением PCL, а значит как минимум два варианта обработки изображения (т.е. возможность выбрать то, что больше подходит по цвету или растру), при том, что на GDI-принтере всего один вариант. Это ещё быстрое отпускание приложения и гораздо меньшие "тормоза" на компе, когда в печать уходит "мощный" файл. Это гораздо меньший траффик в сети, если принтер подключен через неё. Это возможность печати из профессиональных графических приложений с использованием PPD-файлов (PPD - сокращение от P ostScript P rinter D escription) с прямым управлением такими параметрами, как форма растровой точки, линиатура и угол наклона растра, а также возможность использования профилей с хранением их на жёстком диске принтера (опция). А это ещё один, причём очень сильно отличающийся от стандартных, вариант печати. Впрочем эти параметры требуют довольно точного понимания того, что это даёт, что отбирает и как вообще этим пользоваться. Но в любом случае, ничего подобного в GDI-принтере нет.
Ещё одно существенное отличие PS-принтеров заключается в том, что они могут получать на вход цветные данные и в формате RGB, и в формате CMYK. Принтеры с поддержкой PCL и GDI могут оперировать только с данными в формате RGB. Это значит, что если создаётся вёрстка, в которой элементы окрашены в цветах CMYK, то при печати на PCL и GDI-принтерах будет проведено предварительное преобразование из CMYK в RGB и уже эти данные будут использоваться для обработки. А это дополнительное преобразование неизбежно вызовет и дополнительные потери в цветопередаче. В любом случае расчитывать на то, что PCL или GDI-принтер не привнесёт дополнительных изменений в цвета вашей CMYK-вёрстки не приходится.

В чём различие между принтерами с поддержкой PCL/PostScript и принтерами GDI?

Основное и очевидное различие это способ работы принтера и место обработки данных. Для того, чтобы напечатать изображение принтер должен иметь у себя в памяти массив точек, которые ему нужно будет воспроизвести на бумаге. Процесс создания массива точек - это одна из основных функций печатающего устройства. Этот процесс называется растеризацией.
В принтерах, работающих под управлением PCL и PostScript (или сокращённо PS) растеризация осуществляется непосредственно в принтере. Для этого в принтер встроен растровый процессор (РИП - от англ. "RIP" - Raster Image Processor), который получает от компьютера команды на одном из языков разметки страниц (PCL или PostScript) и интерпретирует их так, чтобы создать по этим командам массив точек. Этот массив при помощи механики принтера переносится на бумагу в результате чего создаётся отпечаток.
В случае GDI-принтеров (GDI сокращение от Graphical Device Interface - интерфейс графического устройства) функции растрового процессора выполняет драйвер принтера, работающий на компьютере. Именно там происходит преобразование образов, хранимых в памяти компьютера в будущий растр, необходимый для печати. По мере формирования этого растрового массива он передаётся на принтер, который сразу же начинает наносить его на бумагу. В этом случае память принтера используется лишь как буфер для передачи данных. Вполне может быть такая ситуация, когда начало листа уже отпечатано, а последняя порция данных для его окончания ещё передаётся из компьютера в принтер. Если в этот момент происходит сбой связи, то, естественно, возникают ошибки в напечатанном изображении (недопечатанный лист или лист на котором вместо изображения нижнюю часть листа занимает подобие штрих-кода).
GDI-принтеру память вообще не особо нужна (только для удобства, чтобы быстрее сливать в него обработанные на компе данные). А это значит, что можно печатать на GDI-принтере практически любые по размеру задания: и 50мпкс панорамную фотку на баннере и вёрстку с кучей векторов на А3 в дуплексе. Пока не кончится виртуальная память на компе, всё это будет печататься на GDI-принтере, но практически наверняка сдохнет с ошибкой out of memory на PS/PCL принтере. Это уже не говоря о том, сколько времени будет обрабатываться задание для печати на самом принтере с его процессором на 500МГц и на современном компе, где производительность наверняка раза в 4 выше.
С другой стороны - PS-принтер это ещё и возможность работы под управлением PCL, а значит как минимум два варианта обработки изображения (т.е. возможность выбрать то, что больше подходит по цвету или растру), при том, что на GDI-принтере всего один вариант. Это ещё быстрое отпускание приложения и гораздо меньшие тормоза на компе, когда в печать уходит "мощный" файл. Это гораздо меньший траффик в сети, если принтер подключен через неё. Это возможность печати из профессиональных графических приложений с использованием PPD-файлов (PPD - сокращение от PostScript Printer Description) с прямым управлением такими параметрами, как форма растровой точки, линиатура и угол наклона растра, а также возможность использования профилей с хранением их на жёстком диске принтера (опция). А это ещё один, причём очень сильно отличающийся от стандартных, вариант печати. Впрочем эти параметры требуют довольно точного понимания того, что это даёт, что отбирает и как вообще этим пользоваться. Но в любом случае, ничего подобного в GDI-принтере нет.
Ещё одно существенное отличие PS-принтеров заключается в том, что они могут получать на вход цветные данные и в формате RGB, и в формате CMYK. Принтеры с поддержкой PCL и GDI могут оперировать только с данными в формате RGB. Это значит, что если создаётся вёрстка, в которой элементы окрашены в цветах CMYK, то при печати на PCL и GDI-принтерах будет проведено предварительное преобразование из CMYK в RGB и уже эти данные будут использоваться для обработки. А это дополнительное преобразование неизбежно вызовет и дополнительные потери в цветопередаче. В любом случае расчитывать на то, что PCL или GDI-принтер не привнесёт дополнительных изменений в цвета вашей CMYK-вёрстки не приходится.

Материал взят с сайта www.kudesnik.net

В статье рассказывается, как приспособить CUPS-сервер под управлением FreeBSD для поддержки принтеров, не имеющих Linux-драйверов и обеспечить его работу с клиентами на базе Microsoft Windows XP

[Антон Буцик (b_a_m at ua.fm)]

CUPS - принт-сервер и GDI-принтер

Все, что описано ниже будет происходить с FreeBSD-5.2 и samba-3.0.5, но думаю, что и с Linux все будет работать тоже, но Samba не ниже 3.х (поднять не сложно).

Задача такая: если принтеры, под которые нет драйверов в cups и других пакетах и есть клиенты по Windows XP Pro (Home Edition)

Читая Samba-HowTo, в smb.conf нужно добавить.

Disable spoolss = Yes show add printer wizard = No ... comment = All Printers path = /var/spool/samba printer admin = root guest ok = Yes printable = Yes browseable = No comment = Printer Drivers path = /usr/local/share/cups/drivers write list = root # а вот пример для плоттера comment = HPDesignJet500 path = /var/spool/samba guest ok = Yes printable = Yes browseable = Yes use client driver = Yes Последняя строка говорит от том, что нужно использовать драйвера со стороны клиента и в тоже время в файлах настройки cups разкомментировать строки: .../mime.convs application/octet-stream application/vnd.cups-raw 0 - .../mime.types application/octet-stream Теперь cups пропускает потоки данных, не форматируя их. cups-base-1.1.20.0 cups-lpr-1.1.20.0 cups-pstoraster-7.07_1 ghostscript-gnu-nox11-7.07_11 foomatic-db-20040107_2 libijs-0.35 hpijs это те пакеты, которые у меня стоят. ghostscript - позволяет печатать на принтеры, которые не поддерживают PostScript. Ниже просто готовые драйвера сторонних разработчиков которые дают возможность печатать прямо из сервера и клиента без использования use client driver = Yes У меня все двайвера, которые установились лежат /usr/local/share/cups/model/ /usr/local/share/cups/drivers/ у всех по-разному.

Нужно добавить принтер, для использования

Http://print-server:631/ если cupsd запущен, там все ясно, только желательно чтобы имена принт-шар samba и cups имена принтеров совпадали (case sensative).

Для тех принтеров, у которых нет драйверов или GDI принтеры аля Canon (MS Slave) двайвера нужно указать просто RAW , то есть пропускать прямо и использовать двайвера клиента.

Если вы только только подключили принтер по USB, то нужно перезапустить cupsd и у вас в выборе по http://... (backend) появится, к примеру USB1(ulpt0).

Рестартуем cups. В логах (/var/log/cups/error_log) читаем, что и как там проиходит, если такой информации не достаточно, то добавить ее можна в cupsd.conf

LogLevel debug Ну вот в Сетевом головокружении на сервере должен появиться принтер hp-500, после перезапуска самбы, тыкаем на него и ставим драйвера с дистриба, который с ним шел. Пробум печатать с клиента и:)

Ну выше все ясно, если все нормально получилось с системной стороной вопроса, то есть, если система смогла нормально обработать поключенное устройство.

А вот у меня есть проблема с притерами USB 2.0 Hi Speed, которы печатали страницу и система в корку:(

Во FreeBSD 5.1 появился двайвер device ehci

# USB support device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface device usb # USB Bus (required) device ugen # Generic device uhid # "Human Interface Devices" device ulpt # Printer device ehci # USB 2.0 support вот кусок из ядра для USB 2.0 принтеров, система при подключении прекрасно их определяет, но не работает - это FreeBSD 5.2-CURRENT(echi - v1.69), в манах пишут, что драйвер не готов, будем ждать.

Но есть проект, (CUPS-SAMBA provides a means to export CUPS printers from a FreeBSD server to Windows NT/XP/2000/2003 clients with a single Windows driver that customizes the printer based on the PPD file for the printer. WWW: http://www.easysw.com/ /usr/ports/print/cups-samba/)

который дает возможность перенаправлять печать с Unix сервера на клента или на сервер снова.Он дает нам backend smb.

Для начала попробуйте примонтировать smb шару, если все окей строка параметров при монтировании и дает URI.

Mount_smbfs -W GKM //anton@admin/CanonLAS /mnt/admin Среди драйверов выбираем windows smb. В URI smb: -W GKM //anton@admin/CanonLAS - работает. Добавим шару на самбе (перезапустим), ставим принтер с клиенскими драйверами и пробуем печатать. Печать идет на сервер, а с сервера на клиента, у которого стоит принтер GDI. Такой круг можна проделать и с сервером, но это для Вас. Антон Буцик (b_a_m at ua.fm) - CUPS - принт-сервер и GDI-принтер

В предыдущих обзорах мы часто упоминали в характеристиках принтеров, с какой они поддержкой: PCL или GDI. Пришло время рассказать, в чём различие между принтерами с поддержкой PCL/PostScript и принтерами GDI

В чем разница принтеров с поддержкой GDI и поддержкой PCL/PostScript ? Вот и нам стало интересно, из-за чего в столовой, во время всеобщего чаепития незанятых и не очень занятых коллег началась дискуссия, в которой товарищ Вяземская хотела доказать Александру Александровичу, что профессор Преображенский, тяготея к PCL , в корне неправ. И тут две стороны дискуссии пришли к однозначному решению, что рассматривать нужно способ работы принтера и место обработки данных. И тут же начали рассматривать массив точек, из которого и состоит изображение, которое нужно воспроизвести на бумаге. И тут прозвучало умное слово «растеризация», на несколько минут охладившая пыл обоих сторон. Так как слово, влетевшее в дискуссию, было выпущено мимо проходящим

неприсоединившимся представителем. И тут многие вспомнили, что одна из основных функций печатающего устройства - процесс создания массива точек, а по-научному «растеризация»! После чего всё покатилось по накатанной. В принтерах, которые работают под управлением PCL и Postscript (сокращенно PS ) , растеризация осуществляется непосредственно в принтере.

Для этого в принтер встроен растровый процессор Raster Image Processor ( RIP ). Принтер получает и интерпретирует команды языка разметки страниц PCL или PostScript, по которым и строит растеризацию. Результат построения - отпечаток на бумаге.

В отличии от PCL принтеров в случае с GDI принтерами, то есть Graphical Device Interface, как эта аббревиатура читается в полный рост, растеризацию выполняет аналог растрового процессора - драйвер принтера, установленный на компьютере. Именно в драйвере происходит преобразование образов в растр для печати. По мере формирования растра он передается на принтер, который, в свою очередь, начинает его печать. В этом случае принтеру не нужна большая память, так как наличная память фактически является неким буфером по передаче данных. Какие плюсы от таких особенностей? На GDI принтере можно печатать любые по размеру задания, вплоть до вёрстки с большим количеством векторов в формате A 3 в дуплексе. Или даже 50 мегапиксельные панорамные фотографии. Печатать будет до тех пор, пока в компьютере не кончится виртуальная память.

Класс! - воскликнули приверженцы лагеря GDI . Вот и превосходство над PS , который наверняка захлебнётся от информации по ошибке «out of memory». К тому же RIP процессор внутри PS принтера раза в 4 слабее принтера компьютера. В основном распространены RIP с тактовой частотой 500 Мгц. Значит и скорость построения в GDI будет выше. Ну вот и ложка дёгтя: пока не наступит сбой связи между компьютером и принтером. Результат - недопечатанный лист или вертикальные полосы различной ширины. Кроме того, если у вас «дохлый» компьютер с минимумом оперативной памяти … Далее представить мучения и потоки ругательств даже из уст рафинированных секретарш вы можете сами.

Теперь добавим мёду PS принтеру. Меньше «тормозит» приложения компьютера при печати большого файла, компьютер менее «тормозит», меньший траффик в сети, если принтер подключен к ней. А уж такая возможность, как печать из профессиональных графических приложений с использованием PPD файлов (PostScript Printer Description*)? Что даёт? А это даёт практически управление всеми параметрами печати: линеатура и угол наклона растра, форма растровой точки и т.д. Такого в GDI нет.

И вот еще одна разница между PS принтерами и остальными. Они могут получать на печать данные как в формате CMYK , так и в RGB . А вот принтеры PCL и GDI только с RGB . А это значит, что требуется преобразование из CMYK в RGB . И только после этого строится массив. Это дополнительное преобразование даст искажения и потери в цветопередаче.

Итак, прежде чем купить принтер, кроме анализа его технических характеристик, таких как скоромть печати, ёмкость лотка, доступность расходников, легкость заправки и т.д., необходимо уяснить, с какими файлами вам предстоит работать как по объему, так и по формату.

ЭТО ОБЗОР, А РЕШЕНИЕ ПРИНИМАТЬ ВАМ!

*PPD-файл (PostScript Printer Description) - принтерный файл в текстовом формате ASCII производства компании Adobe Systems или фирм, выпускающих продукт под ее маркой (OEM), - описывает заводские характеристики и особенности конкретной модели печатающего PostScript-устройства.

В обзоре использованы материалы с сайта www.kudesnik.net