Biblioteca para ver archivos de Word en .Net

¿Qué bibliotecas están disponibles para abrir y editar gráficamente archivos .docx? Necesito presentar los formularios provistos como archivos de Word, mostrárselos al usuario y dejar que completen los campos, y luego imprimirlos.

Pude rastrear Infragistics XamRichTextEditor, que está bien pero no exporta a PDF/XPS para imprimir, y también parece bastante defectuoso en mis pruebas.

La otra opción son los servicios de interoperabilidad de Microsoft, el problema es que no todos los clientes tienen instalada una versión actualizada de Word para usarlo.

¿Hay otras bibliotecas de software disponibles? La mayoría que he encontrado son solo para editar archivos mediante programación (Aspose, Gembox, etc.). El costo no es una gran preocupación siempre que no supere los 10 000-15 000 $ por la licencia.

OpenOffice puede tener una API de .NET, consulte stackoverflow.com/questions/390006/openoffice-and-net . Por supuesto, los usuarios tendrían que instalarlo, pero al menos es gratis.
Uso openxml para manejar datos en archivos docx. Sin embargo, no es la mejor opción para la edición del usuario, al igual que los ejemplos que das.
Uno excelente es NOV RTF , lee el archivo docx, le permite editar el archivo y, como si lo estuviera editando en Word, lo exporta a archivos PDF.

Respuestas (2)

Me conformé con DevExpress , que tiene un excelente componente de edición de texto para WPF, que está a la altura de la competencia, con soporte de diseño fijo, impresión, exportación/importación de decenas de formatos. No es perfecto pero mucho, mucho mejor que la competencia que he visto.

Otra opción es utilizar el SDK de documentos de LEADTOOLS

El SDK tiene un visor de documentos, un convertidor de documentos y un marcado de documentos (anotaciones).

Puede descargar una evaluación gratuita de 60 días del SDK y hay una demostración en línea con la que puede cargar sus archivos para probar aquí:

Demostración del visor de documentos interactivo LEADTOOLS

Descargo de responsabilidad: soy un empleado de este producto