首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >鬼脚本:收割特定的区域?

鬼脚本:收割特定的区域?
EN

Stack Overflow用户
提问于 2019-11-29 08:39:15
回答 1查看 963关注 0票数 2

我对幽灵剧本很陌生。

我有一个pdf,里面有一张卡片。我想剪掉那张卡片。

目前,通过对文档的理解,我只能将pdf转换成图像,但在裁剪中没有运气。看到了所有其他相关的问题,但没有为我工作。

这是我在批处理文件中使用的代码,用于将pdf转换为图像:

代码语言:javascript
运行
复制
"C:\Program Files\gs\gs9.50\bin\gswin64c.exe" -sDEVICE=png16m -r300 -o c:\users\jen\desktop\pdf.png -f "c:\users\jen\desktop\pdf.pdf
pause 

现在我也不知道怎么用它来收割了?我想在某些位置进行裁剪,比如:Left:28 Top:524 Width:492.3 Height:161

编辑--我将在firebase函数中使用它。

示例PDF文件作物。我想删除的蓝色区域的pdf到图像。

EN

回答 1

Stack Overflow用户

发布于 2019-11-29 12:07:31

您需要设置几个参数;首先,您需要指定输出位图的宽度和高度。您可以使用( -dDEVICEHEIGHTPOINTS-dDEVICEWIDTHPOINTS ),也可以使用-g<x>x<y>指定以像素为单位的输出大小,即x和y方向上的像素数。显然,这将取决于决议。您不能(显然)使用小数像素。

如果使用-dDEVICEWIDTHPOINTS-dDEVICEHEIGHTPOINTS,那么还需要设置-dFIXEDMEDIA,告诉解释器不要使用PDF文件中的媒体大小。

所以应该创建一个大小正确的输出位图。如果您尝试使用它来呈现您的文件,您将看到它只从左下角呈现页面的一部分。因此,现在您需要转移内容,以便您想要的部分位于媒体的左下角。您可以通过使用PageOffset PostScript运算符来实现这一点。

您没有给出任何数字,也没有提供一个示例文件,因此让我们(为了示例)说,您希望呈现文档的1英寸乘2英寸的部分。让我们进一步说,您想要渲染的部分从左边的边缘开始2.5英寸,从底部的边缘开始1.5英寸。

一个适当的命令行是:

代码语言:javascript
运行
复制
gs -sDEVICEWIDTHPOINTS=72 -dDEVICEHEIGHTPOINTS=144 -dFIXEDMEDIA -r300 -sDEVICE=png16m -o out.png -c "<</PageOffset [-180 -108]>> setpagedevice" -f input.pdf

请注意,PDF (和PostScript)单位是1/72英寸,所以72 =1英寸,144 =2英寸。您需要上下移动页面的原点,这就是为什么PageOffset的值是负值的原因。

如果这不适用于您,我需要查看您的PDF文件,并且您需要告诉我您使用的是哪个版本的Ghostscript。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59101374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档