python - 将乘数 JPEG 图像保存为 PDF
问题描述
当我尝试使用 PIL 将多个 JPEG 图像转换为 PDF 时,“a.jpg”被保存了两次,所以现在有三个 PDF 页面包含两个 a.jpg 和一个 b.jpg。以下是我的代码。我希望它只包含一个 a.jpg 和一个 b.jpg...
import random
def print_hi( name ):
global random_int
folder = "C:/Users/arjay/Documents/IntellijBackgrounds/"
file_name = "a.jpg"
img1 = Image.open( folder + file_name )
img2 = Image.open( folder + "b.jpg" )
random_pdf_name = "C:/Users/arjay/Documents/IntellijBackgrounds/"
for _ in range( 5 ):
random_integer = random.randint( 65, 90 )
random_int = random.randint( 1, 1000 )
# Keep appending random characters using chr(x)
random_pdf_name += (chr( random_integer ))
random_pdf_name += str( random_int ) + ".pdf"
images = [ img1, img2 ]
multiple_images = len( images )
if (multiple_images > 1):
img1.save( random_pdf_name, "pdf", reolution=100.0, save_all=True, append_images=images )
else:
img1.save( random_pdf_name, "pdf", reolution=100.0, save_all=True )
print( "Successfully converted", file_name, "to", random_pdf_name )
if __name__ == '__main__':
print_hi( 'PyCharm' )
解决方案
如果有多个图像,您的代码会再次附加完整列表 - 而不是从第二个图像开始附加。
改变:
img1.save( random_pdf_name, "pdf", reolution=100.0, save_all=True, append_images=images )
至:
img1.save( random_pdf_name, "pdf", reolution=100.0, save_all=True, append_images=images[1:] )
推荐阅读
- python - Pandas:按两个类别分组并返回计数
- angular - 需要一个 SOAP 服务器才能在 Angular 中运行
- opengl - 如何使用 OpenGL Shader 模拟“Glow Dodge”混合?
- python - 在 python 中导出具有“类型”和“大小”列的字典
- powerbi - Power BI 中的 DAX - 如何添加度量来计算百分比
- django - 在没有复制粘贴到控制台的情况下对 Django 授权进行 Spotipy
- google-apps-script - 谷歌表 - 脚本 - 与内容约会单元格
- python - 如何将变量保存到文本文件并稍后检索?
- sql - 将 case 语句放入 max() 函数和 where 语句中
- node.js - 使用流进行 Mongoose 查询真的值得吗?