Используется mandriva 2007. Во вложении исходные тексты приложения, само приложение, результат печати из под WIndows - windows.ps, результат печати из под Linux - linux.ps Приложение реализовано на Turbo Delphi для win32, после запуска нужно выбрать принтер, на который выполняется печать (печать идет в файл средствами Windows) - в результате будет сформирован файл c:\test.ps, перед запуском приложения нужно этот файл удалить. Во вложении прилагаю шрифт, которым выполнялась печать. Печать из под Windows выполнялась на том же компьютере, принтер выбирался "HP C Laser Jet 4500-PS" (думаю, можно выбрать любой postscript-принтер). Из под Linux печать выполнялась на принтер Epson FX-1170 (думаю, в данном случае это неважно, т.к. печать выполнялась в файл).
http://bugs.etersoft.ru/show_bug.cgi?id=508 Это одна и та же ошибка?
*** Bug 508 has been marked as a duplicate of this bug. ***
Нужно преобразовать ps в PDF, и если он нормально будет на экране выглядеть, но плохо печататься через gv, напечатать через acroread. Какие результаты?
Created attachment 121 [details] преобразования ps в pdf Преобразование ps в pdf результатов не принесло, т.к. даже на экране текст отображается не правильно.буквы или обрезаются linux.pdf или сжимаются test.pdf
Костя, перепиши пожалуйста тест на C, в виде чисто консольной программы, если получится, и попробуй найти источник проблемы. Что-то явно с метриками.
В результате запуска теста в Windows был также сформирован файл test.ps. При распечатке этого файла с помощью команды lpr был получен точно такой же обрезанный текст. Вывод: wine здесь абсолютно ни при чём. Варианта может быть два: 1. Ошибка при печати из linux. 2. Неправильный тест, который так же будет работать в Windows. Для того, чтобы окончательно выявить причину, нужно либо откомпилировать старый тест на дельфи без печати в файл и посмотреть за поведением в wine и windows, либо написать аналогичный тест на C. Сейчас есть портированный на C тест, отличающийся только тем, что размер шрифта не считается как функция от разрешения, а берётся фиксированным. Ну и без всяких окон, естественно.
Перекомпиляция теста с печатью не в файл, а не принтер, и последующий запуск его в Windows дали те же результаты. Буквы наплывают и обрезаются. Неправильный сам тест, баги не существует.
Created attachment 164 [details] ещё тесты Ещё два теста. 1. Перекомпилированный тест на delphi с возможностью печати на принтер. При запуске в Windows получаем точно такой же обрезанный текст. Wine работает идентично в этом случае, обрезая буквы. 2. Тест на C. Для простоты исключена вся графика. Файл для печати задаётся в исходниках, или строка комментируется для печати на принтере. Ещё одно упрощение: печать возможна только принтером, имеющим имя hp.
Из вложения "ещё тесты" выполнил project1.exe под Windows XP с печатью на матричный принтер Epson LX-300. Хотя буквы расположены довольно близко друг к другу, они не обрезаются, единственный недочет - между буквами Е и Т в слове ПРИМЕТЫ нет промежутка и верхние горизонтальные линии этих букв сливаются в одну. Не согласен с тезисом: При запуске в Windows получаем точно такой же обрезанный текст.
Created attachment 165 [details] скан распечатанного листочка Тест запущен в win2003, печать на HP LaserJet 1200. Ещё раз проверил - результаты с точностью до миллиметра совпадают с вайновскими.
Created attachment 166 [details] Сканирование после печати на Epson LX-300
(In reply to comment #10) > Created an attachment (id=165) [details] > скан распечатанного листочка > > Тест запущен в win2003, печать на HP LaserJet 1200. > Ещё раз проверил - результаты с точностью > до миллиметра совпадают с вайновскими. > Добавил вложение "Сканирование после печати на Epson LX-300". Как видно, текст выглядит вполне нормально. Настройки драйвера Epson LX-300 по-умолчанию. Также нормально выглядит текст и при печати на псевдопринтер PDF Redirect (который формирует pdf-файл). Печать выполнялась из под Windows XP из приложения project1.exe. Принтера HP LaserJet 1200 у меня нет, возможно после настройки качества печати драйвера этого принтера удастся напечатать текст с приемлемым качеством. Предлагаю ориентироваться на качество печати с перенаправлением в файл, на котором различия в печати из под Windows и wine хорошо видны.
С перенаправлением в файл - то же самое. Проверено уже давно, на принтер стали выводить после этого для полноты эксперимента. hp1200 и ps-принтер Apple (например) в win2003 показывают одинаковый результат. Ещё не тестировали на WinXP, но ловить ошибку, заключающуюся в разнице между реализацией функций в XP и 2003 не представляется возможным. Возможно, это всё-таки принтер как-то по особому обрабатывает команды печати? Печать в файл также не может быть независимой, потому что идёт через контекст определённого устройства.
(In reply to comment #13) > С перенаправлением в файл - то же самое. > Проверено уже давно, на принтер стали > выводить после этого для полноты > эксперимента. hp1200 и ps-принтер Apple (например) > в win2003 показывают одинаковый результат. Ещё > не тестировали на WinXP, но ловить ошибку, > заключающуюся в разнице между реализацией > функций в XP и 2003 не представляется > возможным. > Возможно, это всё-таки принтер как-то по > особому обрабатывает команды печати? > Печать в файл также не может быть > независимой, потому что идёт через > контекст определённого устройства. > Установите в операционную систему Windows Server 2003 шрифт из первого вложения sonar.ttf, которым собственно выполняется печать и Вы получите тот же результат, что и у меня.