用Python将多张图片合并成一PDF文件

先前条件

需要安装两模块:fpdfPIL

  • pip install fpdf
  • pip install PIL

放码过来

from fpdf import FPDF
from PIL import Image
import osdef makePdf(pdfFileName, listPages):cover = Image.open(listPages[0])width, height = cover.sizepdf = FPDF(unit = "pt", format = [width, height])for page in listPages:pdf.add_page()pdf.image(page, 0, 0)pdf.output(pdfFileName, "F")makePdf("result.pdf", [imgFileName for imgFileName in os.listdir('.') \if imgFileName.endswith("png")])

参考文献

Create PDF from a list of images

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/445980.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FFmpeg源代码简单分析-通用-结构体分析-关键结构体之间的关系

参考链接 FFMPEG中最关键的结构体之间的关系_雷霄骅的博客-CSDN博客_ffmpeg 结构体关系 最关键的结构体可以分成以下几类: 解协议(http,rtsp,rtmp,mms) AVIOContext,URLProtocol,URLContext主要存储视音频使用的协…

用Python下载文件

前提条件 需要事先安装requests模块: pip install requests 放码过来 import requestsurl XXX #文件下载来源URL filename #下载到本地后新文件名 r requests.get(url) with open(filename, "wb") as code:code.write(r.content)实战演习 从目标…

distenct oracle_Oracle的distinct关键字

distinct关键字用于从查询的结果集中筛选出唯一值的记录。我们通过示例来介绍distinct关键字的用法。一、生成测试数据用以下SQL创建超女基本信息表(T_GIRL),插入一些测试数据。create table T_GIRL(id char(4) not null, -- 编号name varchar2(30) not null, -- 姓…

FFmpeg源代码简单分析-通用-常见结构体的初始化和销毁(AVFormatContext,AVFrame等)

参考链接 FFmpeg源代码简单分析:常见结构体的初始化和销毁(AVFormatContext,AVFrame等)_雷霄骅的博客-CSDN博客 结构体 AVFormatContext:统领全局的基本结构体。主要用于处理封装格式(FLV/MKV/RMVB等&…

python中object转为float_object格式怎样无损转换成float64格式

这次给大家带来object格式怎样无损转换成float64格式,object格式无损转换成float64格式的注意事项有哪些,下面就是实战案例,一起来看一下。在数据处理过程中比如从CSV文件中导入数据data_df pd.read_csv("names.csv")在处理之前一…

FFmpeg源代码简单分析-通用-avio_open2()

参考链接 FFmpeg源代码简单分析:avio_open2()_雷霄骅的博客-CSDN博客_avio_open avio_open2() 该函数用于打开FFmpeg的输入输出文件avio_open2()的声明位于libavformat\avio.h文件中,如下所示。 /*** Create and initialize a AVIOContext for accessi…

用Tomcat构建一个简单图片服务器

前提条件 Tomcat 7.0.90 方法一&#xff1a;修改配置文件 在TOMCAT_HOME/conf/server.xml配置文件内的<Host>内添加一子标签&#xff1a; <Context docBase"C:\exambase\" path"/img"/>方法二&#xff1a;添加Servlet 新建一应用&#xf…

flash静态的农夫走路_健身神动作——你不知道的“农夫行走”

原标题&#xff1a;健身神动作——你不知道的“农夫行走”本期导读握力是训练中及其重要的一环&#xff0c;强大的握力会使你的训练效果MAX&#xff0c;就像开了加速器一样&#xff01;很多人把握力和前臂力量混为一谈&#xff0c;主要使用腕弯举提高握力。实际上&#xff0c;握…

FFmpeg源代码简单分析-通用-av_find_decoder()和av_find_encoder()

参考链接 FFmpeg源代码简单分析&#xff1a;av_find_decoder()和av_find_encoder()_雷霄骅的博客-CSDN博客_avcodec_find_encoder avcodec_find_encoder avcodec_find_encoder()用于查找FFmpeg的编码器avcodec_find_encoder()的声明位于libavcodec\codec.h 版本差异avcode…

用Java的Set实现交并差等集合运算

放码过来 package com.lun.util;import java.util.HashSet; import java.util.Set;public class SetUtils {public static <T> Set<T> union(Set<T> setA, Set<T> setB) {Set<T> tmp new HashSet<T>(setA);tmp.addAll(setB);return tmp;…

post方法就反回了一个string字符串前台怎么接_Golang Web入门(2):如何实现一个RESTful风格的路由...

摘要在上一篇文章中&#xff0c;我们聊了聊在Golang中怎么实现一个Http服务器。但是在最后我们可以发现&#xff0c;固然DefaultServeMux可以做路由分发的功能&#xff0c;但是他的功能同样是不完善的。由DefaultServeMux做路由分发&#xff0c;是不能实现RESTful风格的API的&a…

FFmpeg源代码简单分析-通用-avcodec_open2()

参考链接 FFmpeg源代码简单分析&#xff1a;avcodec_open2()_雷霄骅的博客-CSDN博客 avcodec_open2() 该函数用于初始化一个音视频编解码器的AVCodecContextavcodec_open2()的声明位于libavcodec\avcodec.h&#xff0c;如下所示。 /*** Initialize the AVCodecContext to use…

统计MySQL中某数据库硬盘占用量大小

放码过来 select TABLE_NAME, concat(truncate(data_length/1024/1024,2), MB) as data_size, concat(truncate(index_length/1024/1024,2), MB) as index_size from information_schema.tables where TABLE_SCHEMA your_db_name order by data_length desc;运行结果 参考…

halcon 相似度_Halcon分类函数,shape模型

《zw版Halcon-delphi系列原创教程》 Halcon分类函数013,shape模型为方便阅读&#xff0c;在不影响说明的前提下&#xff0c;笔者对函数进行了简化&#xff1a;:: 用符号“**”&#xff0c;替换&#xff1a;“procedure”:: 用大写字母“X”&#xff0c;替换&#xff1a;“IHUnt…

用Python将文件夹打包成Zip并备份至U盘

需求概要 将maven工程打包并备份至U盘。为了简单起见&#xff0c;只需备份工程中的src文件夹和pom.xml文件即可。 放码过来 import os import zipfile import datetime import shutilnowTimeStr datetime.datetime.now().strftime("%Y%m%d%H%M") newZipFileName …

FFmpeg源代码简单分析-通用-avcodec_close()

参考链接 FFmpeg源代码简单分析&#xff1a;avcodec_close()_雷霄骅的博客-CSDN博客_avcodec_close avcodec_close() 该函数用于关闭编码器avcodec_close()函数的声明位于libavcodec\avcodec.h&#xff0c;如下所示。 ​该函数只有一个参数&#xff0c;就是需要关闭的编码器的…

redis 缓存过期默认时间_redis缓存过期机制

笔者在线上使用redis缓存的时候发现即使某些查询已经设置了无过期时间的缓存,但是查询仍然非常耗时。经过排查,发现缓存确实已经不存在,导致了缓存击穿,查询直接访问了mysql数据库。因为我们用的是公司公共的redis缓存服务器,在和运维人员交流后发现可能是redis的内存淘汰…

FFmpeg源代码简单分析-解码-打开媒体的函数avformat_open_input

参考链接 图解FFMPEG打开媒体的函数avformat_open_input_雷霄骅的博客-CSDN博客_avformat_open_input 使用FFmpeg源代码简单分析&#xff1a;avformat_open_input()_雷霄骅的博客-CSDN博客_avformat_open_input() avformat_open_input FFmpeg打开媒体的的过程开始于avformat_…

redis session java获取attribute_面试题:给我说说你能想到几种分布式session实现?...

作者&#xff1a;yanglbme 来源&#xff1a;https://github.com/doocs/advanced-java/blob/master/docs/distributed-system/distributed-session.md# 面试官心理分析面试官问了你一堆 dubbo 是怎么玩儿的&#xff0c;你会玩儿 dubbo 就可以把单块系统弄成分布式系统&#xff0…

Projection投影

解释一 Projection means choosing which columns (or expressions) the query shall return. Selection means which rows are to be returned. if the query is select a, b, c from foobar where x3;then “a, b, c” is the projection part, “where x3” the selecti…