我试图将两个或多个postscript文件合并为一个.我尝试连接但它不起作用,因为每个postscript文件可能有不同的资源标头.
以前有人这样做过吗?那里有没有图书馆(商业或开源)?我不介意C++,C#甚至Java库.
编辑 这些是大型的postscript文件(超过200 Mb),其目的仅用于彩色打印(不适用于在线查看).
结论
总之,合并两个postscript文件的临时解决方案是选项3或4.
我需要将多页TIFF转换为多页PDF.我可以访问ImageMagick和GhostScript(在*nix环境中).我该怎么做呢?谢谢.
更新:
事实证明我的测试文件是错误的(它没有多个页面),这让我觉得我的命令错了.这似乎对我有用:convert input.tif output.pdf
我在用
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=book.pdf -f front-matter.pdf fulltext-0.pdf fulltext-1.pdf back-matter.pdf
Run Code Online (Sandbox Code Playgroud)
从一系列pdf文档创建单个PDF文档.我打算包含一个新的内容表,并使用pdfmark机制包含它.然后我注意到原始文件中已经有书签 - 但它们是引用原始页码而不是组合文档中的页码.
我正在寻找两种可能的解决方案.删除原始书签或使用原始书签,但以某种方式更新其页面引用...
你能帮我一个命令将svg文件转换为ghostscript中的eps吗?我试图在Gimp中打开svg文件,但它非常大,所以看起来gimp无法打开它或者它需要太长时间.我有两个要转换的文件.
注意:我已经完成了从png到svg的转换,将光栅转换为矢量,转换占用了我的大部分系统磁盘空间(大约2GB).有没有可能使用外部缓存驱动器的命令?
有没有办法从pdf文件中删除多次嵌入的字体?
这是我的情景:
1)程序生成几个单页pdf报告(查询数据库,将信息放在Excel模板上并以pdf格式导出格式化信息)
2)pdftk将单页pdf合并到一个文件中.
一切正常,但结果pdf的大小非常大:事实上,我注意到字体嵌入了多次(与页面的数量一样多的时间:所有页面都是从同一个excel模板开始生成的,字体嵌入在单个pdf文件中,pdftk只是粘贴pdf).有没有办法只记录每个嵌入字体的一个副本?
我尝试在从excel-> pdf导出时将字体嵌入到第一页中:文件的大小显着减小,但似乎其他页面无法访问嵌入字体.
谢谢,亚历山德罗
简而言之,我正在处理一个有问题的PDF,其中:
evince由于缺少字体信息,无法在文档查看器中完全呈现;ghostscript可以完全呈现相同的PDF.因此 - 无论ghostscript填写空白的用途(可能是后备字形,或访问字体的不同方法) - 我希望能够ghostscript用来生成("提取")输出PDF,其中几乎除了添加的字体信息之外,什么都不会改变,因此evince可以以相同的方式呈现相同的文档ghostscript.
因此,我的问题是 - 这是否可行; 如果是这样,那么命令行会是什么样的呢?
非常感谢任何答案,
干杯!
我实际上是在一个较旧的Ubuntu 10.04,我可能正在经历 - 不是一个错误 - 但安装问题evince(缺少poppler-data包),如Bug#386008中所述"由于"未知的字体标记,某些字体无法显示. ..:"Bugs:"poppler"包:Ubuntu.
但是,这正是我想要处理的内容,因此我将使用fontspec.pdf附加到该帖子(" PDF触发错误. ",//v.)来演示问题.
evince首先,我打开这个pdf的第3页evince; 并evince抱怨:
$ evince --page-label=3 fontspec.pdf
Error: Missing language pack for 'Adobe-Japan1' mapping
Error: Unknown font tag 'F5.1'
Error (7597): No font …Run Code Online (Sandbox Code Playgroud) 我通常将其ghostscript视为命令行工具; 然而,我从不停止对那里存在的大量设置和选项感到惊讶 - 这是因为这ghostscript是一个完整的PostScript语言解释器(我经常忘记).
例如,在查询Ghostscript中输出设备的默认选项/设置(例如'pdfwrite'或'tiffg4') ; 一个人学习如何检索给定输出设备的默认选项.但是,我想知道的是 - 这些选项是否与所谓的PostScript词典相关?
或者,换句话说 - 什么是PostScript词典; 什么设施ghostscript有,查询(并可能)修改这些数据?
我的项目给出错误..
*无法在DLL"gsdll32.dll"中找到名为"gsapi_new_instance"的入口点.*
尝试使用Ghost-script Interpreter dll'gsdll32.dll'将.pdf转换为图像格式时
即使我尝试将这个dll复制到所有想要的地方,就像在许多论坛中所说的那样
Win\System32或在项目的目录..错误保持不变.. :(
我使用了Ghost-script给出的PDFConvert.cs类,并在我的转换按钮上编写了以下代码:
private void btnConvert_Click(object sender, RoutedEventArgs e)
{
//First We Check whether the Dll is present
if (!File.Exists(AppDomain.CurrentDomain.BaseDirectory + "\\gsdll32.dll"))
{
MessageBox.Show("The library 'gsdll32.dll' required to run this program is not present! download GhostScript and copy \"gsdll32.dll\" to this program directory");
return;
}
if (string.IsNullOrEmpty(txtSingleFile.Text))
{
MessageBox.Show("Enter the File name");
txtSingleFile.Focus();
return;
}
else if (!File.Exists(txtSingleFile.Text))
{
MessageBox.Show("The File Does not exists");
txtSingleFile.Focus();
}
else
ConvertPdfToImage(txtSingleFile.Text);
}
Run Code Online (Sandbox Code Playgroud)
和我的ConvertPdfToImage方法如下:
//The Ghost-Script Class Object …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用ImageMagick(6.8.0)将多个多页PDF组合成一个PDF.这个命令:
$ convert multi-page-1.pdf multi-page-2.pdf merged.pdf
Run Code Online (Sandbox Code Playgroud)
返回merged.pdf,其中包含第一多页次数1.pdf和页面第一多页2.pdf的页面.
这个命令:
$ convert multi-page-1.pdf[2] multi-page-2.pdf[2] merged.pdf
Run Code Online (Sandbox Code Playgroud)
返回merged.pdf,其中包含了第三多页次数1.pdf和页面第三多页的页面- 2.pdf.
我想merged.pdf包含每个多页pdf的所有页面.到目前为止,我还没有找到一种方法来告诉convert命令使用一系列页面,尽管我已经尝试在文件名的末尾添加[0-1]和[0,1].
有趣的是,这个ghostscript命令(我通过StackOverflow找到但无法重新找到)确实可以正常工作:
$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=merged.pdf multi-page-1.pdf multi-page-2.pdf
Run Code Online (Sandbox Code Playgroud)
问题是,ImageMagick'convert'命令将urls作为输入而ghostscript不作为,我需要我的程序来获取url输入而不是文件路径.
是否可以使用ImageMagick获取上述ghostscript命令的结果?
这是我的情景:
我正在将PDF文件转换为通过C#调用Ghostscript的PNG图像.这是我使用的参数字符串:
-dNOPAUSE -dBATCH -dFirstPage=1 -q -r300 -sDEVICE=png256 -sOutputFile=...
Run Code Online (Sandbox Code Playgroud)
但是,通过这种方式,当我调用Ghostscript时,它会显示一个窗口(在我添加之前-q)有输出消息.
我试过添加-dNODISPLAY之后-r300.但是这样Ghostscript不起作用,也不会创建图像.
问题: 我可以通过哪种方式抑制输出窗口?
ghostscript ×10
pdf ×4
c# ×2
imagemagick ×2
postscript ×2
command-line ×1
dictionary ×1
eps ×1
excel ×1
fonts ×1
pdftk ×1
stack ×1
svg ×1
tiff ×1
wpf ×1