【问题标题】:Why svg font is mirrored?为什么 svg 字体是镜像的?
【发布时间】:2013-01-07 20:16:45
【问题描述】:

我有元素 <path d="..." /> 的 SVG 文件

我已将该文件转换为 SVG 字体:

<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg">
    <defs>
        <font id="somefont" horiz-adv-x="1000">
            <font-face font-family="somefont" units-per-em="1000"/>
            <glyph unicode="a" d="..."/>
        </font>
    </defs>
</svg>

属性d没有改变,但字体被x轴镜像。

为什么会发生这种情况以及如何解决?

【问题讨论】:

    标签: svg svg-font


    【解决方案1】:

    “与 SVG 中的标准图形不同,其中初始坐标系的 y 轴指向下方(请参阅初始坐标系),SVG 字体的设计网格以及字形的初始坐标系,为了与许多流行字体格式的公认行业惯例保持一致,y 轴指向上方。”

    来源:http://www.w3.org/TR/SVG/fonts.html

    【讨论】:

      【解决方案2】:

      可以使用该脚本转换为正确的字形:

      #!/usr/bin/env fontforge
      Open("source.svg")
      Generate("converted.svg")
      

      【讨论】:

      • 感谢您的建议,FontForge 是一个很好的建议,但这是真的吗?它只是在FontForge中打开并再次保存,但如果原始字体倒置,则生成的字体也是。此脚本不会翻转字体。还应该注意的是,FontForge 确实可以一次翻转字体中的所有(选定的)字形——只需使用 FontForge 的 GUI。
      • @Ideogram 您能否详细说明如何以这种方式转换/旋转整个字体?我只是偶然发现了同样的需求。
      • 对我不起作用。然而,FontForge 似乎还有另一个程序可以提供帮助:stackoverflow.com/a/26469776/793476
      猜你喜欢
      • 1970-01-01
      • 2015-09-22
      • 2020-09-24
      • 1970-01-01
      • 2015-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-20
      相关资源
      最近更新 更多