0

誰かがこの問題で私を助けてくれなければ、私の頭は爆発するだろうと感じています:

almos 100.000 レジストリのそれぞれについて、1 組の TIFF イメージ (共通キーによって関連付けられている) を保存しました。そして、キーを受け取って tiff 画像をエコーする PHP スクリプトを作成し、ブラウザーが tiff 画像を返すようにします。

<?php
    // Determine the primary key to relate with the image table
    $numero_registro = $_GET['numero_registro'];

    $imagen = $_GET['imagen'];

    if ($numero_registro != "")
    {
        $con = mysql_connect("localhost","XXXXX","XXXXXX");
        if (!$con)
          {
          die('Problems with db: ' . mysql_error());
          }

        mysql_select_db("XXXXX", $con);

        $result = mysql_query("SELECT img FROM image_table i WHERE i.fk_civil_registry_code = $numero_registro");

        $i = 1;
        while($row = mysql_fetch_array($result) )
        {
            if ( $imagen == $i ) 
            {
                #img is a long blob field
                $ext="tiff";
                header("Content-type: image/{$ext}");
                echo $row['img'];
            }
            $i++;
        }

        mysql_close($con);
    }

?>

これは機能し、ブラウザーによって tiff 画像が表示されます。ただし、これは tiff 画像なので、単独で表示されます (alternaTiff を使用して表示されます)。これが問題ではないことを知るまでは、1 つの画像を印刷する必要があっただけです。しかし今、私の上司は大きな自動両面印刷機を購入し、彼のオフィスに置いたので、(2 ページの) PDF を生成し、両方の画像 (echo $row['img'];) をそれぞれに配置する方法が必要です。 PDF を印刷できるようにします。

誰でも私がそれをするのを手伝ってくれますか?

どうもありがとうございました。

4

3 に答える 3

1

では、各ページのtiff画像で構成される2ページのPDFを生成したいですか?

おそらく、次のリンクが興味深いでしょう。

http://www.fpdf.org/

http://kevin.vanzonneveld.net/techblog/article/php_tiff2pdf/

次に、PDFをブラウザにフラッシュするだけです。

于 2010-01-16T15:24:51.743 に答える
1

PHPで立ち往生していますか?ASP.NET を使用できる場合、私の会社には、AJAX コントロールから TIFF 画像を表示および印刷する一連のツールと、自己印刷 PDF ファイルを生成するコードがあります。後者の場合は、Web 作業を PHP で維持し、N tiff ファイルを取得して単一の印刷可能な PDF を生成する .NET サービスに接続できます。

2 つの tiff 画像を取得して PDF に変換する C# コードは次のようになります。

FileSystemImageSource images = new FileSystemImageSource(pathToTiff1, pathToTiff2);
PdfEncoder encoder = new PdfEncoder();
encoder.CreateSelfPrintingPdf = true;
encoder.Save(outputStream, images, null);
于 2010-01-20T16:06:23.340 に答える
0

pdf ドキュメントの代わりに、 page-break-before css プロパティを持つ html ドキュメントを使用することもできます。例えば試してみてください

<html>
  <head><title>...</title></head>
  <body>
    <div><img src="http://sstatic.net/so/img/logo.png" /></div>
    <div style="page-break-before:always;"><img src="http://sstatic.net/so/img/logo.png" /></div>
  </body>
</html>

次に、ブラウザの印刷プレビューに移動します。

于 2010-01-16T15:40:35.557 に答える