如何使用Python将.dst文件批量转换为.jpg格式
可用实现方案
你需要同时安装Pillow库处理图像保存,pyembroidery本身仅负责读取和渲染刺绣文件,不直接提供图像导出能力。
第一步:安装依赖
pip install pyembroidery pillow
第二步:运行批量转换代码
import os from pyembroidery import read_dst, render from PIL import Image # 按需修改以下配置参数 DST_FOLDER = "./dst_files" # 你的dst文件所在文件夹路径 JPG_OUTPUT_FOLDER = "./output_jpg" # jpg文件保存路径 OUTPUT_WIDTH = 800 # 输出jpg的宽度 OUTPUT_HEIGHT = 800 # 输出jpg的高度 BACKGROUND_COLOR = (255, 255, 255) # 输出背景色,默认白色 # 自动创建输出文件夹 os.makedirs(JPG_OUTPUT_FOLDER, exist_ok=True) # 遍历处理所有dst文件 for filename in os.listdir(DST_FOLDER): if filename.lower().endswith(".dst"): dst_path = os.path.join(DST_FOLDER, filename) # 读取dst文件 pattern = read_dst(dst_path) # 渲染为RGBA位图 img_rgba = render(pattern, width=OUTPUT_WIDTH, height=OUTPUT_HEIGHT, background=BACKGROUND_COLOR) # 转为RGB格式适配jpg要求 img_pil = Image.fromarray(img_rgba).convert("RGB") # 生成输出文件名 jpg_filename = os.path.splitext(filename)[0] + ".jpg" jpg_save_path = os.path.join(JPG_OUTPUT_FOLDER, jpg_filename) # 保存jpg,quality参数可调整输出质量1-100 img_pil.save(jpg_save_path, quality=95) print(f"转换完成:{filename}")
补充说明
- 若需要保留透明背景,可将输出后缀改为
.png,同时删除.convert("RGB")步骤即可 - 可通过调整
render方法的threadset参数自定义刺绣线的显示色卡 - 代码执行完成后所有转换后的文件会和原dst文件一一对应保存在输出文件夹内
内容的提问来源于stack exchange,提问作者chirunavvula chindu
相关产品推荐
相关产品推荐

