【问题标题】:SVG validation in JavaJava 中的 SVG 验证
【发布时间】:2017-12-16 08:35:24
【问题描述】:

有没有一种方法或代码 sn-p 可以用来在 java 或 groovy 中进行 SVG 代码验证?

代码应检查是否上传了错误的 SVG 代码。

例如:以下代码没有结束符号标记(</symbol>),因此在从表单保存数据时应该通过错误。

<symbol id="sym01" viewBox="0 0 150 110">
  <circle cx="50" cy="50" r="40" stroke-width="8"
      stroke="red" fill="red"/>
  <circle cx="90" cy="60" r="40" stroke-width="8"
      stroke="green" fill="white"/>

【问题讨论】:

  • 任何 XML 解析器都可以验证某些内容是有效的 XML。

标签: java validation svg groovy


【解决方案1】:

在 Groovy 中,如果片段格式不正确,仅尝试使用 XmlSlurper 解析片段将失败,例如

def badXml = '''<symbol id="sym01" viewBox="0 0 150 110">
  <circle cx="50" cy="50" r="40" stroke-width="8"
      stroke="red" fill="red"/>
  <circle cx="90" cy="60" r="40" stroke-width="8"
      stroke="green" fill="white"/>'''

def x = new XmlSlurper().parseText( badXml )

会抛出以下异常:

捕获:org.xml.sax.SAXParseException;行号:5;列号: 36; XML 文档结构必须在同一个实体内开始和结束。

【讨论】:

    猜你喜欢
    • 2022-11-10
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-17
    • 2020-05-25
    相关资源
    最近更新 更多