python 生成pdf页面大小_(Python)更改使用xtopd生成的PDF文件的页面大小和格式

我想用Python转换xlsx。我使用tablib和xtopdf模块构建了一个结构良好的表。工作出色!不幸的是,内容不适合一个pdf页面。所以我想把页面大小和格式改成水平A3。但我不知道这怎么可能。我的代码:import random

import tablib

from openpyxl import load_workbook

from xtopdf import PDFWriter

from pyPdf import PdfFileWriter, PdfFileReader

workbook = load_workbook('C:/Users/user1/Testexcel.xlsx', guess_types=True, data_only=True)

worksheet = workbook.get_sheet_by_name('Testsheet')

ws_range = worksheet.iter_rows('A4:H6')

# Helper function to output a string to both screen and PDF.

def print_and_write(pw, strng):

print strng

pw.writeLine(strng)

# Create an empty dataset and set its headers.

data = tablib.Dataset()

data.headers = ['col1', 'col2', 'col3', 'col4']

widths = [30, 20, 10, 20] # Display widths for columns.

for row in ws_range:

col1 = str(row[0].value)

col2 = str(row[1].value)

col3 = str(row[2].value)

col4 = str(row[3].value)

columns = [col1, col2, col3, col4]

row = [ str(col).center(widths[idx]) for idx, col in enumerate(columns) ]

data.append(row)

# Set up the PDFWriter.

pw = PDFWriter('C:/Users/user1/Test.pdf')

pw.setFont('Courier', 10)

pw.setHeader('Test')

pw.setFooter('Test')

# Generate header and data rows as strings; output them to screen and PDF.

separator = '-' * sum(widths)

print_and_write(pw, separator)

# Output headers

header_strs = [ header.center(widths[idx]) for idx, header in enumerate(data.headers) ]

print_and_write(pw, ''.join(header_strs))

print_and_write(pw, separator)

# Output data

for row in data:

print_and_write(pw, ''.join(row))

print_and_write(pw, separator)

pw.close()

从fwxtciar库中找到了这个对象。在canvas类中,声明了一个属性pagesize,该属性默认设置为“A4”。但是如果我将条目改为'A3',结果pdf仍然是'A4'。在

^{pr2}$

“我认为”模块中的更改不被“编辑”模块接受。尝试删除字典reportlab并尝试在命令行中导入它。具有讽刺意味的是,虽然python不应该再找到那个模块了,但它仍然可以工作。在

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

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

相关文章

php数组合并字段,PHP数组按要求合并

数组一:[0] > Array([rid] > 1[hf_rid] > 0[aid] > 1[uid] > 1[content] > 我肯定第一名[re_time] > 2017-10-10 10:59[nickname] > 就是这么帅)[1] > Array([rid] > 2[hf_rid] > 0[aid] > 1[uid] > 1[content] > 马蛋,中枪了[re_ti…

aba会导致问题_肌肤缺水会导致哪些问题呢?我们又该怎么判断呢?

一.如何判断皮肤是否缺水?01.脸部肌肤粗糙,有紧绷感很多人在日常中都会用到洗面奶吧,在用过洗面奶之后如果发现肌肤变得粗糙,有紧绷感,那么说明你的肌肤就需要补水了。02.化妆之后浮粉、起皮如果给肌肤补足充足的水分&…

php编写用户登录页面,js+php实现静态页面实时调用用户登陆状态的方法

这篇文章主要介绍了jsphp实现静态页面实时调用用户登陆状态的方法,采用在静态页面中使用js调用php页面从而实现用户登录状态的实时调用功能,需要的朋友可以参考下本文实例讲述了jsphp实现静态页面实时调用用户登陆状态的方法。分享给大家供大家参考。具体分析如下:在…

python调试和测试有什么区别和联系_软件测试和测试开发到底有什么区别跟联系?...

对于没有进入IT领域的同学而言,软件测试并不陌生,但如果听到测试开发,他们一定会感到十分困惑,这究竟是测试还是开发呢?按照字面意思理解,大家或许会觉得测试开发是指既能开发产品又能测试产品的“技术王者…

php 远程图片合拼,php获取远程图片的三种方式

来源:http://www.phstar.cn/article/258.html下面介绍 3种php远程获取图片的方法,希望对大家有帮助。1:file_get_contents,file_put_contents方式function download_remote_file($file_url, $save_to){$content file_get_contents($file_url…

python蒙特卡洛模拟_基于Python的21点游戏蒙特卡洛模拟

问题重述:大多数赌场使用6副牌或8副牌玩这种游戏,以防止“数牌点”,在你的模拟中使用两副牌(共104张)。只有2位参与者,你和庄家。游戏开始时每人得到两张牌,对于牌面为2~10的牌,点数和面数相同;…

php 接受 amp,php中amp;amp;和||的用法

这两个是php 中的关系运算符。php中的关系运算符有:&&(and)、||(or)、xor(亦或)、!(非)、名称 关系 示例 结果and 与 $x and $y 如果 $x 和 $y 都为 true,则返回 true。or 或 $x or $y …

spring更新后 外层事务查不到_再深一点:面试工作两不误,源码级理解Spring事务...

原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。Spring有5种隔离级别,7种传播行为。这是面试常问的内容,也是代码中经常碰到的知识点。这些知识枯燥而且乏味,其中有些非常的绕…

php 字符串比较txt,PHP读到txt中文字符串比较失败

最近开始做PHP。今天从txt文件中读取一个中文字符串,跟一个字符串作比较,老是匹配失败,开始以为是编码问题,因为我的PHP文件编码是utf-8,遂将txt文件的编码也改成utf-8,好,噩梦来了...我将读到的…

箭头函数的this指向谁_高阶函数

NodeJS 系列文章,本篇是第一篇,首先,预计将后续高频使用逻辑串一遍,依次是高阶函数,promise以及事件机制。本篇主要是高阶函数。call、bind、applycall、apply 都是改变 this 指向,区别是接受参数的方式不一…

php怎么加编码,php怎么设置编码格式

php设置编码格式的方法:首先在php脚本中添加【header(“Content-Type: text/html; charsetutf-8")】;然后在静态页面设置编码;最后保证所有文件的编码相同即可。如果要使用gb2312编码,那么php要输出头:(推荐教程&…

java 中文 音序,java 中文字符串数组按照音序排列

java 中文字符串数组按照音序排列复制代码 代码如下:public class SortComparator implements Comparator{public int compare(Object o1,Object o2) {try{byte[] buf1 ((String) o1).getBytes("unicode");byte[] buf2 ((String) o2).getBytes("unicode"…

matlab1 3倍频程,瞬时声压时域数据怎么用matlab进行1/3倍频程声压级分析

%A计权声压级频谱分析clc;clear;close all;%时域分析ywavread(abc.wav);%频域分析fs51200;%采样频率p02e-5;%参考声压f[1.00 1.25 1.600 2.00 2.50 3.15 4.00 5.00 6.30 8.0]; %基准中心频率f1[20.00 25.0 31.5 40.0 50.0 63.0 80];fc[f1,100*f,1000*f,10000*f]; %%%%%%%%%中心…

python paramiko长连接_【Python】 SSH连接的paramiko

paramiko*paramiko需要PyCrypto模块的支持paramiko支持通过SSH协议进行一些操作,比如远程执行命令,上下传文件等等用法:①  远程命令ssh paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())#指定当对方主机没…

php 共享内存列队,php中对共享内存,消息队列的操作

消息队列中的数据同样受到大小的约束,具体约束范围可通过msg_stat_queue的msg_qbytes看到。这段代码唯一有点小改动的地方就在接受消息时,指定了MSG_IPC_NOWAIT,不然如果目标队列没有数据,默认会一直等待。 一般会用到共享内存或消…

python文件路径拼接多出斜杠_浅谈python中拼接路径os.path.join斜杠的问题

浅谈python中拼接路径os.path.join斜杠的问题调试程序的过程中,发现通过os.path.join拼接的路径出现了反斜杠directory1/opt/apps/upgradePackagedirectory2icp_v1.8.0directory3os.path.join(directory1,directory2)print(directory3 : %s %directory3)执行结果dir…

matlab约当消去法,Gauss消去法解线性方程组(Matlab)

clear;clc;% Gauss消去法解线性方程组A[3 -5 6 4 -2 -3 8;1 1 -9 15 1 -9 2;2 -1 7 5 -1 6 11;-1 1 3 2 7 -1 -2;4 3 1 -7 2 1 1;2 9 -8 11 -1 -4 -1;7 2 -1 2 7 -1 9];%系数矩阵b[11 2 29 9 5 8 25];%n维向量yinv(A)*b %matlab的计算结果nlength(b);%方程个数nxzeros(n,1);%…

动感灯箱制作流程培训_广告立体灯箱的特点有哪些?

随着广告业的发展,灯箱广告行业也在突飞猛进。在灯箱广告屏的设计与制作中,为了追求真实感和艺术性,采用彩印或摄影喷绘;也有人用特种纸、塑料板(膜)、灯箱布等进行丝网印刷制作灯箱图片,并根据成本和耐候性要求选择制作方法和灯箱…

MATLAB仿真TSC在哪里找,-bash:tsc:找不到命令

我正在使用MAC并尝试安装TypeScript . 我使用安装打字稿sudo npm install -g typescript以下是结果Password:/Users//node/bin/tsc -> /Users//node/lib/node_modules/typescript/bin/tsc/Users//node/bin/tsserver -> /Users//node/lib/node_modules/typescript/bin/tss…

supervisor 重启_supervisor_twiddler的使用

点击上方蓝字关注【 北邮郭大宝 】Supervisor可以很好的实现Python的进程管理,但是新增进程时需要配置文件,对于需要动态创建进程的场景不是很友好,supervisor_twiddler插件可以帮助实现上述功能。本文就supervisor_twiddler的使用做简单的de…