Help needed.
I am getting this error
{"The xml has invalid content and cannot be constructed as an element.\r\nParameter name: outerXml"}
while passing constructed xml in to DocumentFormat.OpenXml.Office.Drawing.Drawing() constructor like this
DocumentFormat.OpenXml.Office.Drawing.Drawing d = new DocumentFormat.OpenXml.Office.Drawing.Drawing(img);
Here is the xml which is passed in
<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>
Thanks, Kiru
The element you are creating from the XML is within the Drawing namespace. (Often seen using the "a:" prefix.) When creating these elements from OuterXml strings the root node must correspond with the type of the object being created. (In this case a DocumentFormat.OpenXml.Office.Drawing.Drawing). The problem here is that the XML root node is for a different element.
Try creating a DocumentFormat.OpenXml.WordProcessing.Drawing() object: http://msdn.microsoft.com/en-us/library/documentformat.openxml.wordprocessing.drawing.aspx
It can be difficult finding the right level at which to inject the drawingML. Get out the OpenXmlSDK tool to see what is valid under which nodes. Best of luck!