我有一些网络资料图像作为Microsoft Visio 元素集文件 (.vss)。我将其转换为SVG 文件。
它可以转换,但 Chrome 29 和 IE9 不会在其中显示文本。Opera 12 和 Firefox 24 显示文本(但 Firefox 有字距调整问题)。
文本在这里非常重要,因为 SVG 应该用作带有端口号等的参考书。
我怎样才能在这里修复文本?
此 SVG 文件在不同浏览器上的屏幕截图:
我有一些网络资料图像作为Microsoft Visio 元素集文件 (.vss)。我将其转换为SVG 文件。
它可以转换,但 Chrome 29 和 IE9 不会在其中显示文本。Opera 12 和 Firefox 24 显示文本(但 Firefox 有字距调整问题)。
文本在这里非常重要,因为 SVG 应该用作带有端口号等的参考书。
我怎样才能在这里修复文本?
此 SVG 文件在不同浏览器上的屏幕截图:
登录到 Chrome 控制台时,我看到您的文本以非常小的尺寸存在:
<g xmlns="http://www.w3.org/2000/svg" font-size="0.010081" font-family="ARIAL" font-weight="bold">
<text stroke="none" xml:space="preserve" xmlns:xml="http://www.w3.org/XML/1998/namespace" x="0.028478 0.035202 0.04136 0.049202 0.054808" y="0.009073 0.009073 0.009073 0.009073 0.009073">Power</text>
</g>
并围绕它进行矩阵变换。不知道罪魁祸首在哪里,在Illustrator中打开一团糟……</p>
我在括号中得到的是删除text-rendering="geometricPrecision"
上面组中的属性。我会看看我是否能在这个之后找到更精确的。
当您使用嵌入的 Word 文档(或使用“插入对象”嵌入的其他文件)的 Visio 绘图时,我发现 SVG 渲染出现问题。如果您有这种情况,请先尝试将它们转换为本机 visio 格式,然后再次导出为 SVG - 可能会有所帮助。您的文件现在在“svg”中有“svg”。
无论如何,这个问题看起来像是 IE9 SVG 渲染中的一个错误(另一个):-) 基本上,以下代码片段似乎在 IE9 中被错误地渲染(完整示例):
<svg width="10in" height="10in" viewBox="0 0 10 10"
xmlns="http://www.w3.org/2000/svg" >
<g transform="matrix(100, 0, 0, 100, 2, 2)">
<text font-size="0.01">FOO</text>
</g>
</svg>
问题是,字体首先放大 x100 倍,然后缩小 x100 倍(这对于 Visio SVG 导出引擎来说是一件愚蠢的事情),但无论如何其他浏览器都会以某种方式处理它)。
如果您可以共享原始 visio 绘图,这可能会有所帮助。