我的 SVG 文件由于某种原因具有超过 256 个深度嵌套元素,并且阻止了 Delphi 加载 SVG 文件,因为它违反了 MSXML 的 MaxElementDepth 约束(默认值为 256)。
有谁知道如何在运行的程序中将 MSXML 中的 MaxElementDepth 值设置得更高,以便我可以读取 SVG 文件?
我尝试了替代 CoDOMDocument40,它有一个用于设置属性的方法 (setProperty),但当我尝试设置 MaxElementDepth 时,它报告无效的属性名称。
我能想到的其他选择是运行命令行工具来扁平化层次结构,但我不想这样做......
非常感谢您的帮助:-)
最佳答案
看来您应该使用 CoDOMDocument60
而不是 CoDOMDocument40
:
This property is supported in MSXML 3.0 and 6.0. The default value is 0 for 3.0. The default value is 256 for 6.0.
关于Delphi XE3,如何设置 MSXML MaxElementDepth 以允许读取深层 XML 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13567607/