如何使用 Ghostscript 将 PDF 转换为图像

2023-12-01

我发现 Ghostscript 能够将 PDF 转换为图像格式。

I tried PDF 到图像转换器但无法清楚地理解它。

我已经安装了gs905w64.exe但当我尝试add reference对于我的网络应用程序,我收到此错误。

A reference to gsdll32.dll could not be added. No type libraries were found in the component.


您不需要向您的项目添加任何 DLL 引用。 首先下载gs910w32.exe应用程序文件 然后将其安装到您的本地计算机。 获取已安装的.exe文件的位置 例如:-

“C:\ Program Files(x86)\ gs \ gs8.64 \ bin \ gswin32.exe”

在您的 C# 应用程序中将其用作:

 
  private void PdfToJpg(string inputPDFFile, string outputImagesPath)
        {
            string ghostScriptPath = @"C:\Program Files (x86)\gs\gs8.64\bin\gswin32.exe";
            String ars = "-dNOPAUSE -sDEVICE=jpeg -r102.4 -o" + outputImagesPath + "%d.jpg -sPAPERSIZE=a4 " + inputPDFFile;
            Process proc = new Process();
            proc.StartInfo.FileName = ghostScriptPath;
            proc.StartInfo.Arguments = ars;
            proc.StartInfo.CreateNoWindow = true;
            proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
            proc.Start();
            proc.WaitForExit();
        }
 

如果您输入的 PDF 文件名有空格,则需要将参数更改为

 
String ars = "-dNOPAUSE -sDEVICE=jpeg -r102.4 -o" + outputImagesPath + "%d.jpg -sPAPERSIZE=a4 " +"\"" + inputPDFFile + "\"";
 

您可以使用 -r 标志在参数中指定输出图像的纵横比。 如果您使用“-r300”,图像的宽度将为 3000 像素,高度将相应改变,根据上面的参数,您将获得 1024 到 768 尺寸的 jpg 图像。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Ghostscript 将 PDF 转换为图像 的相关文章

随机推荐

  • Altair 颜色分级值

    在以下直方图中对分级值进行着色时遇到问题 我打算对 x 轴 信用度 上小于 50 的所有条形进行着色 在 Altair 中这是如何完成的 base alt Chart X train histogram base mark bar enco
  • 将 javascript 客户端连接到 python websocket 服务器

    我有这个工作 python websocket 服务器 usr bin env python from socket import HOST PORT 8080 BUFSIZ 1024 ADDR HOST PORT tcpSerSock s
  • 如何使用开始和结束索引对 numpy 行进行切片

    index np array 1 2 2 4 1 5 5 6 z np zeros shape 4 10 dtype np float32 有什么有效的设置方法z np arange 4 index 0 z np arange 4 inde
  • 使用 Google Maps API 进行地理编码 - 更新现有标记而不是添加另一个标记

    在进行地理编码时 如何简单地将现有标记移动到新地理编码结果的结果中 让我们看这个例子 地图加载时 会出现一个标记 当有人进行地理编码时 标记会移动到结果 标记是可拖动的 因此用户可以进一步移动标记 如果他们愿意 也许他们想要重新对位置进行地
  • A-Frame .obj 模型显示但已损坏

    这里是框架的初学者 已经完成了教程场景 现在正在设置我的第一个使用 obj 模型 使用远程服务器 感觉这是重要的信息 我看到过有关模型未显示的问题 但我的模型显示已损坏 我不知道从哪里开始修复它 This is how it looks i
  • 使用 freeswitch 在网络浏览器中发起呼叫和接听呼叫

    我有一个要求 我有一个网站 我想在其中实现拨出呼叫和拨入呼叫功能 我在 Windows 上使用 freeswitch 作为 sip 服务器 目前我可以使用 verto 在本地分机上发起呼叫 如何直接从浏览器向手机发起出站呼叫 并且还可以使用
  • 如何在 Tfs Build 中参数化 DeployIisAppPath Msbuild 参数

    我正在使用 Tfs 2012 构建 部署我们的 Asp Net Web 应用程序 我们有一个构建定义 可构建 5 个解决方案 sln 文件 这就是我们的 MsBuild 参数的样子 p DeployOnBuild True p AllowU
  • 尽管参数类型不同,但双重定义错误

    我在以下两种方法上收到双重定义错误 def apply T state T onRender T gt Graphic onMouseEvent MouseEvent T gt T GraphicPanel apply state onRe
  • Postgres排序问题

    我想按 DESC 评级排序 它适用于 MySQL 但适用于 PostgreSQL 我得到了不同的结果 您可以在这里看到问题 http www vinderhimlen dk konkurrencer 我的控制器 def sort colum
  • 使用 C# 退出 Excel(同时使用 Excel 自动化)

    我正在使用 C 将数据读取 写入 Excel 电子表格 我正在使用这三个语句来打开我的 Excel 文件 Excel Application excelapp new Excel Application Excel Worksheet wo
  • C# 网格数据源多态

    我有一个网格 我正在设置DataSource to a List
  • Android Play 商店 market:// 链接不再有效?

    在过去的一年里 我一直从我的域重定向我的用户 http example com get 至 market details id com example myapp 今天我在 Nexus 5 LG G3 OnePlus One 上通过 Chr
  • 如何使用正则表达式将非字母数字字符替换为空格?

    我构建了一个 Javascript 函数来将第一个字母变为大写 我的问题是我有一些类似于 name something 的单词 而我想要的是 Name Something 我这样做了 function toCamelCase text re
  • 无法读取未定义的角度4的属性“名称”[重复]

    这个问题在这里已经有答案了 我正在尝试在组件模板中打印一个值 但我收到上述错误Cannot read property name of undefined 我已经从这个问题的代码中删除了额外的内容 我想访问第一行详细信息 组件文件 impo
  • Python:如何执行外部程序

    如何从程序内部执行程序而不阻塞 直到执行的程序完成 我努力了 os system 但它会停止我的程序 直到执行的程序停止 关闭 有没有办法让我的程序在外部程序执行后继续运行 考虑使用子流程 module Python 2 http docs
  • Javascript序列化窗口对象

    我想序列化一个包含窗口的窗口对象 这样 如果通过反序列化它并重新设置其属性来刷新 php 页面 则可以在内存中保持窗口打开 是否可以 例如 object window open test html 使用场景 当一个窗口打开时 它的引用是在创
  • 在一本大书中找到 10 个最常用的单词 [重复]

    这个问题在这里已经有答案了 我知道这个问题已经在论坛上被问过几次了 我没有找到任何可以被认为是最合适的解决方案的 标记 答案 所以再次询问 我们从书中得到了一篇非常大的文本 所有这些文本都无法放入内存中 我们需要找到文本中出现频率最高的 1
  • 解析地理查询始终为空

    我目前正在尝试让 Parse 的地理查询系统正常工作 在我的数据浏览器上 我安装了一个地理点类型的关键 位置 其中设置了纬度 30 27263636013176 和经度 97 75766807716373 的地理点 但是 如果我尝试使用以下
  • 如何获取Excel表格中选中的复选框值

    我正在执行一项与使用 Java 读取包含单选按钮和复选框的 excel 相关的任务 我已经尝试了很多 但无法进一步进行此操作 当我尝试读取包含复选框的单元格的数据时 它返回一个空值 有人可以帮忙解决这个问题吗 控件不包含在单元格中 而是作为
  • 如何使用 Ghostscript 将 PDF 转换为图像

    我发现 Ghostscript 能够将 PDF 转换为图像格式 I tried PDF 到图像转换器但无法清楚地理解它 我已经安装了gs905w64 exe但当我尝试add reference对于我的网络应用程序 我收到此错误 A refe