Document

Document class

Representa un documento de Word.

public class Document : DocumentBase

Constructores

Nombre Descripción
Document() Crea un documento de Word en blanco.
Document(Stream) Abre un documento existente de una secuencia. Detecta automáticamente el formato de archivo.
Document(string) Abre un documento existente de un archivo. Detecta automáticamente el formato de archivo.
Document(Stream, LoadOptions) Abre un documento existente de una secuencia. Permite especificar opciones adicionales como una contraseña de cifrado.
Document(string, LoadOptions) Abre un documento existente de un archivo. Permite especificar opciones adicionales como una contraseña de cifrado.

Propiedades

Nombre Descripción
AttachedTemplate { get; set; } Obtiene o establece la ruta completa de la plantilla adjunta al documento.
AutomaticallyUpdateStyles { get; set; } Obtiene o establece un indicador que indica si los estilos del documento se actualizan para coincidir con los estilos de la plantilla adjunta cada vez que se abre el documento en MS Word.
BackgroundShape { get; set; } Obtiene o establece la forma de fondo del documento. Puede ser nulo.
BuiltInDocumentProperties { get; } Devuelve una colección que representa todas las propiedades de documento integradas del documento.
ChildNodes { get; } Obtiene todos los nodos secundarios inmediatos de este nodo.
CompatibilityOptions { get; } Proporciona acceso a las opciones de compatibilidad de documentos (es decir, las preferencias de usuario ingresadas en el Compatibilidad pestaña de la Opciones diálogo en Word).
Compliance { get; } Obtiene la versión de conformidad con OOXML determinada a partir del contenido del documento cargado. Solo tiene sentido para documentos OOXML.
Count { get; } Obtiene el número de hijos inmediatos de este nodo.
CustomDocumentProperties { get; } Devuelve una colección que representa todas las propiedades del documento personalizado del documento.
CustomNodeId { get; set; } Especifica el identificador de nodo personalizado.
CustomXmlParts { get; set; } Obtiene o establece la colección de elementos de almacenamiento de datos XML personalizados.
DefaultTabStop { get; set; } Obtiene o establece el intervalo (en puntos) entre las tabulaciones predeterminadas.
DigitalSignatures { get; } Obtiene la colección de firmas digitales para este documento y sus resultados de validación.
override Document { get; }
EndnoteOptions { get; } Proporciona opciones que controlan la numeración y el posicionamiento de las notas finales en este documento.
FieldOptions { get; } Obtiene un Opciones de campoobjeto que representa opciones para controlar el manejo de campos en el documento.
FirstChild { get; } Obtiene el primer hijo del nodo.
FirstSection { get; } Obtiene la primera sección del documento.
FontInfos { get; } Proporciona acceso a las propiedades de las fuentes utilizadas en este documento.
FontSettings { get; set; } Obtiene o establece la configuración de fuente del documento.
FootnoteOptions { get; } Proporciona opciones que controlan la numeración y el posicionamiento de las notas al pie en este documento.
Frameset { get; } Devuelve unFramesetinstancia si este documento representa una página de marcos.
GlossaryDocument { get; set; } Obtiene o establece el documento del glosario dentro de este documento o plantilla. Un documento de glosario es un almacenamiento para las entradas de Autotexto, Autocorrección y Building Block definidas en un documento.
GrammarChecked { get; set; } Devoluciones verdadero si se ha comprobado la gramática del documento.
HasChildNodes { get; } Devuelve verdadero si este nodo tiene nodos secundarios.
HasMacros { get; } Devoluciones verdadero si el documento tiene un proyecto VBA (macros).
HasRevisions { get; } Devoluciones verdadero si el documento tiene cambios registrados.
HyphenationOptions { get; } Proporciona acceso a las opciones de partición de documentos.
override IsComposite { get; } Devuelve verdadero ya que este nodo puede tener nodos secundarios.
LastChild { get; } Obtiene el último hijo del nodo.
LastSection { get; } Obtiene la última sección del documento.
LayoutOptions { get; } Obtiene un Opciones de diseño objeto que representa opciones para controlar el proceso de maquetación de este documento.
Lists { get; } Proporciona acceso al formato de lista utilizado en el documento.
MailMerge { get; } Devuelve un Unificación de correo objeto que representa la funcionalidad de combinación de correspondencia para el documento.
MailMergeSettings { get; set; } Obtiene o establece el objeto que contiene toda la información de combinación de correspondencia de un documento.
NextSibling { get; } Obtiene el nodo que sigue inmediatamente a este nodo.
NodeChangingCallback { get; set; } Llamado cuando se inserta o elimina un nodo en el documento.
override NodeType { get; } Devoluciones NodeType.Document .
OriginalFileName { get; } Obtiene el nombre de archivo original del documento.
OriginalLoadFormat { get; } Obtiene el formato del documento original que se cargó en este objeto.
PackageCustomParts { get; set; } Obtiene o establece la colección de piezas personalizadas (contenido arbitrario) que están vinculadas al paquete OOXML mediante “relaciones desconocidas”.
PageColor { get; set; } Obtiene o establece el color de página del documento. Esta propiedad es una versión más simple deBackgroundShape .
PageCount { get; } Obtiene el número de páginas del documento calculado por la operación de diseño de página más reciente.
ParentNode { get; } Obtiene el padre inmediato de este nodo.
PreviousSibling { get; } Obtiene el nodo inmediatamente anterior a este nodo.
ProtectionType { get; } Obtiene el tipo de protección de documentos actualmente activo.
Range { get; } Devuelve un Rango objeto que representa la parte de un documento que está contenido en este nodo.
RemovePersonalInformation { get; set; } Obtiene o establece un indicador que indica que Microsoft Word eliminará toda la información del usuario de los comentarios, las revisiones y las propiedades del documento al guardar el documento.
ResourceLoadingCallback { get; set; } Permite controlar cómo se cargan los recursos externos.
Revisions { get; } Obtiene una colección de revisiones (cambios registrados) que existen en este documento.
RevisionsView { get; set; } Obtiene o establece un valor que indica si se trabaja con la versión original o revisada de un documento.
Sections { get; } Devuelve una colección que representa todas las secciones del documento.
ShadeFormData { get; set; } Especifica si se debe activar el sombreado gris en los campos de formulario.
ShowGrammaticalErrors { get; set; } Especifica si mostrar errores gramaticales en este documento.
ShowSpellingErrors { get; set; } Especifica si mostrar errores ortográficos en este documento.
SpellingChecked { get; set; } Devoluciones verdadero si se ha revisado la ortografía del documento.
Styles { get; } Devuelve una colección de estilos definidos en el documento.
Theme { get; } Obtiene elTheme objeto para este documento.
TrackRevisions { get; set; } Verdadero si se realiza un seguimiento de los cambios cuando se edita este documento en Microsoft Word.
Variables { get; } Devuelve la colección de variables añadidas a un documento o plantilla.
VbaProject { get; set; } Obtiene o establece unVbaProject .
VersionsCount { get; } Obtiene el número de versiones del documento que se almacenó en el documento DOC.
ViewOptions { get; } Proporciona opciones para controlar cómo se muestra el documento en Microsoft Word.
WarningCallback { get; set; } Llamado durante varios procedimientos de procesamiento de documentos cuando se detecta un problema que podría resultar en datos o pérdida de fidelidad de formato.
Watermark { get; } Proporciona acceso a la marca de agua del documento.
WebExtensionTaskPanes { get; } Devuelve una colección que representa una lista de complementos del panel de tareas.
WriteProtection { get; } Proporciona acceso a las opciones de protección contra escritura del documento.

Métodos

Nombre Descripción
override Accept(DocumentVisitor) Acepta un visitante.
AcceptAllRevisions() Acepta todos los cambios registrados en el documento.
AppendChild(Node) Agrega el nodo especificado al final de la lista de nodos secundarios para este nodo.
AppendDocument(Document, ImportFormatMode) Agrega el documento especificado al final de este documento.
AppendDocument(Document, ImportFormatMode, ImportFormatOptions) Agrega el documento especificado al final de este documento.
Cleanup() Limpia estilos y listas no utilizados del documento.
Cleanup(CleanupOptions) Limpia estilos y listas no utilizados del documento dependiendo deCleanupOptions .
Clone() Realiza una copia profunda delDocument .
Clone(bool) Crea un duplicado del nodo.
Compare(Document, string, DateTime) Compara este documento con otro documento produciendo cambios como número de ediciones y revisiones de formatoRevision .
Compare(Document, string, DateTime, CompareOptions) Compara este documento con otro documento produciendo cambios como una serie de revisiones de edición y formatoRevision . Permite especificar opciones de comparación medianteCompareOptions .
CopyStylesFromTemplate(Document) Copia estilos de la plantilla especificada a un documento.
CopyStylesFromTemplate(string) Copia estilos de la plantilla especificada a un documento.
CreateNavigator() Reservado para uso del sistema. IXPathNavigable.
EnsureMinimum() Si el documento no contiene secciones, crea una sección con un párrafo.
ExpandTableStylesToDirectFormatting() Convierte el formato especificado en los estilos de tabla en formato directo en las tablas del documento.
ExtractPages(int, int) Devuelve elDocument objeto que representa el rango especificado de páginas.
GetAncestor(NodeType) Obtiene el primer ancestro del especificadoNodeType .
GetAncestor(Type) Obtiene el primer ancestro del tipo de objeto especificado.
GetChild(NodeType, int, bool) Devuelve un enésimo nodo secundario que coincide con el tipo especificado.
GetChildNodes(NodeType, bool) Devuelve una colección activa de nodos secundarios que coinciden con el tipo especificado.
GetEnumerator() Proporciona soporte para la iteración de cada estilo sobre los nodos secundarios de este nodo.
GetPageInfo(int) Obtiene el tamaño de página, la orientación y otra información sobre una página que podría ser útil para imprimir o renderizar.
override GetText() Obtiene el texto de este nodo y de todos sus hijos.
ImportNode(Node, bool) Importa un nodo de otro documento al documento actual.
ImportNode(Node, bool, ImportFormatMode) Importa un nodo de otro documento al documento actual con una opción para controlar el formato.
IndexOf(Node) Devuelve el índice del nodo secundario especificado en la matriz de nodos secundarios.
InsertAfter(Node, Node) Inserta el nodo especificado inmediatamente después del nodo de referencia especificado.
InsertBefore(Node, Node) Inserta el nodo especificado inmediatamente antes del nodo de referencia especificado.
JoinRunsWithSameFormatting() Une tiradas con el mismo formato en todos los párrafos del documento.
NextPreOrder(Node) Obtiene el siguiente nodo de acuerdo con el algoritmo de recorrido del árbol de pedido previo.
NormalizeFieldTypes() Cambia los valores del tipo de campoFieldType deFieldStart ,FieldSeparator ,FieldEnd en todo el documento para que correspondan a los tipos de campo contenidos en los códigos de campo.
PrependChild(Node) Agrega el nodo especificado al principio de la lista de nodos secundarios para este nodo.
PreviousPreOrder(Node) Obtiene el nodo anterior de acuerdo con el algoritmo de recorrido del árbol de pedido previo.
Print() Imprime todo el documento en la impresora predeterminada.
Print(PrinterSettings) Imprime el documento de acuerdo con la configuración de impresora especificada, utilizando el controlador de impresión estándar (sin interfaz de usuario).
Print(string) Imprima todo el documento en la impresora especificada, utilizando el controlador de impresión estándar (sin interfaz de usuario).
Print(PrinterSettings, string) Imprime el documento de acuerdo con la configuración de impresora especificada, utilizando el controlador de impresión estándar (sin interfaz de usuario) y un nombre de documento.
Protect(ProtectionType) Protege el documento de cambios sin cambiar la contraseña existente o asigna una contraseña aleatoria.
Protect(ProtectionType, string) Protege el documento de cambios y opcionalmente establece una contraseña de protección.
Remove() Se elimina a sí mismo del padre.
RemoveAllChildren() Elimina todos los nodos secundarios del nodo actual.
RemoveChild(Node) Elimina el nodo secundario especificado.
RemoveExternalSchemaReferences() Elimina las referencias del esquema XML externo de este documento.
RemoveMacros() Elimina todas las macros (el proyecto VBA), así como las barras de herramientas y las personalizaciones de comandos del documento.
RemoveSmartTags() Elimina todoSmartTag nodos descendientes del nodo actual.
RenderToScale(int, Graphics, float, float, float) Convierte una página de documento en unGraphics objeto a una escala especificada.
RenderToSize(int, Graphics, float, float, float, float) Convierte una página de documento en unGraphics objeto a un tamaño especificado.
Save(string) Guarda el documento en un archivo. Determina automáticamente el formato de guardado de la extensión.
Save(Stream, SaveFormat) Guarda el documento en una secuencia utilizando el formato especificado.
Save(Stream, SaveOptions) Guarda el documento en una secuencia usando las opciones de guardado especificadas.
Save(string, SaveFormat) Guarda el documento en un archivo en el formato especificado.
Save(string, SaveOptions) Guarda el documento en un archivo usando las opciones de guardado especificadas.
Save(HttpResponse, string, ContentDisposition, SaveOptions) Envía el documento al navegador del cliente.
SelectNodes(string) Selecciona una lista de nodos que coinciden con la expresión XPath.
SelectSingleNode(string) Selecciona el primer nodo que coincide con la expresión XPath.
StartTrackRevisions(string) Comienza a marcar automáticamente todos los cambios adicionales que realice en el documento mediante programación como cambios de revisión.
StartTrackRevisions(string, DateTime) Comienza a marcar automáticamente todos los cambios adicionales que realice en el documento mediante programación como cambios de revisión.
StopTrackRevisions() Detiene el marcado automático de los cambios del documento como revisiones.
ToString(SaveFormat) Exporta el contenido del nodo a una cadena en el formato especificado.
ToString(SaveOptions) Exporta el contenido del nodo a una cadena utilizando las opciones de guardado especificadas.
UnlinkFields() Desvincula campos de todo el documento.
Unprotect() Elimina la protección del documento independientemente de la contraseña.
Unprotect(string) Elimina la protección del documento si se especifica una contraseña correcta.
UpdateFields() Actualiza los valores de los campos en todo el documento.
UpdateListLabels() Actualiza las etiquetas de la lista para todos los elementos de la lista en el documento.
UpdatePageLayout() Reconstruye el diseño de página del documento.
UpdateThumbnail() ActualizacionesThumbnail del documento usando las opciones predeterminadas.
UpdateThumbnail(ThumbnailGeneratingOptions) ActualizacionesThumbnail del documento según las opciones especificadas.
UpdateWordCount() Actualiza las propiedades de recuento de palabras del documento.
UpdateWordCount(bool) Actualiza las propiedades de recuento de palabras del documento, opcionalmente actualizaLines propiedad.

Observaciones

los Documento es un objeto central en la biblioteca Aspose.Words.

Para cargar un documento existente en cualquiera de losLoadFormat formatos, pase un nombre de archivo o una secuencia a uno de los Documento constructores Para crear un documento en blanco, llame al constructor sin parámetros.

Use una de las sobrecargas del método Save para guardar el documento en cualquiera de los SaveFormat formatos.

Para dibujar páginas de documentos directamente en un Gráficos objeto use RenderToScale oRenderToSize método.

Para imprimir el documento, utilice uno de losPrintmétodos.

MailMerge es el motor de generación de informes de Aspose.Words que permite poblar informes diseñados en Microsoft Word con datos de varias fuentes de datos de forma rápida y sencilla. Los datos pueden ser de un DataSet, DataTable, DataView, IDataReader o una matriz de valores. Unificación de correo revisará los registros que se encuentran en la fuente de datos y los insertará en los campos de combinación de correo en el documento y lo ampliará según sea necesario.

Documento almacena información de todo el documento, comoStyles , BuiltInDocumentProperties ,CustomDocumentProperties , listas y macros. La mayoría de estos objetos son accesibles a través de las propiedades correspondientes del Documento.

los Documentoes un nodo raíz de un árbol que contiene todos los demás nodos del documento. El árbol es un patrón de diseño compuesto y, en muchos aspectos, similar a XmlDocument. El contenido del documento se puede manipular libremente mediante programación:

  • Se puede acceder a los nodos del documento a través de colecciones escritas, por ejemploSections , ParagraphCollection etc.
  • Los nodos del documento se pueden seleccionar por su tipo de nodo usando GetChildNodes o usando una consulta XPath conSelectNodes oSelectSingleNode.
  • Los nodos de contenido se pueden agregar o eliminar desde cualquier parte del documento usando InsertBefore ,InsertAfter , RemoveChild y otros métodos proporcionados por la clase baseCompositeNode.
  • Los atributos de formato de cada nodo se pueden cambiar a través de las propiedades de ese nodo.

Considere usarDocumentBuilder eso simplifica la tarea de crear programáticamente o llenar el árbol del documento.

los Documento solo puede contenerSection objetos.

En Microsoft Word, un documento válido debe tener al menos una sección.

Ejemplos

Muestra cómo ejecutar una combinación de correspondencia con datos de un DataTable.

public void ExecuteDataTable()
{
    DataTable table = new DataTable("Test");
    table.Columns.Add("CustomerName");
    table.Columns.Add("Address");
    table.Rows.Add(new object[] { "Thomas Hardy", "120 Hanover Sq., London" });
    table.Rows.Add(new object[] { "Paolo Accorti", "Via Monte Bianco 34, Torino" });

    // A continuación se muestran dos formas de usar un DataTable como fuente de datos para una combinación de correspondencia.
    // 1: use la tabla completa para la combinación de correspondencia para crear un documento de combinación de correspondencia de salida para cada fila de la tabla:
    Document doc = CreateSourceDocExecuteDataTable();

    doc.MailMerge.Execute(table);

    doc.Save(ArtifactsDir + "MailMerge.ExecuteDataTable.WholeTable.docx");

    // 2 - Utilice una fila de la tabla para crear un documento de combinación de correspondencia de salida:
    doc = CreateSourceDocExecuteDataTable();

    doc.MailMerge.Execute(table.Rows[1]);

    doc.Save(ArtifactsDir + "MailMerge.ExecuteDataTable.OneRow.docx");
}

/// <summary>
/// Crea un documento de origen de combinación de correspondencia.
/// </summary>
private static Document CreateSourceDocExecuteDataTable()
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    builder.InsertField(" MERGEFIELD CustomerName ");
    builder.InsertParagraph();
    builder.InsertField(" MERGEFIELD Address ");

    return doc;
}

Ver también