首页 > 解决方案 > 使用python将tif文件转换为pdf

问题描述

嗨,我有一个包含多个 .tif 文件的文件夹,我正在尝试将这些文件转换为单个 pdf 文件。我正在尝试使用 python,因为它们超过 3000 个。我能够转换一个,但是在实现我发现的多个代码时给我一个错误“没有这样的文件或目录:”这是我的代码我正在使用,在此先感谢。

from PIL import Image 
import os
directory = r'/Users/reynierDesktop/Drive/' 
for filename in os.listdir(directory): 
    if filename.endswith(".tif"): 
        prefix = filename.split(".tif")[0]
        im = Image.open(filename)
        im.save(prefix+'.pdf')  
    else: 
        continue

我能够找到一些东西,它有点工作。它将 tif 文件转换为 pdf,但如果 tiff 文件超过 1 页,它只会转换第一个。知道如何解决这个问题吗?谢谢。

from PIL import Image
import os

def makePdf(imageDir, SaveToDir):
    os.chdir(imageDir)
    for j in os.listdir(os.getcwd()):
           os.chdir(imageDir)
           fname, fext= os.path.splitext(j)
           newfilename = fname + ".pdf"
           im = Image.open(fname + fext)
           os.chdir(SaveToDir)
           im.save(newfilename, "PDF", resolution = 100.0)


imageDir = r'my directory path'
SaveToDir = r'where to save them'
makePdf(imageDir, SaveToDir)

标签: python

解决方案


jonathan,你的目录可能是 /Users/reynierDesktop/Drive/ 但你的文件名只是 something.tif (如果你打印出文件名,你可以看到这个)

所以当你 Image.open(filename) 时,你正在寻找 something.tif 而不是 /Users/reynierDesktop/Drive/something.tif

所以解决这个问题的一种方法是在使用 Image.open 时将目录与文件名连接起来,或者您可以先 cd 进入 /Users/reynierDesktop/Drive/ 然后只找到文件名,因为您位于正确的目录中。


推荐阅读