首页 > 解决方案 > 无法在没有获得巨大 pdf 的情况下将 jpeg 转换为 pdf

问题描述

我有一个 6 兆的 pdf,当我将其转换为一组 jpeg 图像然后将其转换回 pdf 时,生成的 pdf 为 48 兆。即使我使用以下代码

from PIL import Image
for x in os.listdir(dir1):
    im = Image.open(f'{dir1}{x}')
    im.save(f'{dir2}/{x}', optimize=True, quality=60)

这优化了我所有的 jpeg 图像,我只是将 jpeg 文件大小减少了 20%,即从大约 400K 到大约 350K。我没有像这个人那样减少 5 倍:

如何使用 PIL 减小图像文件大小

我用来将 pdf 转换为 jpg 的代码如下

from pdf2image import convert_from_path
with tempfile.TemporaryDirectory() as path:
    
    images_from_path = convert_from_path(filename, output_folder=path, first_page=0, fmt='jpg')

for e, page in enumerate(images_from_path):
 
    num = e + first_pg
    num = vgf.pad_numbers(num, 3)
    page.save(f"{dest}{long}{num}.jpg", fmt='jpg')

标签: pythonpython-imaging-library

解决方案


推荐阅读