我可以将包含表情符号的非常大的SVG转换为PNG甚至PDF。
但我很难让它与多代码表情符号的一起工作
请在下面找到一个只有几行的摘录。
转换失败的是:
<text x="20" y="110" font-size="20px" >U0001F1E8U0001F1ED</text>
</svg>
请在下面找到一个只有几行的摘录。
from svglib.svglib import svg2rlg
from reportlab.graphics import renderPDF, renderPM
data = """<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="200px" height="200px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<text x="20" y="20" font-size="20px" >Test</text>
<text x="20" y="50" font-size="20px" >uF1E8uF1ED</text>
<text x="20" y="80" font-size="20px" >U0001F1E8U0001F1ED</text>
<text x="20" y="110" font-size="20px" >🇨🇭</text>
</svg>"""
with open('test.svg', 'w') as file:
file.write(data)
file.close()
drawing = svg2rlg("test.svg")
renderPDF.drawToFile(drawing, "test.pdf")
renderPM.drawToFile(drawing, "test.png", fmt="PNG")
提前感谢您的任何提示,祝您度过美好的一天:-(
问题解决了,我使用了html2imagePython模块,该模块将SVG(包括嵌入的表情符号(很好地转换为PNG图像。