私はpdfジェネレータを作成しようとしていますが、私はほとんどそこにいますが、フォームフィールドを更新する最後のステップを理解することはできません。PyPDF2でフィールドを更新するには
私は、Python 3.6
最初のステップは、(うちが、彼らはすべての非常によく似ているものの、多くのであり、それらはすべて同じフォームフィールドを持つ)PDFをダウンロードすることであると、Windows環境でPyPDF2を使用しています。次のコードは、pdfを開き、新しいpdfを作成します。私の信念は、フォームフィールドの辞書を更新し、その辞書を新しいファイルに書き込むと、それが私が望む変更を行うということです。問題は、更新された辞書をどのように効力を発するかを考え出すことができないことです。
pdf = open(file, 'rb')
flObj = PdfFileReader(pdf)
flObj.decrypt(password)
dict = flObj.getFormTextFields()
writer = PdfFileWriter()
outputstream = open(my_file, 'wb')
dict['DB_Code'] = '2809785' #as an example
for i in range(flObj.getNumPages()):
writer.addPage(flObj.getPage(i))
writer.write(outputstream)
outputstream.close()
getFormTextFields関数によって返された辞書は、それが適用されるページを与えるものではありませんが、私は(フィールドが4に広がっているupdatePageFormFieldValues(ページ、フィールド)があることPyPDF2のdocumentationで見ることができますpdfのページはいつも)、私はこれをどのように適用するかについてはあまりよく分かりません。
私はthisのような他の多くの質問や解決策を見てきましたが、私のニーズに合っているとは感じません。
ありがとうございます。