将矢量图形从PDF导入GIMP

将矢量图形从PDF导入GIMP,pdf,imagemagick,vector-graphics,gimp,inkscape,Pdf,Imagemagick,Vector Graphics,Gimp,Inkscape,我需要从PDF图像中提取矢量图形,并将它们作为路径或高分辨率光栅图像导入GIMP。具体来说,我需要从美国地质勘探局的地形图中获取等高线,并将其覆盖在卫星图像上。有什么建议吗 到目前为止,我已经尝试: --使用GIMP的原生PDF导入功能将其作为光栅图像导入。问题:在高分辨率下这样做会使我的计算机崩溃。可能的解决方案是只导入PDF的选定区域,但据我所知,这是不可能的 --使用ImageMagick将PDF转换为光栅图像。问题:与“-scale”参数一起使用时,“convert”显示为光栅化PDF,

我需要从PDF图像中提取矢量图形,并将它们作为路径或高分辨率光栅图像导入GIMP。具体来说,我需要从美国地质勘探局的地形图中获取等高线,并将其覆盖在卫星图像上。有什么建议吗

到目前为止,我已经尝试:

--使用GIMP的原生PDF导入功能将其作为光栅图像导入。问题:在高分辨率下这样做会使我的计算机崩溃。可能的解决方案是只导入PDF的选定区域,但据我所知,这是不可能的

--使用ImageMagick将PDF转换为光栅图像。问题:与“-scale”参数一起使用时,“convert”显示为光栅化PDF,然后将其放大,导致图像起伏

--使用InkScape从PDF中提取必要的矢量元素。问题:当我试图打开一个中等大小(25MB)的PDF时,InkScape会冻结

还有其他想法吗

非常感谢,,
treacl

您上面没有提到的选项是尝试直接使用ghostscript程序来呈现输出-ghostscript由GIMP在内部用于导入PDF文件,因此您可能已经安装了它

有几十个命令开关可以传递ghostscript,以便它将文件呈现为另一种格式—需要传递的开关用于确定输出大小、分辨率以及要打印的页面。我没有找到任何开关来选择要呈现的页面的一部分-因此,如果您的文档是单个页面,那么生成的文件对于GIMP来说可能仍然太大-但是您至少可以使用ImageMagick对其进行裁剪

我想您的相关命令行应该是:

gs -dNOPAUSE -dBATCH -sDEVICE=png16m -sOutputFile=page.png -dFirstPage=<pagenumber> -dLastPage=<pagenumber> -r<dpiresolution>  -f<filename.pdf>
gs-dNOPAUSE-dBATCH-sDEVICE=png16m-sOutputFile=page.png-dFirstPage=-dLastPage=-r-f
如果生成的图像仍然太大,无法生成或操作,则可以尝试更改输出格式以使用较小的颜色深度(此颜色深度为每像素3字节:png16m)。应该可以传递postscript命令来转换设备,这样感兴趣的区域就可以放大到页面大小(其余部分将从渲染中裁剪出来)——这对您来说是最终的解决方案——但我不知道如何使用ghostscript实现这一点

或者,您可以尝试按照注释中的建议将-density参数传递给ImageMagick。

在使用ImageMagick加载PDF之前添加-density 300(或更高)可以提高质量。