编译 SVG 以嵌入字形
Compile SVG to embed glyphs
我在网页中有一个 SVG,其中包含使用自定义字体呈现的文本。类似于:
<style>
@font-face {
font-family: MyFont;
src: url(font-files/MyFont.woff2);
}
</style>
<svg version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="55"
height="37">
<defs/>
<g>
<text fill="#000000"
stroke="none"
font-family="MyFont"
font-size="50px"
font-style="normal"
font-weight="normal"
text-decoration="normal"
x="-1"
y="32"
text-anchor="start"
dominant-baseline="alphabetic">
FooBar
</text>
</g>
</svg>
我想将 SVG 导出为独立文件,不包含字体文件。通过嵌入字体文件(如果可能的话)或通过枚举路径和样条线。
我想将其保留为矢量图形。我不想光栅化。
没有 built-in 浏览器方法允许您这样做。
然而,有一些 third-party JS 库可用于读取字体文件和检索字形轮廓。例如:
只要您的 <text>
元素简单,将文本转换为匹配轮廓的 JS 应该相当简单。
我在网页中有一个 SVG,其中包含使用自定义字体呈现的文本。类似于:
<style>
@font-face {
font-family: MyFont;
src: url(font-files/MyFont.woff2);
}
</style>
<svg version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="55"
height="37">
<defs/>
<g>
<text fill="#000000"
stroke="none"
font-family="MyFont"
font-size="50px"
font-style="normal"
font-weight="normal"
text-decoration="normal"
x="-1"
y="32"
text-anchor="start"
dominant-baseline="alphabetic">
FooBar
</text>
</g>
</svg>
我想将 SVG 导出为独立文件,不包含字体文件。通过嵌入字体文件(如果可能的话)或通过枚举路径和样条线。
我想将其保留为矢量图形。我不想光栅化。
没有 built-in 浏览器方法允许您这样做。
然而,有一些 third-party JS 库可用于读取字体文件和检索字形轮廓。例如:
只要您的 <text>
元素简单,将文本转换为匹配轮廓的 JS 应该相当简单。