Tag: ghostscript

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

我发现Ghostscript能够将PDF转换为图像格式。 我尝试使用PDF到图像转换器,但无法清楚地理解它。 我已经安装了gs905w64.exe ,但当我尝试add reference对我的Web应用程序的add reference ,我收到此错误。 A reference to gsdll32.dll could not be added. No type libraries were found in the component.

在不使用特定C#库的情况下将PDF转换为JPG /图像

是否有免费的C#库 ( .dll )将PDF转换为图像 ? 我尝试过这个: https://code.google.com/p/lib-pdf/ 但它没有用,我收到了这个错误: Could not load file or assembly ‘libpdf.DLL’ or one of its dependencies. The specified module could not be found. iTextSharp没有实现这样的function.. 编辑: 我没有使用ghost scrpit,因为你必须先在计算机上安装它 但现在我找到了一个解决方案:如果你加载manualy它的工作原理 http://sofzh.miximages.com/c%23/ rasterizer.Open(file, vesion, false); for (int i = 1; i = rasterizer.PageCount; i++) { string pageFilePath = Path.Combine(outputPath, Path.GetFileNameWithoutExtension(file) + -p + i.ToString() […]

如何在现有PDF中嵌入字体?

背景: 我有PDF,我是以编程方式生成的。 我需要能够从服务器(而不是通过中间应用程序)将PDF直接发送到打印机。 目前我可以完成以上所有操作(生成PDF,发送到打印机),但由于字体未嵌入PDF中,因此打印机正在进行字体替换。 生成时为什么不嵌入字体: 我正在使用SQL Reporting Services 2008创建PDF .SQL Reporting Services存在一个已知问题,即它不会嵌入字体(除非满足一系列要求 – http://technet.microsoft.com/en-us/library /ms159713%28SQL.100%29.aspx )。 不要问我为什么,PDF符合MS列出的所有要求,并且字体仍然显示为未嵌入 – 没有真正控制字体是否嵌入,所以我已经接受这不起作用并继续前进。 Microsoft建议的解决方法( http://blogs.msdn.com/b/donovans/archive/2007/07/20/reporting-services-pdf-renderer-faq.aspx “何时将使用Reporting Services进行字体嵌入”)是发布处理PDF以手动嵌入字体。 目标获取已生成的PDF文档,以编程方式“打开”它并嵌入字体,重新保存PDF。 方法我指向iTextSharp,但大多数示例都是针对Java版本的,我在转换到iTextSharp版本时遇到问题(我找不到iTextSharp的任何文档)。 我正在撰写这篇文章以了解我需要做的事情: Itext将字体嵌入PDF中 。 但是对于我的生活,我似乎无法使用ByteArrayOutputStream对象。 它似乎无法找到它。 我已经研究过并且研究过但似乎没有人说出它在哪个类或我找到它的位置所以我可以将它包含在using语句中。 我甚至破解了开放的Reflector,似乎无法在任何地方找到它。 这是我到目前为止,它编译等等。(结果是我生成的PDF的字节[])。 PdfReader pdf = new PdfReader(result); BaseFont unicode = BaseFont.CreateFont(“Georgia”, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); // the next line doesn’t work as I need a ByteArrayOutputStream […]

如何使用GhostScript(gswin32c.exe)shell命令在默认网络打印机上打印PDF

我想通过GhostScript在Windows的网络打印机上打印PDF文件。 (我不想使用Adobe Reader) 我已经阅读了gswin32c.exe ,它可以完成这项工作。 我尝试了许多命令,并且没有找到如何强制gs在我的(Windows默认)网络驱动器上打印PDF的方法。 我不需要点精确网络打印机 – 默认可以使用。 但如果没有这样的选择,我也很高兴通过打印机名称。 (我尝试过使用param -SDevice =“\ server_IP \ printer_name”,但这也不起作用……) 在Windows cmd下运行的命令: gswin32c -dPrinted -dBATCH -dNOPAUSE -dNOSAFER -q -dNumCopies=1 -sDEVICE=ljet4 -sOutputFile=”\\spool\\\Server_Name\Printer_name” “C:\test.pdf” 基于上面创建的方法 – 没有工作和thorwsexception。 (错误代码= 1) /// /// Prints the PDF. /// /// The ghost script path. Eg “C:\Program Files\gs\gs8.71\bin\gswin32c.exe” /// The number of copies. /// Name of […]