我有一个SVG文档(让我们将其命名为img1.svg)和一个包含1页的PDF文件( doc1.pdf)。我需要的是将doc1.pdf插入到img1.svg中(缩放、旋转和放置在文档中的某个点)。为了实现它,我必须将doc1.pdf转换为doc1.svg (这可以通过inkscape很容易地完成),然后我只需将doc1.svg的内容插入到img1.svg中,这很容易。
但是如果doc1.pdf包含一些CMYK颜色空间的元素呢?在这种情况下,inkscape不会生成doc1.svg的正确版本。它创建了正确的布局,但颜色现在是RGB。我知道在SVG2规范中使用CMYK颜色是有可能的,并且inkscape可以正确地导入具有CMYK颜色元素的SVG2文件。
我的问题是,有没有软件可以将PDF文件转换成SVG2 (保持CMYK色彩空间)?
我尝试过使用inkscape和scribus来做这件事,但总是得到RGB输出。
发布于 2019-09-28 01:20:07
您的SVG总是要在浏览器中显示吗?如果是这样的话,您可以选择使用<foreignObject>元素在SVG中显示PDF。
<svg width="400" viewBox="0 0 400 400">
<foreignObject x="50" y="50" width="300" height="300">
<body xmlns="http://www.w3.org/1999/xhtml">
<object type="application/pdf"
data="sample.pdf" width="300" height="300"></object>
</body>
</foreignObject>
</svg>
更新
对不起,我没有正确阅读你的问题。
我知道在SVG2规范中使用
颜色是有可能的
你在这里指的是什么?SVG2规范将所有关于颜色的内容都遵从CSS3规范“或其后继者”。CSS3规范不支持CMYK颜色。然而,仍在开发中的CSS4规范增加了一个新的颜色功能:device-cmyk()。然而,目前还没有浏览器支持AFAIK。
您可能指的是SVG1.1中不推荐使用的icc-color()函数。并且已经从SVG2规范中删除。
我只知道有一款软件支持icc-color(),那就是RenderX。请参见:
how can i use cmyk in an svg embeded in html?
但在印刷行业领域,可能还有其他软件。
我的问题是,有没有软件可以将
文件转换成SVG2 (保持CMYK色彩空间)?
鉴于上述情况,我将在专门为印刷行业开发的软件中进行搜索(如果您还没有这样做的话)。堆栈溢出可能不是最好的地方。
还有,你有没有试过在Graphich Design Stack Exchange中询问
祝你搜索成功。
https://stackoverflow.com/questions/58130697
复制相似问题