批量将jpg转pdf

Batch conversion of jpg to pdf

我有大量的 jpeg 文件,每个文件都是历史文档中一页的照片。现在我想(批量)从这些文件中创建 pdf 文件,最好将代表一个文档的那些文件制作成单独的 pdf 文件,页面顺序正确。文件名是这样构造的 "date y p id optional.jpg" 其中 y 是 运行 数字,如果几个文档具有相同的日期,p 是页码,id 是来自相机的照片的编号,最后有时是可选的并包含文档的可选信息。所有部分都由 space 分隔。 我希望找到使用内置 Microsoft PDF 编写器的可能性,但还没有为此找到命令行界面。我当然可以从目录列表中制作脚本,只是我知道要为其制作脚本的应用程序的命令行界面。如果创建的 pdf 文件的每一页都可以包含文件名的一部分,那就更好了。

如果您不反对 python 脚本,则有一个名为 img2pdf 的图像到 pdf 库。可以找到 PyPi link here,我很乐意为您编写一个快速脚本

编辑: 可以找到教程 here

编辑 2: 这应该做

## Import libraries ##
import img2pdf, os
from Pillow import Image
# sets an empty list var to store the dir
dirofjpgs = "PUT DIRECTORY HERE" # formatting is C:\User not C:\User\
pathforpdfs = "PUT DIRECTORY HERE"
# change dir to working dir
os.chdir(dirofjpgs)
NameOfFiles = []
# sets and empty list to store the names of files
ExtOfFiles = []
# sets and empty list to store the names and extentions of files
self_file = os.path.basename(__file__)
for i in range(1, len(os.listdir(os.curdir))): # for every item in the current dir
    if (os.path.splitext((os.listdir(os.curdir))[i])[1]) != ".ini": # if the item ends doesnt end in .ini which is a windows file
        NameOfFiles.append(os.path.splitext((os.listdir(os.curdir))[i])[0])  # adds the Name of the file into the NameOfFiles list
        ExtOfFiles.append(os.path.splitext((os.listdir(os.curdir))[i])[1]) # adds the Name and Extention of the file into the ExtOfFiles list

# for every item in the nameoffiles list
for i in range(len(NameOfFiles)):
    # open image with pillow
    image = Image.open(NameOfFiles[i], ExtOfFiles[i])
    # convert with img2pdf
    pdf_values = img2pdf.convert(image.filename)
    # save as pdf in dir
    file = open(pathforpdfs, "wb")
    file.write(pdf_values)
    #close
    image.close()
    file.close()
    print(str(i+1), "/", len(NameOfFiles))

mg2pdf-模块/