2

HTMLをPostScriptに変換するためにhtml2psPerlスクリプトを使用しています。私はそれが最善の解決策ではないことを知っていますが、これはここの開発者がしたことです(それは私の時代の前でした)。

次に、各HTMLを表示し、変換された各PostScriptファイルに表示する必要があるバーコードフォントのサポートを実装する必要があります。これはどうやるんですか?

4

5 に答える 5

6

OK、フォントのみで動作します(必要に応じて画像はありません)。方法は次のとおりです。

  • バーコード フォントを用意します (私はバーコードについて何も知らないので、Code 128フリーウェアの TrueType フォントを使用しました。ダウンロード リンク)。
  • Postcript (type 1) フォントにして、拡張子を.pfa. 私はfontforgeを使用してこの変換を実行します。たとえば、ttf フォントを開き、[ファイル] > [フォントの生成] を選択し、"PS Type 1 (ASCII)" を指定して、警告を無視します。
  • これで、PS Type 1 形式のフォント「Code128bWin」が という名前のファイルに保存されましCode128bWin.pfaた。
  • 最小限のテスト ドキュメントを作成します ( test.html):
<html>
 <head></head>
 <body>
  <p>This is a test:</p>
  <h4>BARCODE</h4>
 </body>
</html>
  • 構成ファイルを作成します (これを理解するのに時間がかかりました。HTML にインライン CSS として配置することはできません。html2ps の構成ファイルである必要があります)。したがって、次の名前のファイルを作成しますconfig
H4 { font-family: Code128bWin }

@html2ps {
  font {
    Code128bWin {
      names: "Code128bWin";
      files: "Code128bWin.pfa";
    }
  }
}
  • そのため、タグ内のテキスト<h4>は codebar フォントでレンダリングされます。次のコマンドを実行して、Postscript 出力を生成します。html2ps -f config test.html > test.ps

コメント大歓迎!

補足として、これは明らかに醜いですが、既存のプロセスにハックする必要がある場合があるため、OPを判断しません。このソリューションはすべての制約を満たしていると思います:)

于 2010-03-06T16:42:39.103 に答える
3

コメントに見られる場合はどうなりますか:

  1. <img />-tagを使用して html に埋め込まれた、以前に作成された画像は使用できません。
  2. バーコードを作成するために追加のフォントを含めることはできません (機能しません)。

#1へ: 画像を保存できないので、できませんか? これが理由である場合は、barcodesinc などのオンライン コード クリエーターを使用してみてください。

http://www.barcodesinc.com/generator/image.php?code=Hello World&style=197&type=C128B&width=200&height=50&xres=1&font=3

例:

バーコード2

外部のサービス プロバイダーに頼れない場合は、Web 上で無料で利用できる無料のクラスがあります。たとえば、Barcode Generatorなどです。Web サーバーにデプロイし、<img src="http://myserver/myscript.php?code=HelloWorld"/>このスクリプトを指すようにタグを使用します。html2ps はインライン イメージのレンダリングをサポートしています。

http://www.terryburton.co.uk/barcodewriter/では、オープン ソースの PostScript バーコード ライターも利用できます。html2ps を使用した後、ps ファイルを操作して、barcodewriter ディレクティブを埋め込むことができます。

50 450 moveto (978-1-86074-271) (includetext) /isbn /uk.co.terryburton.bwipp findresource exec

#2へ: エラー メッセージを教えてください。どの段階で問題がありますか?

うーん... #3:html + cssのみを使用(他のすべてが失敗した場合にのみ使用します)

バーコードは、単純な css と span-elements を使用して作成できます。

        <style>
        .barcode {
            border:5px solid white;
            background:white;
            width:310px;
            text-align:center;

        }
        .ns{
            border-left:2px solid white;
            height:30;
        }
        .nb{
            border-left:2px solid black;
            height:30;
        }
        .ws{
            border-left:5px solid white;
            height:30;
        }
        .wb{
            border-left:5px solid black;
            height:30;
        }

    </style>
<div class='barcode' id='bcx2_bc' ><span class='nb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='wb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='wb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ws'></span><span class='wb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ws'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ws'></span><span class='nb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='wb'></span><span class='ns'></span><span class='nb'></span><span class='ns'></span><br>TEST8052</div>

例:

バーコード http://img689.imageshack.us/img689/4360/barcodeg.jpg

このコードは、同じく php クラスであるHTML Bar Codesを使用して作成されました。あなたはどちらかできます

  • これをコマンド ライン インターフェイス経由で呼び出し、すべての html ページ (動的バーコード用) の通常の html に埋め込みます。
  • cli/server を使用して一度コードを作成し、ハードコードされた html に配置します (バーコードがすべての html ページで変更されない場合にのみ適しています)。

それ以外の可能性は想像できません。

于 2010-03-06T14:00:01.780 に答える
2

うーん、そうですね、html2psユーザーガイドには「フォントブロック」という名前のセクションがあり、次のように書かれています。

現在、html2psは、Times、New-Century-Schoolbook、Helvetica、Helvetica-Narrow、Palatino、Avantgarde、Bookman、およびCourierのフォントを認識します。

次に、html2psで使用する新しいフォントタイプを定義する方法について説明します。おそらくこれは役立つでしょうか?

于 2010-02-26T14:16:51.857 に答える
2

フォントで構成されたバーコードはひどいハックだと思います。PostScript を適切に生成することをお勧めします: http://www.terryburton.co.uk/barcodewriter/

于 2010-02-25T15:53:13.710 に答える
1

おそらく、html2ps にバーコード サポートを追加する必要はなく、必要なバーコードの画像を含む html ページを生成するだけで済みます。

これを実現するには、このようなプロジェクトを使用できます:バーコードジェネレーターまたはGNU バーコード

GNUバーコードを使用すると、これが私がすることです:

  1. 必要なバーコードを EPS 形式で生成します。
  2. imagemagick を使用して、PNG などの HTML に適した形式に変換します。
  3. 生成された画像を html ページで使用します。

これらはすべて簡単に実行/スクリプト化できるように思えます。必要に応じて、その方向でさらに支援を提供できます。

于 2010-03-05T11:56:50.010 に答える