当光栅化svg文件时,我希望能够为生成的png文件设置宽度和高度.使用以下代码,仅将画布设置为所需的宽度和高度,具有原始svg文件尺寸的实际图像内容将呈现在(500,600)画布的左上角.

import cairo

import rsvg

WIDTH, HEIGHT = 500, 600

surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, WIDTH, HEIGHT)

ctx = cairo.Context(surface)

svg = rsvg.Handle(file="test.svg")

svg.render_cairo(ctx)

surface.write_to_png("test.png")

我该怎么做才能使图像内容与cairo canvas相同?我试过了

svg.set_property('width', 500)

svg.set_property('height', 500)

但得到了

TypeError: property 'width' is not writable

librsvg python绑定的文档似乎非常罕见,只有一些随机代码片段在cairo网站上.

解决方法:

librsvg中有一个resize function,但它已被弃用.

在开罗设置scale matrix以更改图纸的大小:

>在cairo上下文中设置比例变换矩阵

>使用.render_cairo()方法绘制SVG

>将表面写入PNG

标签:python,cairo,librsvg

python编辑svg文件_如何使用librsvg Python绑定调整svg映像文件的大小相关推荐

  1. python编辑word书签_小伙发现了Python中编写word文档的库,编辑文字方便多了

    新的一年,小编又和大家见面啦.十分开心又和大家分享干货了~ Word文档相信广大的办公室家族并不陌生吧?今天咱们聊聊Python中一个可以用来读写word文档的Python库,编辑文档分分钟的事情哦~ ...

  2. c++ windows获得当前工作目录文件_基于linux下Python文件操作

    Python中的文件操作 1.文件的打开与关闭 想一想:如果想用word编写一份简历,应该有哪些流程呢? 1.打开word软件,新建一个word文件 2.写入个人简历信息 3.保存文件 4.关闭wor ...

  3. python文件打包成exe是 upx不可用、找不到py文件_使用PyInstaller将Python程序打包成一个单独的exe文件...

    1. 安装步骤略过 网上教程多 2. 用cmd进入PyInstaller的目录 然后执行以下命令: python pyinstaller.py -F C:\test.py 以上命令需要把Python目 ...

  4. python代码打开可执行文件_将自己的Python代码打包成exe文件(更换设备可运行的)...

    1.这里使用到的第三方库是 pyinstaller,先安装该库 pip install pyinstaller 2.将python文件copy到python的安装目录下的Scripts目录下 3.打开 ...

  5. python登录系统文件版_详解用python实现基本的学生管理系统(文件存储版)(python3)...

    这个是升级的版本,比较进阶一点的,相对与之前的文件管理系统,数据只是存储到了内存中,而不是存储到硬盘上,我们想让文件存储到硬盘上的话,一个是存储到文件里,一个是存储到数据库中,存储到数据库中的版本会后 ...

  6. python分享文件_使用简单的python http服务共享文件

    今天给大家带来一招"黑科技"--利用Python直接将电脑的文件发送给手机(或者ipad),是很久之前偶然间听师兄讲过的,感觉挺神奇,分享给大家,再一次感受Python的强大魔力. ...

  7. python中数据读写_【循序渐进学Python——文件中数据的读写以及操作】

    [循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] 相信大家都想过自己有一天,可以用 ...

  8. dump文件_零基础编程——Python文件、JSON数据存储

    摘要 书接前文: 01-<零基础编程--起步并搭建Python环境> 02-<零基础编程--变量与数据类型> 03-<零基础编程--Python循环.函数.类> 教 ...

  9. python单词倒排_【原创】python倒排索引之查找包含某主题或单词的文件

    什么是倒排索引? 倒排索引(英语:Inverted index),也常被称为反向索引.置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射.它是文 ...

最新文章

  1. 屏幕后处理——Bloom
  2. BZOJ1449[JSOI2009]球队收益BZOJ2895球队预算——最小费用最大流
  3. Python入门IDE选择
  4. axure 如何设置选项联动_Axure下拉框级联操作
  5. 【嵌入式】Libmodbus源码分析(三)-modbus相关函数分析
  6. anacondapythonyolo3配置_Windows anaconda 运行yolov3
  7. maven-assembly-plugin插件打包 jar、tar.gz
  8. javascript库之Mustache库使用说明
  9. replace使用案例--替换空格
  10. AIX 查看进程列表
  11. 常见错误:JavaScript 提交form 的时候,Error:对象不支持此属性或方法
  12. poj 1679(次小生成树)
  13. 自然语言理解gpt_GPT-3:自然语言处理的创造潜力
  14. 华为主题包hwt下载_华为EMUI系统主题文件hwt修改及制作详细教程
  15. codesmith mysql 模板_CodeSmith代码自动生成器 JAVA模版的制作---CodeSmith+MySQL+MyEclipse 10...
  16. Python3-网页爬取-批量爬取贴吧页面数据
  17. 12.图形裁剪——二维裁剪+三维裁剪+Sutherland-Cohen裁剪算法+中点分割算法
  18. AutoJs学习-录制手指动作
  19. Muse UI遇到的坑
  20. 很有意境的语句[转]

热门文章

  1. ASCII,Unicode和UTF-8终于找到一个能完全搞清楚的文章了
  2. 车辆检测--DAVE: A Unified Framework for Fast Vehicle Detection and Annotation
  3. 解决IDEA报错:Lambda expressions not supported at language level '7'
  4. git服务器查看用户信息,git 查看当前git用户_新Git用户使用方法
  5. Tomcat(三):tomcat处理连接的详细过程
  6. UIView之动画效果的实现方法(合集)
  7. java final修饰符_java final修饰符详解,final修饰方法
  8. 九九乘法表c语言代码空格,九九乘法表的C语言代码.doc
  9. 3780mysql_MySQL添加外键Foreign Keys出错,报错[HY000][3780]
  10. mysql通过视图查看_MySQL教程92-MySQL查看视图