使未安装字体的用户可以查看具有自定义字体的SVG文件 - c#

我已经实现了svg-edit的自定义版本,并在svg-font-loader之上。当用户编辑SVG文件时,由于使用svg-font-loader,自定义字体可以很好地工作(在加载SVG字符串之前,我只是在编辑器上预加载了必需的自定义字体)。

用户完成编辑后,我将新的SVG字符串保存到文件系统中(使用XDocument's Parse()Save()

然后,我需要在<img>标记内向用户显示此SVG文件,但是除非用户将其安装在其计算机上,否则字体将无法工作。

保存到文件系统之前,如何编码SVG字符串(Base64或?),使其正确显示?我是否需要解析SVG字符串并仅对某些部分进行编码?有没有我可以使用的工具?

编辑:或者,如果我在服务器上安装了字体,是否有办法在服务器端将SVG序列化为PNG,然后显示出来?这行得通吗?

参考方案

您可以通过使用svg中的webfonts来实现。保存svg时,只需写出一个@ font-face stylerule,其自定义字体为base64编码。

这是example。

javascript popupwindow之后的行如何工作? - javascript

好的,我有一个来自后面代码的方法,可以创建一个popupwindow。然后有一行代码要在那之后执行,我想知道那行代码何时执行,是在使用popupwindow之后执行还是在创建popupwindow之后执行?例如:void exPopupWindowMethod() { string scr = "window.open('exampleP…

Javascript-Urls的奇怪字符串比较行为 - javascript

最近,在编写我无法理解的javascript时遇到了字符串比较的问题。我从完全相同的网址创建了两个字符串,当我比较它们时返回false,但是在重新分配相同的字符串后,比较返回true。这是我的示例:var str1 = "http://google.com/"; var str2 = "http://google.com‏/&#…

Javascript-从当前网址中删除查询字符串 - javascript

单击提交按钮后,我需要从网址中删除查询字符串值。我可以用jQuery做到这一点吗?当前网址:siteUrl/page.php?key=value 页面提交后:siteUrl/page.php 实际上,我已经从另一个带有查询字符串的页面着陆到当前页面。我需要在页面首次加载时查询字符串值以预填充一些详细信息。但是,一旦我提交了表格,我就需要删除查询字符串值。我已…

Javascript IF语句 - javascript

                        嗨,我有这段代码可以正常工作,并将两个日历显示为一个日历。我还有一个php变量$login_session,其中包含登录电子邮件地址的用户。关于如何显示[email protected]日历的任何想法(伪代码)IF $login_session == "[email protected]&#…

如何根据手势滚动网页 - javascript

如何使用pyhton / javascript使用手势向上/向下或向左/向右滚动页面。我尝试了很多找到解决方案,但无法解决。 参考方案 Javascript手势插件(JSHG)是一个很棒的插件,它使您可以通过现有网站或Web应用程序中的网络摄像头来支持用户的手势识别。您无需具有计算机视觉的任何背景即可使用此插件。当前,它提供了一组基本的手势,其中包括手的位置…