请帮我把图片中的代码提取出来
本帖最后由 不二如是 于 2024-4-10 10:48 编辑{:10_256:}{:10_256:}{:10_256:}很容易,跟着手敲
完成再看这里:
import os
import shutil
from PyPDF2 import PdfFileReader, PdfFileWriter
def compress_pdf(input_path, output_path, max_size):
input_file = open(input_path, 'rb')
input_pdf = PdfFileReader(input_file)
output_pdf = PdfFileWriter()
for i in range(input_pdf.getNumPages()):
output_pdf.addPage(input_pdf.getPage(i))
# 生成PDF
output_stream = open(output_path, 'wb')
output_pdf.write(output_stream)
output_stream.close()
# 循环 PDF 大小直至符合要求
while os.path.getsize(output_path) > max_size:
input_file = open(input_path, 'rb')
input_pdf = PdfFileReader(input_file)
output_pdf = PdfFileWriter()
for i in range(input_pdf.getNumPages()):
output_pdf.addPage(input_pdf.getPage(i))
output_stream = open(output_path, 'wb')
output_pdf.write(output_stream)
output_stream.close()
input_file.close()
if __name__ == "__main__":
input_path = 'example.pdf'
output_path = 'example_compressed.pdf'
max_size = 1024 * 1024 # 1MB
compress_pdf(input_path, output_path, max_size)
本帖最后由 中英文泡椒 于 2024-4-10 10:58 编辑
import os
import shutil
from PyPDF2 import PdfFileReader, PdfFileWriter
def compress_pdf(input_path, output_path, max_size):
input_file =open(input_path, 'rb')
input_pdf =PdfFileReader(input_file)
output_pdf=PdfFilewriter()
for i in range(input_pdf.getNumPages()):
output_pdf.addPage(input_pdf.getPage(i))
#压缩 PDF
output_stream =open(output_path,'wb’)
output_pdf.write(output_stream)
output_stream.close()
#检查 PDF 大小是否符合要求
while os.path.getsize(output_path) > max_size:
input_file =open(output_path, 'rb')
input_pdf = PdfFileReader(input_file)
output_pdf=PdfFilewriter()
for i in range(input_pdf.getNumPages()):
output_pdf.addPage(input_pdf.getPage(i))
output_stream=open(output_path,'wb')
output_pdf.write(output_stream)
output_stream.close()
input_file.close()
if __name__ == "__main__":
input_path ='example.pdf'
output_path='example_compressed.pdf'
max_size=1024 * 1024 # 1MB
compress_pdf(input_path, output_path, max_size)
页:
[1]