Python多图片合并PDF的方法

yipeiwu_com5年前Python基础

python多图片合并pdf

起因

一个做美工的朋友需要将多个图片jpg 、png 合并起来,PS操作太慢了所以用了python进行完成这个任务

代码

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File : 2.py
# @Author: huifer
# @Date : 2018/12/20
from PIL import Image
import os
def rea(pdf_name):
  file_list = os.listdir('.')
  pic_name = []
  im_list = []
  for x in file_list:
    if "jpg" in x or 'png' in x or 'jpeg' in x:
      pic_name.append(x)
  pic_name.sort()
  new_pic = []
  for x in pic_name:
    if "jpg" in x:
      new_pic.append(x)
  for x in pic_name:
    if "png" in x:
      new_pic.append(x)
  print("hec", new_pic)
  im1 = Image.open(new_pic[0])
  new_pic.pop(0)
  for i in new_pic:
    img = Image.open(i)
    # im_list.append(Image.open(i))
    if img.mode == "RGBA":
      img = img.convert('RGB')
      im_list.append(img)
    else:
      im_list.append(img)
  im1.save(pdf_name, "PDF", resolution=100.0, save_all=True, append_images=im_list)
  print("输出文件名称:", pdf_name)
if __name__ == '__main__':
  tttt = """
 _____ _____ _____  _______ ____  _____ _____ ______ 
 | __ \_  _/ ____| |__  __/ __ \ | __ \| __ \| ____|
 | |__) || || |     | | | | | | | |__) | | | | |__  
 | ___/ | || |     | | | | | | | ___/| | | | __| 
 | |  _| || |____   | | | |__| | | |  | |__| | |   
 |_|  |_____\_____|  |_| \____/ |_|  |_____/|_|   
"""
  print(tttt)
  print("合成")
  pdf_name = input("请输入合成PDF文件名称:")
  if ".pdf" in pdf_name:
    rea(pdf_name=pdf_name)
  else:
    rea(pdf_name="{}.pdf".format(pdf_name))
  input("按任意键结束")

合成后

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

python的scipy实现插值的示例代码

python的scipy实现插值的示例代码

插值对于一些时间序列的问题可能比较有用。 Show the code directly: import numpy as np from matplotlib import pypl...

详解Python中open()函数指定文件打开方式的用法

文件打开方式 当我们用open()函数去打开文件的时候,有好几种打开的模式。 'r'->只读 'w'->只写,文件已存在则清空,不存在则创建。 'a'->追加,写到文件...

python使用BeautifulSoup分页网页中超链接的方法

本文实例讲述了python使用BeautifulSoup分页网页中超链接的方法。分享给大家供大家参考。具体如下: python通过BeautifulSoup分页网页中的超级链接,这段py...

Python实现求最大公约数及判断素数的方法

本文实例讲述了Python实现求最大公约数及判断素数的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/env python def showMaxFactor...

python按行读取文件,去掉每行的换行符\n的实例

如下所示: for line in file.readlines(): line=line.strip('\n') 以上这篇python按行读取文件,去掉每行的换行符\n的实例就是...