Металлолом/2: WIN-принтер Samsung ML-1210

PRINTERS
WIN-принтер Samsung ML-1210
Оценка : 3
dRON Pioneer
30.06.2003
Samsung ML-1210 Четыре месяца назад нам с женой подарили принтер под названием Samsung ML-1210, тот, который SmartGDI-совместимый, или попросту "Win-принтер". Надо сказать, отличный аппарат для работы дома под ОФФТОПИКОМ. На аппарате даже имеется наклейка для особо доверчивых с надписью: "Отличная производительность, Низкая стоимость печати, Удобство, СОВМЕСТИМОСТЬ". :))) В первых трех пунктах я ни сколько не сомневаюсь, а вот по поводу последнего... :( Впрочем, все по-порядку...

После моих попыток поиска полуосевых драйверов в тырнете и на прилагаемом диске, в конференции fido7.su.os2 я прослышал про "фильтры GhostScript", которые позволяют изобразить на устройстве, для которого имеется фильтр, любой PostScript (PS) или PDF файл.

С этого момента я решил попробовать скомпилить GhostScript с фильтром для ML-1210 из уже имеющихся на прилагаемом CD исходников под хрюниксы. За основу я взял AFPL Ghostscript 8.00 (2002-11-21), подсунул найденный фильтр, скомпилил при помощи gcc_2.8.1. И о чудо! Заработало... Вот, например, строчка для печати файла 74HC74.PDF:

   gsos2.exe -sDEVICE=gdi -dNOPAUSE -q -sOutputFile=lpt1 74HC74.PDF
В комментариях фильтра я видел надпись, которая говорит о том, что он должен работать со SmartGDI принтерами: Samsung ML-4500, ML-2xx, ML-1xxx, ML-5080, ML-6040 и Lexmark E210.

Я полагаю, что Xerox Phaser 3110 тоже должен работать... Хотя фиг его знает... Установка проста: качаете оригинальный GhostScript8.0 и устанавливаете его, а уже поверх накладываете скомпиленные мною файлы (gs_addon.zip, 1.14M):

   gsdll2.dll
   gsos2.exe
   gspmdrv.exe
Теперь дальше: как сделать так, чтобы вся эта хрень срабатывала автоматически, после нажатия кнопки "ПЕЧАТЬ" из любого приложения?

Я вижу 2 решения: одно из них почему-то у меня не работает, а другое я не знаю, как реализовать... (Помогите, люди добрые...)

Решение 1:  Если ваш принтер подключен к порту LPT1, устанавливаем драйвера для PS-совместимого принтера (ну, скажем, HP LaserJet 4/4M PS), и привязываем их к LPT2.
Используйте программку PRINTMON.EXE (на Хоббесе) для перенапрвления PS-файла, полученного из LPT2 на LPT1 через GS-фильтр для ML-1210. Я писал такую строчку:
printmon lpt2 "gsos2 -sDEVICE=gdi -dNOPAUSE -q -sOutputFile=lpt1 "
Этот вариант у меня _НЕ_ПРОКАТЫВАЕТ_ с большинством PS-файлов — похоже, PRINTMON как-то некорректо прогоняет через себя данные... В общем, без него работает, а с ним — нет... :(
Решение 2:  Так же создается PS-принтер, только он сыпет данные не в порт, а в файл, который затем какой-нибудь демон должен пихать в ЛТП1 через фильтр принтера. Как это сделать — я не знаю... Научите, люди добрые...
Пробуйте на здоровье...

В общем это всё, до чего я додумался. Осталась малость — заставить работать эту хрень автоматически... Если есть какие-либо мысли, пишите на pioneer@grand-prix.ru.


Вернуться к оглавлению

Интересные ссылки: