鱼C论坛

 找回密码
 立即注册
查看: 144|回复: 2

[已解决]请帮我把图片中的代码提取出来

[复制链接]
发表于 2024-4-10 10:19:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
code.jpg
最佳答案
2024-4-10 10:57:34
本帖最后由 中英文泡椒 于 2024-4-10 10:58 编辑
  1. import os
  2. import shutil
  3. from PyPDF2 import PdfFileReader, PdfFileWriter

  4. def compress_pdf(input_path, output_path, max_size):
  5.         input_file =open(input_path, 'rb')
  6.         input_pdf =PdfFileReader(input_file)
  7.         output_pdf=PdfFilewriter()
  8.         for i in range(input_pdf.getNumPages()):
  9.                 output_pdf.addPage(input_pdf.getPage(i))

  10. #压缩 PDF
  11.         output_stream =open(output_path,'wb’)
  12.         output_pdf.write(output_stream)
  13.         output_stream.close()

  14. #检查 PDF 大小是否符合要求
  15.         while os.path.getsize(output_path) > max_size:
  16.         input_file =open(output_path, 'rb')
  17.         input_pdf = PdfFileReader(input_file)
  18.         output_pdf=PdfFilewriter()
  19.         for i in range(input_pdf.getNumPages()):
  20.                 output_pdf.addPage(input_pdf.getPage(i))
  21.                 output_stream=open(output_path,'wb')
  22.                 output_pdf.write(output_stream)
  23.                 output_stream.close()


  24.         input_file.close()

  25. if __name__ == "__main__":
  26.         input_path ='example.pdf'
  27.         output_path='example_compressed.pdf'
  28.         max_size=1024 * 1024 # 1MB
  29.         compress_pdf(input_path, output_path, max_size)
复制代码

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-4-10 10:46:45 | 显示全部楼层
本帖最后由 不二如是 于 2024-4-10 10:48 编辑

很容易,跟着手敲

完成再看这里:

  1. import os
  2. import shutil
  3. from PyPDF2 import PdfFileReader, PdfFileWriter

  4. def compress_pdf(input_path, output_path, max_size):
  5.     input_file = open(input_path, 'rb')
  6.     input_pdf = PdfFileReader(input_file)
  7.     output_pdf = PdfFileWriter()
  8.     for i in range(input_pdf.getNumPages()):
  9.         output_pdf.addPage(input_pdf.getPage(i))

  10.     # 生成PDF
  11.     output_stream = open(output_path, 'wb')
  12.     output_pdf.write(output_stream)
  13.     output_stream.close()

  14.     # 循环 PDF 大小直至符合要求
  15.     while os.path.getsize(output_path) > max_size:
  16.         input_file = open(input_path, 'rb')
  17.         input_pdf = PdfFileReader(input_file)
  18.         output_pdf = PdfFileWriter()
  19.         for i in range(input_pdf.getNumPages()):
  20.             output_pdf.addPage(input_pdf.getPage(i))
  21.         output_stream = open(output_path, 'wb')
  22.         output_pdf.write(output_stream)
  23.         output_stream.close()

  24. input_file.close()

  25. if __name__ == "__main__":
  26.     input_path = 'example.pdf'
  27.     output_path = 'example_compressed.pdf'
  28.     max_size = 1024 * 1024 # 1MB
  29.     compress_pdf(input_path, output_path, max_size)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-4-10 10:57:34 | 显示全部楼层    本楼为最佳答案   
本帖最后由 中英文泡椒 于 2024-4-10 10:58 编辑
  1. import os
  2. import shutil
  3. from PyPDF2 import PdfFileReader, PdfFileWriter

  4. def compress_pdf(input_path, output_path, max_size):
  5.         input_file =open(input_path, 'rb')
  6.         input_pdf =PdfFileReader(input_file)
  7.         output_pdf=PdfFilewriter()
  8.         for i in range(input_pdf.getNumPages()):
  9.                 output_pdf.addPage(input_pdf.getPage(i))

  10. #压缩 PDF
  11.         output_stream =open(output_path,'wb’)
  12.         output_pdf.write(output_stream)
  13.         output_stream.close()

  14. #检查 PDF 大小是否符合要求
  15.         while os.path.getsize(output_path) > max_size:
  16.         input_file =open(output_path, 'rb')
  17.         input_pdf = PdfFileReader(input_file)
  18.         output_pdf=PdfFilewriter()
  19.         for i in range(input_pdf.getNumPages()):
  20.                 output_pdf.addPage(input_pdf.getPage(i))
  21.                 output_stream=open(output_path,'wb')
  22.                 output_pdf.write(output_stream)
  23.                 output_stream.close()


  24.         input_file.close()

  25. if __name__ == "__main__":
  26.         input_path ='example.pdf'
  27.         output_path='example_compressed.pdf'
  28.         max_size=1024 * 1024 # 1MB
  29.         compress_pdf(input_path, output_path, max_size)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 04:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表