吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1762|回复: 14
收起左侧

[Python 原创] 矢量图svg转白色底png,可以更改背景色

[复制链接]
zjg121 发表于 2024-3-25 19:17
本帖最后由 zjg121 于 2024-3-25 19:24 编辑

有些网页图片显示的是矢量图svg格式,python处理时很困难。采用下面方法,可以把它转化为png,再c'l使用cairosvg库,需要先设置环境:
1.从https://github.com/tschoonj/GTK- ... ?tab=readme-ov-file下载GTK3。

2.安装下载的GTK3。
3.按win键,搜索环境变量,选编辑系统环境变量:

4.打开pycharm,运行姓名代码。


[Python] 纯文本查看 复制代码
import cairosvg
from PIL import Image
import io


def svg_to_white_bg_jpg(svg_file, output_jpg_file):
    # 将SVG文件转换为PNG格式
    png_data = cairosvg.svg2png(url=svg_file)

    # 使用PIL库打开PNG文件
    img = Image.open(io.BytesIO(png_data))

    # 将图像背景设置为白色
    white_bg_img = Image.new("RGBA", img.size, "white")
    white_bg_img.paste(img, mask=img.split()[3])  # 使用alpha通道作为mask

    # 将修改后的图像保存为JPG格式
    white_bg_img.convert("RGB").save(output_jpg_file)


# 使用示例
svg_file = "d:/1.svg"
output_jpg_file = "d:/1.jpg"
svg_to_white_bg_jpg(svg_file, output_jpg_file)
qq.png
qw.png
qa.png

免费评分

参与人数 1吾爱币 +3 热心值 +1 收起 理由
苏紫方璇 + 3 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

archon1 发表于 2024-3-25 22:28
本帖最后由 archon1 于 2024-3-25 22:30 编辑

chrome/Chromium系浏览器有一个扩展叫SVG Export,不要太好用。为了一个小小功能,得安装几个巨大的软件,实在有点得不偿失。
https://chromewebstore.google.com/detail/svg-export/naeaaedieihlkmdajjefioajbbdbdjgp
2024-3-25 22-26-48.png

点评

那是因为 Chromium 内置了 SVG 支持,实现起来不麻烦。 不过主要问题还是 Python 的 SVG 支持竟然需要一整套 GTK 运行时… 有点炸裂。  详情 回复 发表于 2024-3-26 09:06
sai609 发表于 2024-3-25 20:47
有啥办法,无限放大,也能看清文档内容,用啥图片格式
独立勿扰 发表于 2024-3-26 08:12
sai609 发表于 2024-3-25 20:47
有啥办法,无限放大,也能看清文档内容,用啥图片格式

用矢量图,.svg、.ai或者其他的矢量图格式。都是可以的,具体就看你的设备都支持哪些格式了。
sail2000 发表于 2024-3-26 08:16
sai609 发表于 2024-3-25 20:47
有啥办法,无限放大,也能看清文档内容,用啥图片格式

你是在找PDF吗
ALDCYY 发表于 2024-3-26 09:05
直接用AI打开另存为PNG不就行了
爱飞的猫 发表于 2024-3-26 09:06
archon1 发表于 2024-3-25 22:28
chrome/Chromium系浏览器有一个扩展叫SVG Export,不要太好用。为了一个小小功能,得安装几个巨大的软件, ...

那是因为 Chromium 内置了 SVG 支持,实现起来不麻烦(你想想浏览器有多大…)。

不过主要问题还是 Python 的 SVG 支持竟然需要一整套 GTK 运行时… 有点炸裂。
AgnesW 发表于 2024-3-26 09:45
没想到这么麻烦!不过感谢Lz的分享
sai609 发表于 2024-3-26 12:52

不是,脑图转图片格式,非PDF
sai609 发表于 2024-3-26 12:52
独立勿扰 发表于 2024-3-26 08:12
用矢量图,.svg、.ai或者其他的矢量图格式。都是可以的,具体就看你的设备都支持哪些格式了。

矢量图,啥格式
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-13 00:35

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表