Pythonライブラリ「PDFrw」は、フィールドをクリックするまで表示されないままの注釈に書き込みます

tomatoeshift

PDFドキュメントの注釈に情報を書き込むために、この記事の指示従っています。

前述の記事のスクリプトは機能します。ただし、スクリプトが実行されて出力ファイルが開かれた後は、フィールドは非表示のままになります。注釈をクリックすると、スクリプトから追加されたテキストが表示されます。ただし、その後、ドキュメント内の他の場所をクリックすると、スクリプトのテキストが消えます。

フィールドが入力されたことをPDFリーダーに通知するために、トリガーする必要があるある種のフラグはありますか?

現在のスクリプトの出力例


編集:

記事に記載されているスクリプトは、おそらく実際には正しくありません。

編集されていないPDFの最初の注釈読むと、次のようになります。

{'/T': '(business_name_1)', '/AA': {'/F': (113, 0)}, '/MK': {}, '/F': '4', '/Rect': ['77.433', '639.425', '538.174', '663.305'], '/Type': '/Annot', '/FT': '/Tx', '/AP': {'/N': (12, 0)}, '/DA': '(/Helv 0 Tf 1 1 1 rg)', '/Subtype': '/Widget', '/TU': '([Business Name])', '/Q': '1', '/P': (11, 0)}

PDFリーダーを使用してフィールドに手動で入力して保存し、その後そのPDFファイルを読み取ると、'/V':属性が前のコードに追加されます。つまり、最初の注釈は次のコードです。

{'/V': '(Bostata)', '/T': '(business_name_1)', '/AA': {'/F': (113, 0)}, '/MK': {}, '/F': '4', '/Rect': ['77.433', '639.425', '538.174', '663.305'], '/Type': '/Annot', '/FT': '/Tx', '/AP': {'/N': (12, 0)}, '/DA': '(/Helv 0 Tf 1 1 1 rg)', '/Subtype': '/Widget', '/TU': '([Business Name])', '/Q': '1', '/P': (11, 0)}

ただし、スクリプトが注釈に値を追加した後、大量のデータも追加されます(10,000以上の文字なので、ここに貼り付けるつもりはありません)。

誰かがこの記事で与えられたスクリプトのエラーを見つけてください


EDIT2:

ここで私は部分的な答えを見つけました。

コードを次のように変更します。

annotation.update( pdfrw.PdfDict(AP=data_dict[key], V=data_dict[key]) )

アドビリーダーでグーグルクロームでPDFを開くと、正常に動作します。そして、PDF-XChangeでファイルを開くと、正常に動作します。

ただし、Windows10マシンにインストールされているAdobeacrobateでPDFファイルを開くと、フィールドが空であるという同じ問題が発生します。

ゾーイ

/ NeedAppearancesタグをTrueに設定する必要があります。

これをチェックしてください-https ://github.com/pmaupin/pdfrw/issues/84#issuecomment-463493521

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

サーバーとクライアントの両方でブロックすることなく、サーバーでリアルタイムに書き込まれているアップロードされたファイルのファイルサイズを読み取ってエコーする方法は?

分類Dev

書き込みエラーは、PowerShellコアのファイルにリダイレクトするときに奇妙な文字を表示します

分類Dev

読み取りパブリック書き込みプライベート変数を迅速に作成するさまざまな方法はありますか?

分類Dev

スナップアプリを開くと、「共有ライブラリの読み込み中にエラーが発生しました」および「共有オブジェクトファイルを開くことができません:そのようなファイルまたはディレクトリはありません」と表示されます

分類Dev

Python dict を csv ファイルに書き込むときに、この「フィールドがフィールド名にありません」というエラーが表示されるのはなぜですか?

分類Dev

Linuxでバックグラウンド処理されているのに、Pythonスクリプトがファイルに書き込まれないのはなぜですか?

分類Dev

Pythonクラスのメソッドに、サブクラスで定義された型の注釈を付けることはできますか?

分類Dev

qt activexExcelの読み取り/書き込みコードの書き込み中にExcelがインストールされていない場合のアプリケーションのクラッシュを防止します

分類Dev

GoogleドライブRESTAPI v3、再開可能なアップロード:リソース本体には、直接書き込みできないフィールドが含まれています

分類Dev

ext4としてフォーマットされた外付けUSB2.0ドライブは、ファイルの読み取りまたは書き込みが行われない場合、定期的に「フリーズ」します。

分類Dev

Pythonスクリプトはファイルに書き込まずにバックグラウンドで実行されますか?

分類Dev

ヘッダーファイルをインクルードしようとすると、「そのようなファイルまたはディレクトリはありません」というエラーが表示されるのはなぜですか?

分類Dev

反応ネイティブには、アプリが使用されていないとき、またはバックグラウンドモードで実行されている関数ライフサイクルがありますか?

分類Dev

Drive APIv3を使用してGoogleドライブファイルを更新できません-リソース本体に直接書き込みできないフィールドが含まれています

分類Dev

注釈プロセッサに注釈付きオブジェクトからクラスのフィールドを取得します

分類Dev

カメラから直接ファイルをアップロードし、書き込みまたは読み取りのアクセス許可なしでマルチパートとして送信するにはどうすればよいですか?

分類Dev

イオン選択の値を取得する方法は?フィールドをクリックしたときにのみ値が表示されます

分類Dev

python gspreadライブラリは、「sheet1」というラベルの付いたワークシートにのみ書き込みます

分類Dev

カルーサル画像スライダーでは、ドットをクリックしたときにのみ写真が表示されます

分類Dev

ファイルを書き込まないネイティブfsライブラリに反応する

分類Dev

ハードドライブにすでに8メガバイトを超えるキャッシュがある場合、Windowsハードディスクの書き込みキャッシュはどのように使用されますか?

分類Dev

フラットバッファリーダーによって区別され、オプションで書き込まれる類似フィールドはどのようになっていますか?

分類Dev

サブプロセスはバックグラウンドで実行され、出力を1行ずつファイルに書き込みます

分類Dev

Excel には、すべてのシートのリストを表示する組み込みのグラフィカルな方法があり、シートをクリックすることができますか、それとも自分で行う必要がありますか。

分類Dev

パブリックフィールドとメソッドにJavaDocの説明/注釈を提供できなかった場合、IntelliJに警告を表示するにはどうすればよいですか?

分類Dev

jQuery:サイドナビゲーションのクリックされたタブを覚えて、新しくページが読み込まれたときに色付き(アクティブ)にするにはどうすればよいですか?

分類Dev

春のブートで@ModelAttributeのグローバル日付形式を上書きできるクラスフィールドに注釈を付けるものはありますか?

分類Dev

ブラウザにリンクやダウンロードの進行状況などが表示される場所にメッセージを書き込むことはできますか?

分類Dev

ルーム - 私たちは、スキーマをエクスポートすることはできませんので、スキーマのエクスポートディレクトリは、注釈プロセッサに提供されていません

Related 関連記事

  1. 1

    サーバーとクライアントの両方でブロックすることなく、サーバーでリアルタイムに書き込まれているアップロードされたファイルのファイルサイズを読み取ってエコーする方法は?

  2. 2

    書き込みエラーは、PowerShellコアのファイルにリダイレクトするときに奇妙な文字を表示します

  3. 3

    読み取りパブリック書き込みプライベート変数を迅速に作成するさまざまな方法はありますか?

  4. 4

    スナップアプリを開くと、「共有ライブラリの読み込み中にエラーが発生しました」および「共有オブジェクトファイルを開くことができません:そのようなファイルまたはディレクトリはありません」と表示されます

  5. 5

    Python dict を csv ファイルに書き込むときに、この「フィールドがフィールド名にありません」というエラーが表示されるのはなぜですか?

  6. 6

    Linuxでバックグラウンド処理されているのに、Pythonスクリプトがファイルに書き込まれないのはなぜですか?

  7. 7

    Pythonクラスのメソッドに、サブクラスで定義された型の注釈を付けることはできますか?

  8. 8

    qt activexExcelの読み取り/書き込みコードの書き込み中にExcelがインストールされていない場合のアプリケーションのクラッシュを防止します

  9. 9

    GoogleドライブRESTAPI v3、再開可能なアップロード:リソース本体には、直接書き込みできないフィールドが含まれています

  10. 10

    ext4としてフォーマットされた外付けUSB2.0ドライブは、ファイルの読み取りまたは書き込みが行われない場合、定期的に「フリーズ」します。

  11. 11

    Pythonスクリプトはファイルに書き込まずにバックグラウンドで実行されますか?

  12. 12

    ヘッダーファイルをインクルードしようとすると、「そのようなファイルまたはディレクトリはありません」というエラーが表示されるのはなぜですか?

  13. 13

    反応ネイティブには、アプリが使用されていないとき、またはバックグラウンドモードで実行されている関数ライフサイクルがありますか?

  14. 14

    Drive APIv3を使用してGoogleドライブファイルを更新できません-リソース本体に直接書き込みできないフィールドが含まれています

  15. 15

    注釈プロセッサに注釈付きオブジェクトからクラスのフィールドを取得します

  16. 16

    カメラから直接ファイルをアップロードし、書き込みまたは読み取りのアクセス許可なしでマルチパートとして送信するにはどうすればよいですか?

  17. 17

    イオン選択の値を取得する方法は?フィールドをクリックしたときにのみ値が表示されます

  18. 18

    python gspreadライブラリは、「sheet1」というラベルの付いたワークシートにのみ書き込みます

  19. 19

    カルーサル画像スライダーでは、ドットをクリックしたときにのみ写真が表示されます

  20. 20

    ファイルを書き込まないネイティブfsライブラリに反応する

  21. 21

    ハードドライブにすでに8メガバイトを超えるキャッシュがある場合、Windowsハードディスクの書き込みキャッシュはどのように使用されますか?

  22. 22

    フラットバッファリーダーによって区別され、オプションで書き込まれる類似フィールドはどのようになっていますか?

  23. 23

    サブプロセスはバックグラウンドで実行され、出力を1行ずつファイルに書き込みます

  24. 24

    Excel には、すべてのシートのリストを表示する組み込みのグラフィカルな方法があり、シートをクリックすることができますか、それとも自分で行う必要がありますか。

  25. 25

    パブリックフィールドとメソッドにJavaDocの説明/注釈を提供できなかった場合、IntelliJに警告を表示するにはどうすればよいですか?

  26. 26

    jQuery:サイドナビゲーションのクリックされたタブを覚えて、新しくページが読み込まれたときに色付き(アクティブ)にするにはどうすればよいですか?

  27. 27

    春のブートで@ModelAttributeのグローバル日付形式を上書きできるクラスフィールドに注釈を付けるものはありますか?

  28. 28

    ブラウザにリンクやダウンロードの進行状況などが表示される場所にメッセージを書き込むことはできますか?

  29. 29

    ルーム - 私たちは、スキーマをエクスポートすることはできませんので、スキーマのエクスポートディレクトリは、注釈プロセッサに提供されていません

ホットタグ

アーカイブ