【问题标题】:Converting svg to pdf: Why am I losing my text?将 svg 转换为 pdf:为什么我会丢失文本?
【发布时间】:2011-11-15 18:07:03
【问题描述】:

我正在使用 Batik 将 svg 转换为 pdf。 Batik 输出的 pdf 没有文本。 svg 确实有文本。如果我使用 Batik 光栅化为 png,我会得到文本。

我使用的字体是 Arial。我在一个Debian盒子上。安装了 Arial。这是我正在使用的命令:

/usr/bin/java -jar /usr/local/share/java/batik-1.7/batik-rasterizer.jar \
    -m application/pdf -bg 255.255.255.255 -d /tmp/olV0zQ_wYQ/chart.pdf \ 
    /tmp/tAi25KAE2z/tmp.svg

然后我得到以下输出:

About to transcode 1 SVG file(s)

Converting tmp.svg to /tmp/olV0zQ_wYQ/chart.pdf ... ... success

这是我的svg file

【问题讨论】:

  • 你能发布 SVG 吗?
  • 嗯...它对我来说转换得很好。您可以发布它生成的 PDF 吗?
  • 我无法打开您的 svg 的网址 - 它对其他人有用吗?

标签: pdf svg batik


【解决方案1】:

我也遇到了同样的问题。 它在本地机器上运行良好,但在远程服务器(debian)上运行良好。 我通过重新定位文本来解决它(字体在那里但不在视线范围内)

请试试这个:

<?xml version="1.0"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="500" height="330" viewBox="0 0 500 300">

<style type="text/css"><![CDATA[
.xAxisLabels
{
color: #000000;
font-family: Arial
}
]]></style>
<title>title</title>
<desc>stuff</desc>
<defs>
    <font-face font-family="Arial">
        <font-face-src>
        <font-face-uri xlink:href="/usr/share/hholdings/fonts/Arial.ttf"/>
        </font-face-src>
    </font-face>
</defs>

<text transform="translate(112.5 300)" class="xAxisLabels">jan</text>
<text transform="translate(204.17 300)" class="xAxisLabels">feb</text>
<text transform="translate(295.84 300)" class="xAxisLabels">mar</text>
<text transform="translate(387.51 300)"  class="xAxisLabels">apr</text>
</svg>

【讨论】:

    猜你喜欢
    • 2017-01-31
    • 2013-06-29
    • 2011-05-06
    • 1970-01-01
    • 2014-07-03
    • 2020-07-05
    • 2016-05-23
    • 2015-09-20
    相关资源
    最近更新 更多