У меня есть веб-сайт, который генерирует некоторые простые табличные данные в виде HTML-таблиц, многие из моих пользователей печатают веб-страницу на лазерном / струйном принтере;однако некоторым нравится печатать на устаревших матричных принтерах (только текст) и в этом заключается проблема.
При передаче печати из веб-браузера на матричный принтер принтер фактически воспринимает данные как «графические»/ изображение и приступает к печати его точка за точкой.
т.е. при печати символа 'C' принтер разрезает его по горизонтали и печатает за 3-4 прохода.
Тот же принтер печатает текст из файла ASCII (скажем, из блокнота) в виде полных символовза один проход, что в 5 раз быстрее и намного тише, чем при печати веб-страницы.
(Даже пробовал «универсальный драйвер только для текста», но в Mozilla Firefox есть ошибка, связанная с тем, что он ничего не печатает поверхэтот конкретный драйвер начиная с версии 2.0 +)
Так есть ли какой-нибудь чистый способ форматирования уже сгенерированного HTML (скажем, метод принимает всю HTML-таблицу в виде строки) и генерирует соответствующий текстовый файл с правильно выровненными столбцами?
Я пытался удалить html-теги, но главная проблема заключается в том, чтобы выполнить хорошее «обертывание» данных ячейки и сохранить целостность данных других ячеек (из той же строки).
Например: ('| 'и' _ 'на самом деле не требуется)
Col1 | Col2 | Colum_Name3 | Col4 |
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1 | this cell | this column | smaller |
| is in three| spans 2 rows | |
| rows | | |
- - - - - - - - - - - - - - - - - - - - - - - -
2 | smaller now| this also | but this|
| | | cell's |
| | | data is |
| | | now |
| | | bigger |
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Не могли бы вы предложить предпочтительный подход?
Я думал об использовании xslt и somehow вывод текста (вместо более распространенного pdf), но рендерер текста Apache FOP действительно сломан и, возможно, забыт в процессе разработки.Коммерческие слишком дороги.