node.js - gm.exe 转换:此图像格式没有解码委托 (input.pdf)
问题描述
尝试在 Windows Server 中使用图形魔术 1.3.36 版时
magick.exe -density 168x168 -quality 76 -compress JPEG "input.pdf" "output.png"
在 GM 中,我还安装了 GhostScript 并使用了以下内容:
gm.exe convert "input.pdf" -density 168X168 -quality 76 -compress JPEG "output.jpeg"
得到错误gm.exe convert: No decode delegate for this image format (input.pdf)
有什么想法我哪里出错了吗?
解决方案
gm.exe convert: No decode delegate for this image format (input.pdf)
这通常意味着 Imagemagick 无法找到 Ghostscript。添加 GhostScript 二进制文件-“gswin64c.exe”应该可以工作。但是,另一种方法可能是修改delegates.mgk文件以获取 PSDelegate 的二进制文件。
默认情况下,Delegates.mgk 条目看起来有点像这样 -
<delegate decode="pdf" encode="eps" mode="bi" command='"@PSDelegate@" -q -dBATCH -dSAFER -dMaxBitmap=50000000 -dNOPAUSE -sDEVICE=@GSEPSDevice@ "-sOutputFile=%o" -- "%i" -c quit' />
注意@PSDelegate@
命令中的 env 变量,只需找到并替换所有@PSDelegate@
路径即可gswin64c
。
注意:Ghostscript bin 目录应该存在于系统路径中才能正常工作。瞧!
推荐阅读
- angular - ng-zorro cascader 延迟加载数据,nzLoadData 函数得到 this=undefined
- android - TextInputLayout 在包含文本时更改边框颜色
- typo3 - TypoScript 常量使用的语法和“扩展配置”的语法有什么区别吗?
- sql - 如何删除 SQL 表列中具有相同 Word 的其他行
- java - 如果达到某个值,如何将 for 循环内的布尔值设置为 true?
- javascript - 从对象中提取值
- servicestack - JSONB - 按索引更新数组值
- regex-group - 一种正则表达式,用于捕获由一个空格字符分隔的单词,并结合相反的捕获出现的多个空格字符
- html - 设置 CSS 悬停查询时,如何覆盖 CDN 派生的悬停规则?
- jmeter - JMeter - 已安装插件列表