2

私が持っている一連のPDFファイルにある程度の双方向性を追加したいと考えており、PDFドキュメントをWebページに埋め込み、タッチターゲットをオーバーレイしてそれらの上にポップを作成したいと考えています。

これを実現するための最良の方法は何でしょうか?私はMozillaのpdf.jsを簡単に調べましたが、それはPDFリーダーをフルに活用することに重点を置いており、タブレットでのパフォーマンスが低下しています。

私を助けることができる信頼できるPDFからHTMLへのライブラリ/コンバーターはありますか?PDFはかなり基本的なものです。多かれ少なかれ、グリッド内の一連の画像(PDFで個別に選択可能)。

現時点では、PDFをPhotoshopで開き、スライスしてからHTMLテーブルとしてエクスポートしていますが、もう少し簡単な方法が必要です。

4

3 に答える 3

7

サーバー側のソリューションを回避する方法がわかりません。これが、ImageMagickを使用してPHPでそれを行う方法です。

<?php
$someFile = $_GET['pdf'];
try
{
    // Saving every page of a PDF separately as a JPG thumbnail
    $images = new Imagick($someFile);
    foreach($images as $i=>$image) {
        $desiredWidth = 1024;
        $image->thumbnailImage($desiredWidth,0);
        // Save the file to disk
        //$image->writeImage("page".$i.".jpg");
        // Or display it from this script:
        header('Content-Type: image/jpg');
        echo $image;
    }
    $images->clear();
}
catch(Exception $e)
{
    echo $e->getMessage();
}
?>

PDFが単一のページである場合、そのスクリプトは単一のファイルを作成するだけです。または、$ imageをエコーすると、そのページがJPG(またはPNGなど)として表示されます。次に、スクリプトをIMGとして含めることにより、必要に応じてHTMLをマークアップできます。

<img src="myscript.php?pdf=somefile.pdf"/>

これで、PDFの周囲に必要なHTMLを画像として含めることができます。

于 2012-11-22T18:29:01.917 に答える
1

私は数年前にブラウザでPDFを表示するためにPDFWebViewer.NETと呼ばれる商用ソリューションを実装しました。サーバー側の画像レンダリング(.NET)を使用し、HTMLとjavascriptのクライアント側のみを使用します。

プラグインなしでブラウザでPDFを表示できるのと同じくらい近いと思います。すべてHTMLであるため、ページをdivでオーバーレイし、javascriptを使用してアクションをフックすることができます。実際、それが製品がPDFドキュメント内のリンクをレンダリングする方法です。

これは、相対的な配置を使用することで、ドキュメントをパンしている間、リンクが正しい場所にとどまるようにすることができるため、非常にうまく機能します。

プロジェクトは最近オープンソースになりましたが、それでも商用コンポーネントに依存しています。それをオープンソースのPDFコンポーネントに置き換えるのはそれほど手間がかからないはずです。

プロジェクトはcodeplexでホストされています。PDFWebViewer 1は第1世代であり、WebViewer2は最新バージョンです。

于 2012-11-27T14:16:42.350 に答える
0

wkhtmltopdfを使用することをお勧めします。「画面のスナップショット」(簡単な説明)を撮ることで、PDF形式に変換されたオンザフライのWebコンテンツを基本的に操作できます。たとえば、他のWebサイトと同じように、独自のhtmlテンプレートを作成して、カスタムデータを入力することができます。たとえば、請求書を生成するために使用できます。私は今それを数ヶ月間、そして何の問題もなく使用しています。

Webkitレンダリングエンジンとqtを使用してhtmlをpdfに変換するシンプルなシェルユーティリティ。そして、そのオープンソースを調達します!

例:

wkhtmltopdf www.myhomepage.com myhomepage.pdf
于 2012-11-22T12:29:24.740 に答える