visibles ver referencias que pie notas marcadores marcador los informatica hipervinculos hacer error definido cruzadas como c# .net ms-word placeholder

ver - Reemplazar marcadores de posición en documento de Word con c#



que es un marcador en informatica (4)

Tengo una plantilla en formato de Word (.docx) y quiero reemplazar algunos marcadores de posición en esta plantilla con mis propios datos, ¿sabe dónde puedo encontrar las clases correctas para este proyecto? Sería bueno para mí saber el espacio de nombres. ¿Existen clases más nuevas para manejar documentos de Word en formato docx (xml) que las clases com? Gracias por todas sus respuestas, espero que alguien pueda ayudarme con mi problema.

saluda

Sebastian


Por cierto, con xml encontré esta solución que encuentra TODOS los nodos sdt

NameTable nt = new NameTable(); XmlNamespaceManager nsManager = new XmlNamespaceManager(nt); nsManager.AddNamespace("w", wordmlNamespace); XmlDocument xDoc = new XmlDocument(); xDoc.Load(doc.MainDocumentPart.GetStream()); XmlNodeList nodeList = xDoc.SelectNodes(@"./w:document/w:body//w:sdt", nsManager);

Funciona, pero ¿el Open XML Format SDK 2.0 no me da ninguna posibilidad de esto?



Los nuevos formatos de oficina (docx, xlsx, etc.) son archivos zip que contienen una colección de archivos xml. Con eso en mente, tienes un par de enfoques.

  1. Puede usar el SDK de Open XML ubicado en http://www.microsoft.com/downloads/details.aspx?FamilyId=AD0B72FB-4A1D-4C52-BDB5-7DD7E816D046&displaylang=en

  2. Puede descomprimir el archivo docx, hacer una búsqueda y reemplazar sus tokens y comprimirlo nuevamente.

Hay un sitio web en openxmldeveloper.org que es solo para este tipo de cosas. Además, tenga en cuenta que ya están enviando una versión beta 2 del SDK.


Usé este:

IEnumerable test2 = from element in body.Elements () donde element.InnerText.Contains ("sdt") select element;