Универсальный драйвер принтера только для текста не работает

Я использую общий текстовый драйвер принтера, предоставленный в качестве образца в WDK (инструментарий драйверов Windows). Но он работает с одними приложениями и не работает с другими. Как будто он работает с Блокнотом и Microsoft Word, но не работает с браузером Chrome или FloreantPOS. Я пробовал использовать этот драйвер для печати в файл или термопринтер с помощью следующих 4 приложений: -

1) Простой текст в блокноте: работает успешно.

2) Текст + графика (текст) в Microsoft Word: успешно работает, т. Е. Печатает текст и пропускает графику.

3) Печать простого текста из документов Google в браузере Chrome: не работает, т.е. в случае печати в файл файл пуст, а в случае печати на термопринтер я получаю пустую страницу.

4) Печать квитанции от FloreantPOS: то же, что и (3).

Мне было интересно, может ли кто-нибудь сказать мне, что chrome и FloreantPOS работают по-разному? Кроме того, могу ли я внести некоторые изменения в общий текстовый драйвер, чтобы он работал с Chrome и FloreantPOS?

Спасибо!!


person mabicha    schedule 15.07.2012    source источник
comment
Кто-нибудь может мне здесь помочь? :)   -  person mabicha    schedule 16.07.2012
comment
Блокнот работает только с текстом, поэтому он является идеальным дополнением к текстовому драйверу. Word имеет возможность сохранять только текстовый файл, вероятно, он использует эту же возможность при обнаружении только текстового драйвера. Все остальное будет использовать вызовы графики GDI.   -  person Mark Ransom    schedule 18.07.2012
comment
@MarkRansom: К сожалению, очень немногие приложения, если они вообще есть, пытаются определить тип принтера, на который они печатают, и соответствующим образом скорректировать свое поведение. Ни одно приложение для Windows, о котором я знаю, этого не делает. Все они просто используют GDI.   -  person Carey Gregory    schedule 19.07.2012
comment
@CareyGregory и несколько драйверов принтера, если они вообще есть, являются универсальным текстом. Я не считаю это недостатком экосистемы Windows, я считаю это сильной стороной.   -  person Mark Ransom    schedule 19.07.2012
comment
@MarkRansom: Хороший вопрос, и я согласен.   -  person Carey Gregory    schedule 19.07.2012
comment
Большое спасибо, ребята !! Это отвечает на множество вопросов в моей голове ...   -  person mabicha    schedule 19.07.2012
comment
@CareyGregory: Привет, Кэри! Можете ли вы помочь мне еще раз с этим вопросом :)   -  person mabicha    schedule 14.08.2012


Ответы (1)


Chrome печатает текст как графику, по крайней мере, на всех веб-сайтах, которые я пробовал. Он использует рисование линий для рисования текста, а не для печати реальных символов; следовательно, текстовому драйверу нечего печатать. Вы можете продемонстрировать это, распечатав в Adobe PDF, а затем открыв полученный PDF-файл и проверив его с помощью предпечатного анализа. Я распечатал 20 страниц с веб-сайта cnn.com и получил нет текста в PDF. Когда я печатаю на текстовом принтере Windows, я не получаю ничего, кроме набора символов перевода строки.

К сожалению, некоторые приложения печатают именно так. Я получаю те же результаты с Firefox. (Браузеры, как известно, все плохо справляются с печатью.) Используя Firefox на сайте tumblr.com, который в основном представляет собой обычный текст, я получаю полный мусор. Скорее всего, Firefox печатает с использованием идентификаторов глифов, а не символов, которые драйвер только для текста, вероятно, не обрабатывает правильно.

Боюсь, что для этого нет ничего, кроме использования другого драйвера. Текстовый драйвер очень ограничен, и я сомневаюсь, что он будет хорошо работать с большинством приложений. Я ожидал, что даже Word не сможет работать с некоторыми шрифтами. Я бы рекомендовал вместо этого использовать Unidriver Postscript или растровый драйвер.

person Carey Gregory    schedule 17.07.2012