1

いくつかの MySQL スクリプトを生成した後、すべてを完全に整列させて美しくするために、awk+printf で調整するいくつかの出力テーブルを取得します。しかし、他の人に送信された場合、ファイルが Windows、Blackberry、または Android で開かれると、ファイルがぎこちなくなり、位置がずれているように見えます。

誰もが適切に読めると確信できるフォーマットのヒントはありますか (pdf や画像は別として)。現在の形式は次のとおりです。

$ file sample.txt 
sample.txt: UTF-8 Unicode text

ありがとう。

4

5 に答える 5

1

コメントありがとうございます。私の解決策は次のとおりです。

  1. txt2htmを試して、元のコード(つまり、データテーブル)がどのように変換されているかを確認しました。
  2. 最も簡単な方法を残すために、コードを少し配置しました。
  3. 私のtxtファイルはすでに「素敵」なので、他の人と共有する必要のあるすべてのtxtファイルの最初と最後に次のコードを挿入するだけです。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    </head>
    <body>
    <pre>
    
    HERE GOES MY FIXED WIDTH TABLE
    
    </pre>
    </body>
    </html>
    

ここでの重要なタグは<pre>、文字通りです。

<pre>タグはフォーマット済みのテキストを定義します。<pre>要素内のテキストは固定幅フォント(通常はCourier)で表示され、スペースと改行の両方を保持します。」

于 2013-01-05T11:16:07.823 に答える
1

同僚の技術的な知識にもよりますが、ほとんどのオフィスで比較的一般的な形式であるため、CSV を使用することをお勧めします。それ以外の場合は、はい、html テーブルは最適な方法です。

データの構造がどのようなものかはわかりませんが、カンマ区切りの形式にするか、Perl/Python スクリプトを使用してこれを行うことができる場合があります。

于 2013-01-04T21:59:54.373 に答える
1

最も単純で最も普遍的な書式付きテキスト オプションは HTML です。HTML 2.0 または 3.2 (テーブル用) に固執すると、クライアントが誤解する可能性が最も低くなります。

于 2013-01-04T21:56:56.240 に答える
1

端末セッションに典型的な固定幅フォント (courier など) を使用しているように聞こえますが、データを適切に並べるために依存しています。そして、それらのインスタンスでは正常に機能します。また、ユーザーがデフォルトで固定幅フォントを使用するようにメール リーダーを設定している場合。

問題は、プロポーショナル スペース文字を使用する GUI ツール (Outlook や Web メール クライアントなど) を使用する人にメッセージを送信することです。 (たとえば)すると、醜いものが得られます。

これが企業プロジェクト用で、サポートされるメール リーダーの範囲が限られている場合は、レポートを「ラップ」して固定幅フォントを指定できるはずです。企業組織であっても、これはまだ完全ではない可能性があり、ユーザーベースがより一般的である場合、全員が完全にフォーマットされたレポートを確実に入手することはより困難になります. 「xxx メール リーダーを使用するときに表示される最適な書式設定」などの条件を追加する必要があるかもしれません。

ここからhttps://webmasters.stackexchange.com/に投稿して、正しいレンダリングの可能性が高い単純な HTML フォーマットについてアドバイスを求めることができます。

IHTH

于 2013-01-04T21:56:16.670 に答える
1

タブ文字 (ASCII 9) を使用する場合、表はプロポーショナル フォントでも整列する必要があります。完全ではありませんが、ほとんどのプログラムで正しく表示されます。printf でタブ文字にする場合は と指定します\t

于 2013-01-04T22:06:29.137 に答える