[英]Error while trying to insert image in to wordML
需要帮助。
我收到此错误
{"The xml has invalid content and cannot be constructed as an element.\r\nParameter name: outerXml"}
像这样将构造的 xml 传递给 DocumentFormat.OpenXml.Office.Drawing.Drawing() 构造函数时
DocumentFormat.OpenXml.Office.Drawing.Drawing d = new DocumentFormat.OpenXml.Office.Drawing.Drawing(img);
这是传入的xml
<w:drawing xmlns:w="http://schemas.openxmlformats.org/drawingml/2006/main">
<wp:anchor distT="0" distB="0" distL="114300" distR="114300" simplePos="0" relativeHeight="251658240" behindDoc="0" locked="0" layoutInCell="1" allowOverlap="1" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
<wp:simplePos x="0" y="0"/>
<wp:positionH relativeFrom="column">
<wp:align>right</wp:align>
</wp:positionH>
<wp:positionV relativeFrom="paragraph">
<wp:align>top</wp:align>
</wp:positionV>
<wp:extent cx="400" cy="400"/>
<wp:effectExtent l="19050" t="0" r="0" b="0"/>
<wp:wrapSquare wrapText="bothSides"/>
<wp:docPr id="1" name="image"/>
<wp:cNvGraphicFramePr>
<a:graphicFrameLocks noChangeAspect="1" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
</wp:cNvGraphicFramePr>
<a:graphic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
<a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">
<pic:pic xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture">
<pic:nvPicPr>
<pic:cNvPr id="0" name="image"/>
<pic:cNvPicPr>
<a:picLocks noChangeAspect="1" noChangeArrowheads="1"/>
</pic:cNvPicPr>
</pic:nvPicPr>
<pic:blipFill>
<a:blip r:embed="rIdImg4" cstate="print" xmlns:r="http://schemas.openxmlformats.org/drawingml/2006/relationships"/>
<a:stretch>
<a:fillRect/>
</a:stretch>
</pic:blipFill>
<pic:spPr bwMode="auto">
<a:xfrm>
<a:off x="0" y="0"/>
<a:ext cx="400" cy="400"/>
</a:xfrm>
<a:prstGeom prst="rect">
<a:avLst/>
</a:prstGeom>
<a:noFill/>
<a:ln w="9525">
<a:noFill/>
<a:miter lim="800000"/>
<a:headEnd/>
<a:tailEnd/>
</a:ln>
</pic:spPr>
</pic:pic>
</a:graphicData>
</a:graphic>
</wp:anchor>
</w:drawing>
谢谢,基留
您从 XML 创建的元素位于 Drawing 命名空间内。 (经常看到使用“a:”前缀。)从 OuterXml 字符串创建这些元素时,根节点必须与正在创建的对象的类型相对应。 (在本例中为 DocumentFormat.OpenXml.Office.Drawing.Drawing)。 这里的问题是 XML 根节点用于不同的元素。
尝试创建 DocumentFormat.OpenXml.WordProcessing.Drawing() 对象: http : //msdn.microsoft.com/en-us/library/documentformat.openxml.wordprocessing.drawing.aspx
找到合适的级别来注入drawingML 可能很困难。 拿出OpenXmlSDK工具看看在哪些节点下有效。 祝你好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.