Качество печати Java в Linux на матричном принтере

Мне нужно распечатать отчет из настольного Java-приложения на матричный принтер (Epson LX-300 II). Отчет состоит из текста и графики. Принтер подключен через USB, и я использую CUPS для печати. Я печатаю, используя интерфейс Printable (довольно стандартный в Java).

Моя проблема:

Качество печати текста очень низкое на любом разрешении принтера (60x60, 120x60, 120x72). Кажется, что в каком-то драйвере принтера вообще нет намека на шрифт. Письма выглядят очень некрасиво. Я не могу использовать прямой вывод текста (это выглядит великолепно), потому что мне нужно также печатать графику на той же странице.

Кажется, что проблема не в Java, потому что одно и то же приложение печатает высококачественный текст и графику в Windows. Также кажется, что проблема не в системе CUPS, потому что OpenOffice или Abiword печатает один и тот же текст с одинаковыми шрифтами с очень хорошим качеством (хуже, чем в Windows, но все же хорошо).

Также проблема не со шрифтами: я пробовал шрифт Tahoma из Windows, и он делает то же самое: низкое качество при печати в java / linux.

Проблема не в BCI-хинтинге в X.Org, а отображение на экране выглядит великолепно.

Когда я экспортирую любой документ из OpenOffice в PDF и печатаю этот PDF, я получаю тот же эффект - уродливые не намекающие шрифты на бумаге. Если тот же документ напечатан из Office, все в порядке.

Я пробовал разные Linux (KUbuntu 10.04, Puppy 2, Puppy 4.3.1), и я получил тот же эффект на любом Linux.

Возможно, проблема в Ghostscript, у меня есть версия 9.x на Puppy и все та же. Или также я думаю, что может быть проблема с растеризатором CUPS ('rastertoepson' или 'foomatic-rip').

Это пример вывода (извините за "мобильное" качество фото):

Я просто понятия не имею, что происходит, помогите мне, пожалуйста.

- П.С. Мое окончательное решение - использовать класс с открытым исходным кодом ESCPrinter.java, добавив к нему возможность печати изображений в соответствии с документацией Epson.

Ответы на вопрос(3)

Ваш ответ на вопрос