ImageMagick 程序有一个convert
命令可以用来转换图片格式。例如我有一张图片 test.jpg
convert test.jpg test.png
会给出test.png。
我想将此命令添加到右键菜单中以简化我的工作。我在 HKEY_CLASSES_ROOT -- * -- shell
regedit
中添加了一个项目
C:\Program Files\ImageMagick-7.0.3-Q16\convert.exe -density 600 "%1" %1.png
当我对文件 test.jpg
运行此命令时,它会给出 test.jpg.png
。我想获取文件 test.png
。我应该如何修改命令行?
最佳答案
我不确定 shell 处理程序是否直接支持它,但我会使用具有所需功能的 cmd
解决它:
cmd /d /c "for /f "delims=" %%i in ('@echo %1') do @start "" "C:\Program Files\ImageMagick-7.0.3-Q16\convert.exe" -density 600 "%1" "%%~dpni.png""
@echo %1
回显 shell 提供的完整路径,使其可用于 CMD 作为可处理的结果。表达式用单引号引起来,因为这是使它成为命令的原因。for/f
将结果解析为字符串列表(包含一个字符串),将每个(一个)字符串放入%i
并允许% ~dpni
即 takes drive letter, path and name (但不是扩展名)在%i
之外。@start
用于不让 CMD 等待程序完成。start
后的空引号是 very required .
关于windows - 如何在windows中获取文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42608051/