У меня есть один из более старых принтеров LaserJet HP (а именно, модель 4000). Это, как предполагается, понимает PostScript, но это будет часто отказываться печатать вещи, что другие принтеры, проявите, и ghostscript все совершенно довольны. Я раньше мог работать вокруг этого путем прокручивания всего ps2ps
с уровнем выходного языка, вызванным к 1, но на этой неделе, у меня есть документ, для которого даже это не достаточно хорошо; это печатает две страницы из 11 и сдается. Если я вручную подаю документ принтеру на порте TCP 9100, таким образом, я вижу ошибки (вместо того, чтобы использовать спулер печати), я получаю это:
%%[ Error: undefined; OffendingCommand: ⬜ ]%%
%%[ Flushing: rest of job (to end of file) will be ignored ]%%
где это ⬜ не должно быть 'никаким таким символом в этом шрифте' графическая метка. Само собой разумеется, нет никаких символов неASCII нигде в файле. Документ это сразу - проблема, является выводом pdfTeX, но у меня также были эти проблемы с печатью из Firefox, Inkscape и OpenOffice (все из которых, IIRC, используют Каир для генерации PostScript, поэтому возможно, это не является столь большим из образца, как можно было бы думать). Это не проблема спулера печати, я получаю те же проблемы, подающие принтер вручную с netcat.
Кто-либо может предложить общую тактику поиска и устранения неисправностей для этого вида проблемы и/или способ повторно соединить проклятую вещь проводом, таким образом, это менее привередливо о своем входе?
Вы говорите, что Ghostscript не имеет никакой проблемы с файлом? Хорошо, затем попробуйте это:
Первая опция:
Вот командная строка Ghostscript (для Windows), который создаст PDF:
gswin32c.exe ^
-dBATCH ^
-dNOPAUSE ^
-sDEVICE=pdfwrite ^
-dSAFER ^
-r600x600 ^
-dFIXEDMEDIA ^
-sDEFAULTPAPERSIZE=a4 ^
-dPDFSETTINGS=/printer ^
-sOutputFile=problematic.pdf ^
c:/path/to/your/problematic.ps
Проверьте stdout и вывод stderr, чтобы видеть, дает ли Ghostscript какие-либо предупреждения или ошибки при преобразовании. После того как у Вас есть свой PDF, проверьте, какие шрифты используются (и если они встраиваются или не).
Вторая опция:
netcat
).Вот командная строка Ghostscript (для Windows), который создаст PCL:
gswin32c.exe ^
-dBATCH ^
-dNOPAUSE ^
-sDEVICE=ljet4d ^
-dSAFER ^
-r600x600 ^
-dFIXEDMEDIA ^
-sDEFAULTPAPERSIZE=a4 ^
-sOutputFile=problematic.pcl ^
c:/path/to/your/problematic.ps