2013-03-27 110 views
0

我有一个看起来像这样的xml文档。使用XSLT&C将图像(字节[])插入Word文档#

<?xml version="1.0" encoding="UTF-8"?> 
    <Job> 
     <ID>1</ID> 
     <Name>Front Window<Name> 
     <Image>/9j/4AAQSkZJRgABAQ..(etc)</windowImage> 
    </job> 
    <Job> 
     <ID>2</ID> 
     <Name>BackWindow<Name> 
     <Image>/9j/4BAQSkZJRgABAQ..(etc)</windowImage> 
    </job> 
</xml> 

另外一个循环遍历每个作业的XSLT文件。我的问题是如何插入保存为byte []的图像?它们只保存在数据库中,并且没有为它们创建文件,因为它们是在应用程序中生成的。我的C#代码看起来像这样。

Job jobClass = new ReportSQL().createXMLclass(_jobID); 
new ReportSQL().createXMLFile(jobClass); 
XslCompiledTransform xslt = new XslCompiledTransform(); 
xslt.Load(@"Code\quoteTemplate.xslt"); 
xslt.Transform("xmlfile.xml", "doc.doc"); 

回答

0

我认为您要生成的XML将图像保存为文本。这可以通过编码的ByteArray为Base64来完成:

String s = Convert.ToBase64String(byte[]) 

byte[] b = Convert.FromBase64String(String) 
+0

它已经产生他们的字符串。我想知道如何使用openXML – Hazel 2013-03-27 19:34:42

+0

作为图像中的图像显示字符串作为图像中的数据url?在HTML中,你可以做 Joep 2013-03-27 22:27:12