問題タブ [pdfrw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1780 参照

python - Pythonで別のPDF内にPDFファイルを図として挿入するにはどうすればよいですか?

Python で PDF 形式のレポートを自動的に生成しようとしています。レポートに必要な図がありますが、現在、図は pdf として保存されています。数値を別のものとして保存することはオプションですが、私がやろうとしていることには理想的ではありません。pdfrw と reportlab を使用してページを 1 つの pdf から新しい pdf のページに変える例 ( http://code.google.com/p/pdfrw/wiki/ExampleTools ) を見つけましたが、そうしたくない私の新しいpdfのページ全体、ページのセクションを占める図だけです。以前に pdfrw を使用したことがないため、Canvas メソッドとその完全な機能についてはよくわかりません。

0 投票する
1 に答える
4831 参照

python - このスクリプトで bbox は何を参照していますか?

私は Python が初めてで、既存のスクリプトを把握しようとしています。この例は、次のように pdfrw から提供されます: http://code.google.com/p/pdfrw/wiki/ExampleTools

「派手なプリンターやAcrobatの完全なコピーを備えたプリンターは、小さなPDFを簡単に小さな小冊子に変えることができます(たとえば、4つのレターサイズのページを1つの11インチx 17インチに印刷します).

ただし、これは、担当者がハードウェアとソフトウェアの操作方法を知っていることなど、いくつかのことを前提としています。booklet.py を使用すると、PDF を書式設定済みの小冊子に変換して、混乱を招く可能性を減らすことができます:"

手順は次のとおりです。

  • 関数はページのループを開始します
  • ??? を行う変数「shift_right」が宣言されています。(メタデータ用だと思いますか?)
  • メタデータにのみ役立つ変数「もの」が宣言されています(私は思う)
  • x は、BBox リストの 3 番目のインデックスによってインクリメントされます (このリストは何ですか? いつ作成されたのですか?)
  • y は、y と Bbox リストの 3 番目のインデックスの間の大きい方の値に割り当てられます (繰り返しますが、このリストは何を参照していますか?)

私の混乱の中心は、BBox を使用したこれらの 2 つの行と、それらがどのように相互作用して 11x17 のブックレット PDF を作成するかに関するものだと思います。これをクリアできる人に感謝します。

0 投票する
3 に答える
836 参照

python - 「pdfrw」を使用してメタデータを追加するときに、ファイル名を正しくデコード/エンコードする方法は?

PDF メタデータを PDF のリストに追加するスクリプトを作成しています。

私の問題は、名前に特定の文字が含まれる PDF を処理することです。私が試した例では、名前に「en ダッシュ」が含まれていましたが、将来的には確信しています (これらのファイル名は制御しません)。 ) 他にも同様の問題があります。

私はpdfrwPython 2.7を使用しています。現在私は持っています:

これは、「en ダッシュ」のないファイルに対しては正常に機能します。「ダッシュ」の付いたファイルは、これを実行したときに変更されたことを示していますが、Adobe Acrobat でメタデータを確認すると、何もありません。

これはある種のエンコーディングの問題だと確信しています。「ダッシュ」が と表示されているのでx\96、cp1252 を使用しているに違いありません。私は Spyder 2.3.1 を使用しており、スクリプトの先頭に# - -coding: utf-8 - - があります。

私はThe Absolute Minimum Every Softward Developer Absolutely, Positively Must Know About Unicode and Character Sets and Pragmatic Unicodeを読み、一般に、入力をデコードし、残りのコードを実行したいことを知っています (上に印刷されていませんが、私は使用しますファイル名を指定してデータベースから情報を抽出し、その情報をフォーマットして、結果の文字列をメタデータに入れたい場合)、再度エンコードします。しかし、私はうまくいくものを理解することができませんでした。

解決策は次のいずれかになると思います。

  1. [最善] エンコーディングの問題を正しく処理します。

  2. サブフォルダーである種のバッチ ファイルを実行して、ファイルの名前をスクリプトが処理できる名前に変更し、最後に名前を逆にします (元のファイル名で終了する必要があります)。

どんな助けにも感謝します!私はうまくいったものを見つけることができませんでした。

0 投票する
1 に答える
3536 参照

python - PDFrw を使用して Python で PDF からデータを抽出する方法

PDFrw を使用して特定の PDF からデータを取得しようとしています (ページの右上にあるものとしましょう)。これを行うためにPDFrwを使用しています。彼らが提供するドキュメンテーションに目を通し(あまり見つけることができませんでした)、彼らがgitに投稿したサンプルコードを見ましたが、やりたいことをするのに十分な情報をまとめて得ることができないようです。PDFrw(または、より良いものがある場合は別のもの)を使用してPDFに入り、特定のテキストを抽出する簡単なプログラムを作成するにはどうすればよいですか。それをhtmlに変換しようと思っていたのですが… その方が簡単でしょうか?例として上記の PDF を見てください。(たとえば) 電圧を取得したいと思います。PDF では 600 w です...これを最も簡単な方法で行うにはどうすればよいですか? これに関する他のスタック オーバーフローの質問は見つかりませんでした。

ありがとう!

0 投票する
2 に答える
1567 参照

pdf - PDF コンテンツのトリミング

課したいpdfがあります。8.5x11 インチのページ、メディア ボックス、クロップ ボックスがあります。隣接するページを結合して、pdf を 17x11 インチのページにしたいと考えています。残念ながら、ほとんどのページのコンテンツは完全にクロップ ボックスの外にあるか、クロップ ボックスにまたがっています。各ページには 1 つのストリームとクロップ ボックスのみを含めることができるため、適用すると、重なっているコンテンツが表示されます。これは悪いです。

DPIを事前に修正するため、pdfをラスタライズしたくありません。したがって、ページを画像としてエクスポートし、画像を追加して (imagemagick)、これらのペアの画像を新しい pdf に埋め込むことは考慮しません。

あとがきに課す問題もありました - 透明度、フォントのラスタライズ、および pdf->ps->pdf 変換中のその他の視覚的な不具合に関する問題です。

答えはスクリプト可能でなければなりません。

これまでのところ、私は試しました:

  • podofo インポジション スクリプト (lua)
  • PyPDF2 (パイソン)
  • ゴーストスクリプト
  • ラテックス

Ghostscript はトリミング ボックスの外側のコンテンツを削除しますか?」という質問は、ghostscript の pdfwrite モジュールが、出力 PDF ファイルを生成するときに、トリミング ボックスに従ってコンテンツをラスタライズおよびトリミングすることを示唆しています。したがって、ghostscript の pdfwrite モジュールを介して自分の pdf をパイプするだけで済みます。残念ながら、これはうまくいきません。

証拠を介してpdfを別のpdfに印刷しようとしたとき、私はあきらめようとしていました。それは完全に機能します - クロップボックス内のテキストとベクター要素はラスタライズされず、クロップボックスの外側の要素は削除されます (またがる要素はまだテストしていません)。品質は高く、解像度 (ページ サイズ) と外観は同じです。実際、メタデータ以外はすべて同じように見えます。

そう:

  • 質問は可能です
  • 答えはすでにある

どうすればアクセスできますか?

pdftopdfこの機能は、カップのバイナリによって提供される可能性があると思います。外部バイナリの呼び出しに問題はありません....しかし、使用方法がわかりませんpdftopdf

編集: test pdf へのリンク。これには、ラスター、ベクター、およびテキスト アイテム (一部は部分的に透明なアイテムによって部分的に遮られています) が含まれており、隣接するページにまたがって隣接しています。この PDF をカップを通して印刷すると、クロップ ボックスの外側のすべてのコンテンツがクロップされるように見えます。ただし、フィルター処理された pdf をinkscape で開くと、トリミングされたテキストを除いて、ページ外のアイテムがトリミングされずに個別にマスクされていることがわかります。

0 投票する
1 に答える
2336 参照

python - PDFrwを使用してPDFから画像を抽出する方法

私はPDFrwその例の1つを使用して、PFDファイル内の唯一の画像を抽出し、その画像をPNGまたはJPEGファイルに保存しています。

コードが難しすぎて理解できません。どのパラメータに渡す必要がありfind_objectsますか?

0 投票する
1 に答える
357 参照

pdf - pdfrw - ページの周りの空白をトリミングする方法

トリミングできるようにするために、pdfrw で未使用 (白) の PDF ページの周囲のスペースを見つけるにはどうすればよいですか? たぶん、すべてのオブジェクトを調べて、ページの境界線に最も近い座標を見つけることができれば...

0 投票する
1 に答える
1552 参照

python-3.x - pdfrw と ReportLab を使用して、既存の PDF にテキストを追加して挿入する

pdfrw と ReportLab を使用して、次のことを行います。

  1. 既存の PDF を開き、x 座標と y 座標に基づいてテキスト行を追加します (ReportLab - drawCentredString(x,y,string) を使用)

  2. 結果の pdf をレポートに挿入します。

これまでのところ、ここからのコードの修正版として私が試したことは次のとおりです。

これは、pdf を開いて新しいものとして保存するだけです (ベイビーステップ)。問題は、次のエラーが発生することです。

洞察をお寄せいただきありがとうございます。

PS同様の質問がここにあることは知っていますが、それは古く、解決策を機能させることができません。