diff --git a/vipsong.py b/vipsong.py index 73a4ff1..e74e374 100644 --- a/vipsong.py +++ b/vipsong.py @@ -115,6 +115,9 @@ def _parse_gt_output(input_path, output_spec): else: # 裸格式名,仅修改扩展名 out_path = p.with_suffix("." + spec) + # 相对路径相对于输入文件的目录解析(而非 cwd),避免从不同目录运行时输出路径错误 + if not out_path.is_absolute(): + out_path = p.parent / out_path ext = out_path.suffix.lower().lstrip(".") out_fmt = _EXT_TO_FMT.get(ext, ext) if not out_fmt: