DLeoxys DLeoxys
关注数: 11 粉丝数: 40 发帖数: 3,844 关注贴吧数: 44
pdf相关 您好,我借助chatgpt写了一段代码,目的是将一个pdf的左右两边拆开。 原pdf是一个词典,文字识别问题导致左半部分和右半部分中同一高度的内容被当成了一行。也就是说,左半部分的第一行和右半部分的第一行被当成了一行,尽管他们中间隔了一个分栏的空间。 以下是代码,这段代码会将原pdf的左半部分提取出来,并复制一遍,然后附在了左半部分。左半部分复制了一遍,形如aabbcc,而不是左右左右交替,形如AaBbCc。麻烦您看下。 命名已经经过筛查没有问题,现在主要是语法。 import PyPDF2 # 打开原始PDF文件 with open('te.pdf', 'rb') as pdf_file: pdf_reader = PyPDF2.PdfReader(pdf_file) # 创建一个新的PDF写入对象 pdf_writer = PyPDF2.PdfWriter() # 遍历每一页并将其裁剪成两半 for page_num in range(len(pdf_reader.pages)): page = pdf_reader.pages[page_num] mediabox = page.mediabox half_width = mediabox.width / 2 # 使用属性而不是方法 # 创建一个新的页面,将其宽度设置为一半 left_half = PyPDF2.PageObject.create_blank_page(width=half_width, height=mediabox.height) # 去掉小括号 left_half.add_transformation(PyPDF2.Transformation().translate(0, 0)) left_half.merge_page(page, expand=False) right_half = PyPDF2.PageObject.create_blank_page(width=half_width, height=mediabox.height) # 去掉小括号 right_half.add_transformation(PyPDF2.Transformation().translate(-half_width, 0)) right_half.merge_page(page, expand=False) # 添加左半部分和右半部分到新的PDF文件中 pdf_writer.add_page(left_half) pdf_writer.add_page(right_half) # 将结果写入新的PDF with open('output.pdf', 'wb') as output_file: pdf_writer.write(output_file) 谢谢谢谢
1 下一页