3

私はいくつかの単純な表形式のデータを HTML テーブルとして生成する Web サイトを持っています。私のユーザーの多くは、レーザー/インクジェット プリンターで Web ページを印刷します。ただし、従来のドット マトリックス プリンター (テキストのみ) で印刷することを好む人もいますが、そこに問題があります。

Web ブラウザーからドット マトリックス プリンターに印刷すると、プリンターは実際にデータを「グラフィック」/イメージとして認識し、ドットごとに印刷します。

つまり、文字「C」を印刷する場合、プリンターはそれを水平方向にスライスし、3 ~ 4 パスで印刷します。

同じプリンターは、ASCII ファイル (メモ帳など) からテキストを完全な文字として 1 回のパスで印刷するため、Web ページを印刷する場合よりも 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 を使用してテキストを出力することを考えましたが (より一般的な pdf の代わりに)、Apache FOP のテキスト レンダラーは本当に壊れており、開発パスで忘れられている可能性があります。業務用は高すぎる。

4

1 に答える 1

1

これを行うことができるテキスト ブラウザがあります: たとえば、Lynx: http://lynx.isc.org/および Elinks: http://elinks.or.cz/

編集: おっと、Lynx はテーブルをサポートしていませんが、Elinks はサポートしています。

于 2010-05-14T15:45:21.977 に答える