批量 PNG→TIFF:坏文件、坏 ICC 与坏命名会在夜间任务里静默污染整库,比单张「打不开的报错」更难治
`batch-png-tiff` 面向 DAM 清洗与多站点素材统一:输入侧常有错误扩展名、嵌套 ICC 与裁剪元数据,输出侧要喂给只吃 TIFF 的自动化灌库。若 worker 默认色彩管理不一致,会出现同一 SKU 在 App 与印刷稿上两套颜色;若不做透明抽检,白底商品图可能在某一底上出现灰雾。应用内容哈希命名、原子写盘与按错误类型分队列;解码超时与内存峰值需硬熔断,避免 poison 文件拖垮整晚任务。
批量目录操作说明:先冻结命名模板与默认色彩,再对混合样本压测内存,最后 manifest 对账哈希并隔离失败队列
- 冻结 manifest 与 `{collection}/{sku}_v{rev}.tif` 这类模板;预发跑「透明、P3、sRGB、超大长边」混合烟测;统计解码失败率与单进程 RSS 后再调并发。
- 全量后比对行数、成功文件数与期望键集合;对体积异常小或 alpha 直方突变的文件自动隔离;抽检条码与 7pt 文字边缘是否系统性糊化。
- 发布到只读前缀并刷新 CDN;保留上一版 manifest;变更单记录默认压缩、ICC 嵌入策略与转换器版本号,禁止口头改参。
PNG 转 TIFF(批量素材治理)常见问题:幂等键、并行覆盖、Display P3 混库、只读发布与合规抽检
夜间任务写到磁盘 90% 产生半截 TIFF,早上印前打开报错,工程上如何避免坏文件静默进库?
临时文件落盘 fsync 后原子 rename;关闭句柄后校验 TIFF magic 与最小字节阈值;磁盘低于预留水位暂停队列并告警。
两台 worker 写同一对象键,对象存储后写覆盖先写,如何避免 SKU 图被旧版本顶掉?
以内容哈希或业务主键加不可变版本后缀命名;写前用条件写入;冲突时比对导出参数再决定是否人工合并。
源库混有 Display P3 与 sRGB 的 PNG,统一转 TIFF 后列表色偏,批量策略应如何分轨?
在 manifest 记录源 ICC,分轨转换或显式统一到目标空间并附转换报告;禁止 silent 假设所有素材都是 sRGB。
财务要求全库 Zip 压缩省空间,印厂要求未压缩以免偶发兼容问题,如何写清例外规则?
按渠道分轨:线上衍生层可用 Zip,交付印厂的母带走无压缩或印厂书面认可的设置;规则写进命名前缀避免搞混。
抽检发现少量 PNG 实际为截屏带隐藏窗口阴影,转 TIFF 进白底详情页穿帮,如何从流程上拦截?
对非纯底素材走人工队列;在规范里要求商品白底图必须来自受控拍摄或官方抠图服务;禁止运营随意用桌面截屏顶替。