ページに分割された大きなテーブルを含む PDF があるため、ページごとのテーブルを大きなページの大きなテーブルに結合する必要があります。
これは PyPDF2 または別のライブラリで可能ですか?
乾杯
ページに分割された大きなテーブルを含む PDF があるため、ページごとのテーブルを大きなページの大きなテーブルに結合する必要があります。
これは PyPDF2 または別のライブラリで可能ですか?
乾杯
似たようなことに取り組んでいるだけで、入力pdfが必要で、構成ファイルを介して単一ページの最終パターンを設定できます。PyPDF2での実装ですが、一部の pdf ファイルでまだ問題があります (さらに深く掘り下げる必要があります)。 https://github.com/Lageos/pdf-stitcher
原則として、ページを別のページに追加すると、次のように機能します。
import PyPDF2
with open('input.pdf', 'rb') as input_file:
# load input pdf
input_pdf = PyPDF2.PdfFileReader(input_file)
# start new PyPDF2 PageObject
output_pdf = input_pdf.getPage(page_number)
# get second page PyPDF2 PageObject
second_pdf = input_pdf.getPage(second_page_number)
# dimensions for offset from loaded page (adding it to the right)
offset_x = output_pdf.mediaBox[2]
offset_y = 0
# add second page to first one
output_pdf.mergeTranslatedPage(second_pdf, offset_x, offset_y, expand=True)
# write finished pdf
with open('output.pdf', 'wb') as out_file:
write_pdf = PyPDF2.PdfFileWriter()
write_pdf.addPage(output_pdf)
write_pdf.write(out_file)
下にページを追加するには、offset_y
. から金額を取得できますoffset_y = first_pdf.mediaBox[3]
。
私の理解では、これは非常に難しいことです。こことここを参照してください。
問題は、テーブルが pdf でうまく表現されていないように思われますが、単に絶対配置された行から作成されているだけです (上記の最初のリンクを参照)。
考えられる回避策は次の 2 つです (解決できるかどうかは不明です)。
編集
別のベクター パッケージである libre office draw をご覧ください。その中でpdfを開いたところ、pdf構造の一部が保持され、個々の要素が編集されているようです。
EDIT 2役立つかもしれないpdftablesを 見てください。
PDFTables は、PDF ファイルからテーブルを抽出するのに役立ちます。
私はそれを試していません...私がそれを機能させることができるかどうかを確認するには、少し時間がかかるかもしれません.