首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ghostscript添加了空格,不管我使用什么边框。

Ghostscript添加了空格,不管我使用什么边框。
EN

Stack Overflow用户
提问于 2022-03-26 09:07:19
回答 1查看 141关注 0票数 0

我正在尝试将PDF格式的一页转换成图像。我成功地完成了我尝试过的大多数PDF格式,但是这个特别的例子总是在一边有大量的空白,或者是奇怪的缩放。

我尝试了每一个固定的媒体组合,固定的分辨率,适合页面,使用作物/流血/修剪/艺术框等参数来解决这个问题,但什么也不做。我得到的最好是正确的内容大小,但抵消和削减。

根据我尝试过的每一个PDF阅读器,应该是这样的:

这里有一个用于测试的PDF (8MB)链接。

https://drive.google.com/file/d/1ErS3KxADb1YAdzM7FG7T5dO8QnW4l1AQ/view?usp=sharing

编辑1:

如下所示,只使用-dUseCropBox,而不使用cropbox覆盖:

我使用的Ghostscript.NET代码非常简单。我创建了一个栅格化器,调用Ope(PDF文件,字节内的幽灵脚本dll ),然后调用GetPage(DPI,页面号)。若要使用其他标志,请在调用open之前向栅格化器添加自定义开关。

代码语言:javascript
复制
using(var rasterizer = new GhostscriptRasterizer()) {
    //rasterizer.CustomSwitches.Add("-dFIXEDMEDIA");
    //rasterizer.CustomSwitches.Add("-dFIXEDRESOLUTION");
    //rasterizer.CustomSwitches.Add("-dPSFitPage");
    //rasterizer.CustomSwitches.Add("-dFitPage");
    //rasterizer.CustomSwitches.Add("-dPDFFitPage");
    //rasterizer.CustomSwitches.Add("-dUseCropBox");
    //rasterizer.CustomSwitches.Add("-dPrinted");
    //rasterizer.CustomSwitches.Add("-dUseBleedBox");
    //rasterizer.CustomSwitches.Add("-dUseTrimBox");
    //rasterizer.CustomSwitches.Add("-dUseArtBox");
    //rasterizer.CustomSwitches.Add("-sPAPERSIZE=letter");
    //rasterizer.CustomSwitches.Add("-dORIENT1=true");
    //etc

    rasterizer.Open(pdfFilePath, ghostscriptDLL);

    img = rasterizer.GetPage(dpi, pageNumber);
    img.Save(pageFilePath, imageFormat);
}

我将再试一次,使用最新版本的纯鬼怪脚本(没有.NET),看看这是否有什么区别。

编辑2:

仅使用gswin64c版本9.55.0和-dUseCropBox就像KenS所说的那样工作。因为我不需要Ghostscript.NET来完成这个任务,所以这是一个很好的解决方案。

EN

回答 1

Stack Overflow用户

发布于 2022-03-27 23:49:19

仅使用gswin64c版本9.55.0和-dUseCropBox就像KenS所说的那样工作。因为我不需要Ghostscript.NET来完成这个任务,所以这是一个很好的解决方案。

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

https://stackoverflow.com/questions/71626692

复制
相关文章

相似问题

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