Python如何将DST文件转换为PNG文件?

时间:2018-12-21 08:46:43

标签: python python-3.x image

我环顾四周,阅读了有关化脓症的文档,我很困惑,所以我在这里问。

是否有可用的软件包可用于使用Python将 DST图像转换为 PNG图像

img.py

import pyembroidery
pattern = pyembroidery.read_dst("shamrockin.dst")
pyembroidery.write_png(pattern, 'shamrockin.dst')

错误

  

pattern = pyembroidery.read_dst(“ shamrockin.dst”,)
  文件“ / home / panacea / Documents / src / easy suit / EasyTailor / venv / lib / python3.5 / site-packages / pyembroidery / PyEmbroidery.py”,行462,在read_dst中                          reader.read(流,模式,设置)     文件“ / home / panacea / Documents / src / easy suit / EasyTailor / venv / lib / python3.5 / site-packages / pyembroidery / DstReader.py”,第86行,已读取       dst_read_header(f,out)     在dst_read_header中,第55行中的文件“ / home / panacea / Documents / src / easy suit / EasyTailor / venv / lib / python3.5 / site-packages / pyembroidery / DstReader.py”       header_string = header.decode('utf8')   UnicodeDecodeError:“ utf-8”编解码器无法解码位置0处的字节0x89:无效的起始字节

1 个答案:

答案 0 :(得分:2)

您将PNG文件写入'shamrockin.dst',该文件将覆盖原始文件。第二次运行时,'shamrockin.dst'现在是一个PNG文件,因此无法用read_dst读取。 (错误消息UnicodeDecodeError: 'utf-8' codec can't decode byte 0x89 in position 0: invalid start byte中有一个提示:字节0x89始终是first byte of a PNG file。)

还原原始DST文件,然后更改

pyembroidery.write_png(pattern, 'shamrockin.dst')

pyembroidery.write_png(pattern, 'shamrockin.png')