Principales respuestas
ayuda con word y openxml

Pregunta
-
holas, mi problema el siguiente, nesesito meter un html en un archivo de word. esto lo logro usando open xml y aqui esta mi codigo:
public void MergeSourceDocument(string sourceFile, string destinationFile) { using (WordprocessingDocument myDoc = WordprocessingDocument.Open(destinationFile, true )) { MainDocumentPart mainPart = myDoc.MainDocumentPart; SdtBlock sdt = mainPart.Document.Descendants<SdtBlock>().Where(s => s.SdtProperties.GetFirstChild<SdtAlias>().Val.Value.Equals("pruebaHTML" )).First(); string altChunkId = "AltChunkId1" ; AlternativeFormatImportPart chunk = mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.WordprocessingML, altChunkId); using (FileStream fileStream = File.Open(sourceFile, FileMode.Open)) chunk.FeedData(fileStream); AltChunk altChunk = new AltChunk(); altChunk.Id = altChunkId; OpenXmlElement parent = sdt.Parent; parent.InsertAfter(altChunk, sdt); mainPart.Document.Save(); myDoc.Close(); } }
el problema es que cuando abro el word me da error y al descomprimirlo con win rar, veo que el "altChunk" me lo guarda con extencion .docx y si lo cambio a .html me anda bien.
mi pregunta es la siguite:
hay alguna manera de que por codigo pueda guardar el "altchunk" con extencion .html
PD: estoy usando C#
- Editado Enzo_ovi viernes, 17 de septiembre de 2010 22:03 linea de mas
Respuestas
-
al final era algo muy sencillo que no me di cuenta.
remplaze esto:
AlternativeFormatImportPart chunk = mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.WordprocessingML, altChunkId);
por esto:
AlternativeFormatImportPart chunk = mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.HTML, altChunkId);
- Marcado como respuesta Enzo_ovi jueves, 21 de octubre de 2010 23:29
Todas las respuestas
-
-
al final era algo muy sencillo que no me di cuenta.
remplaze esto:
AlternativeFormatImportPart chunk = mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.WordprocessingML, altChunkId);
por esto:
AlternativeFormatImportPart chunk = mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.HTML, altChunkId);
- Marcado como respuesta Enzo_ovi jueves, 21 de octubre de 2010 23:29