1

Ghostscript を使用して、検索可能な PDF をイメージ PDF に変換し、次のようなコマンド ラインを使用してイメージング ツールキットを使用して表示できるようにしています。

gswin32 -o c:\temp\output%d.png -r300 -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -dDOINTERPOLATE -dSAFER -sDEVICE=png16m c:\temp\test.pdf

-dDOPDFMARKS コマンド ライン パラメーターを追加すると、注釈テキストではなく注釈があることを示す注釈マークがレンダリングされます。

Ghostscript で注釈テキストをレンダリングする方法を知っている人はいますか? 私は運なしでそれから人生をグーグルで検索しました。

4

2 に答える 2

3

可能ですが、ハッキーになります。

Ghostscript は、オープン ソースの PostScript インタープリターです。PDF は、あらかじめ定義された特別な辞書を使用するポストスクリプト ファイルです。Ghostscript 8.62 以前では、ディクショナリはディレクトリ /lib にポストスクリプト テキスト ファイルとして配置されています。/lib の内部には pdf_draw.ps ファイルがあり、これを使用して PDF を .png ファイルで表示されるものにレンダリングします。pdf_draw.ps の中には /drawidget の定義があり、注釈を表す小さな記号を描画します。コード内の彼の場所では、注釈全体が利用可能ですが、それは使用されていません。

簡単なデモンストレーションとしてjust after the /drawwidget { %...、/drawwidget 行のすぐ下 ( ) に示す 2 行を追加し、コンソールで gswin32c を使用して gswin32 を実行します。これにより、PDF がコンソール ウィンドウに表示されるときに 2 行が表示されます。

/drawwidget { % <scalefactor> <annot> drawwidget -
    dup   /Contents known {dup /Contents get  == } if 
    dup   /T known { dup /T get  == } if 

出力

(This is a test sticky note)
(Laurie Shufeldt)

注意が必要なのは、注釈をどうするかを定義することです。これが、注釈が表示されない理由です。

この場合、1 つの方法として、脚注参照をウィジェットの上に配置し、ページの下部に脚注を配置してテキストを書式設定することが考えられます。これにより、スティッキーの意図が理解できます。

別の方法として、付箋をアクロバットで展開したときのように配置した画像にすることもできますが、これでは付箋の下のコンテンツが隠れてしまいます。

実装がどれほどハックになるかは、実装にどれだけの労力が費やされたかによって異なります。編集pdf_draw.psは非常にハックですが、すばやく簡単です。ハックを独自のファイルに入れ、コマンドラインの一部として呼び出すことができるはずです。ヘッダーへの変更が機能する場合は、古いバージョンだけでなく、現在のバージョンの Ghostscript でも機能するはずです。

許容される付箋の数と脚注の固定位置を事前に定義すると、脚注の配置が容易になります。スティッキーに非常に長いテキストが含まれる場合、テキストには改行を許可する特別な書式を設定する必要があります。改行がないことを前提とした短いテキストは、プログラムが容易になります。

おそらく、付箋からデータを抽出してデータベースに入れたいだけでしょう。その場合、上記のコードは必要なものに近いものです。

于 2013-03-09T19:55:14.130 に答える
2

あなたの PDF ファイルを見ないと断定できませんが、いくつかの理由が考えられます。注釈が閉じている可能性があります。つまり、PDF ファイルを開いたときに何も表示されません。外観ストリームがない場合があります。Ghostscript は、すべての注釈タイプの外観ストリームを作成していません。

アップデート

提供されているPDF サンプルには 2 つの注釈が含まれています。1 つ目は「popup」注釈です。2 つ目はテキスト注釈です。

ポップアップ アノテーションは、開いたり閉じたり、移動したりできるため、基本的にインタラクティブです。ただし、Ghostscript はインタラクティブな要素をサポートしていません。したがって、ポップアップのアイコンは表示されますが、関連するテキスト注釈は表示されません。

現在、このテキストを Ghostscript でレンダリングする方法はありません。

于 2013-03-07T09:09:36.880 に答える