微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在SVG图片中插入元数据“标记”-这可能吗?

如何解决在SVG图片中插入元数据“标记”-这可能吗?

| 我已经为Android创建了一个SVG图像解析器类,该类运行良好,并且对于我想要的目的而言已经非常完整。我当前正在编写的应用程序利用了我事先在Inkscape中设计的建筑平面图。现在,我想做的是能够标记计划中的特定X,Y点,这些点将不会呈现,而只是用来通知软件应用程序计划中特定点的位置。这样一来,应用程序就可以在运行时以编程方式在这些点处放置各种标记。 它的实际编码不是问题;尽管我可以使用各种对象,但目前我已经可以使用文本字符串使用它了。我要做的是放置一个文本字符串,然后给该文本字符串的ID属性指定一个特殊的前缀,例如\“ _ Meta \”。然后,我的SVG解析器将识别该前缀,并记录字符串的X,Y坐标以及我在ID属性中放在“ _Meta”前缀之后的任何其他元数据。该字符串不会呈现到屏幕上。它纯粹是用来告诉软件某个特定点。 这行得通,我可以高兴地继续这样做,但是我想知道的是,是否有更“正确”或更优雅的方式来做到这一点。我查看了SVG规范,对标准元数据标签的理解是它们仅能够传达有关图像的信息。据我所知,没有一种对象专门用于标记任何X,Y点。使用对象的ID字段来传递程序解析的信息是可行的,但是似乎有点错误并且滥用ID属性的作用。 我应该考虑其他方法吗? 谢谢, 特雷夫     

解决方法

        目前尚无标记svg中特定兴趣点的元素。然而,在SVG工作组中已经在想要例如连接表示图中的节点的元素的上下文中讨论了添加点元素。 您可以使用以下两种方法之一: 数据的自定义命名空间元素和/或属性
\'role\'
属性及其相关属性,请参见此处 就像您已经做过的那样,在\'id \'内的值,请注意并非所有字符都可以在\'id \'属性内使用 data- *属性(假定这些属性将变得更常见,因为HTML5允许使用这些属性,即使根据SVG规范它尚未生效) 无论如何,要注意的是使用自定义的非命名间隔属性和元素,因为这可能与将来向SVG规范中添加内容冲突。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。