Cómo: Dar formato al texto en documentos
Actualización: noviembre 2007
Se aplica a |
---|
La información de este tema sólo se aplica a los proyectos de Visual Studio Tools para Office y versiones de Microsoft Office especificados. Tipo de proyecto
Versión de Microsoft Office
Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto. |
Puede utilizar el objeto Range para dar formato al texto en un documento de Microsoft Office Word.
En el siguiente ejemplo se selecciona el primer párrafo del documento y se cambia el tamaño y el nombre de la fuente, así como la alineación. Después se selecciona el rango y se muestra un cuadro de mensaje para hacer una pausa antes de ejecutar la siguiente sección del código. En la sección siguiente se llama al método Undo del elemento host (para una personalización de nivel de documento) Microsoft.Office.Tools.Word.Document o a la clase Microsoft.Office.Interop.Word.Document (para un complemento de nivel de aplicación) tres veces. Aplica el estilo Sangría normal y muestra un cuadro de mensaje para pausar el código. A continuación, el código llama una vez al método Undo y presenta un cuadro de mensaje.
Nota: |
---|
Si define estilos para todas sus necesidades de formato, no será necesario escribir tanto código de aplicación de formato. Además, el mantenimiento de los estilos es una tarea más sencilla. Si tiene que cambiar el formato de un documento, sólo necesitará hacerlo en un lugar (el estilo), lo que le evitará tener que realizar búsquedas y reemplazos en todo código. |
Ejemplo de personalización de nivel de documento
Para dar formato al texto mediante una personalización de nivel de documento
El ejemplo siguiente se puede usar en una personalización de nivel de documento. Para usar este código, ejecútelo desde la clase ThisDocument del proyecto.
Private Sub RangeFormat() ' Set the Range to the first paragraph. Dim rng As Word.Range = Me.Paragraphs(1).Range ' Change the formatting. rng.Font.Size = 14 rng.Font.Name = "Arial" rng.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter rng.Select() MessageBox.Show("Formatted Range") ' Undo the three previous actions. Me.Undo(Times:=3) rng.Select() MessageBox.Show("Undo 3 actions") ' Apply the Normal Indent style. rng.Style = "Normal Indent" rng.Select() MessageBox.Show("Normal Indent style applied") ' Undo a single action. Me.Undo() rng.Select() MessageBox.Show("Undo 1 action") End Sub
private void RangeFormat() { // Set the Range to the first paragraph. Word.Range rng = this.Paragraphs[1].Range; // Change the formatting. rng.Font.Size = 14; rng.Font.Name = "Arial"; rng.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter; rng.Select(); MessageBox.Show("Formatted Range"); // Undo the three previous actions. object numTimes3 = 3; this.Undo(ref numTimes3); rng.Select(); MessageBox.Show("Undo 3 actions"); // Apply the Normal Indent style. object indentStyle = "Normal Indent"; rng.set_Style(ref indentStyle); rng.Select(); MessageBox.Show("Normal Indent style applied"); // Undo a single action. object numTimes1 = 1; this.Undo(ref numTimes1); rng.Select(); MessageBox.Show("Undo 1 action"); }
Ejemplo de complemento de nivel de aplicación
Para dar formato al texto mediante un complemento de nivel de aplicación
El ejemplo siguiente se puede usar en un complemento de nivel de aplicación. En este ejemplo se usa el documento activo. Para usar este código, ejecútelo desde la clase ThisAddIn del proyecto.
Private Sub RangeFormat() ' Set the Range to the first paragraph. Dim document As Word.Document = Me.Application.ActiveDocument Dim rng As Word.Range = document.Paragraphs(1).Range ' Change the formatting. rng.Font.Size = 14 rng.Font.Name = "Arial" rng.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter rng.Select() MessageBox.Show("Formatted Range") ' Undo the three previous actions. document.Undo(Times:=3) rng.Select() MessageBox.Show("Undo 3 actions") ' Apply the Normal Indent style. rng.Style = "Normal Indent" rng.Select() MessageBox.Show("Normal Indent style applied") ' Undo a single action. document.Undo() rng.Select() MessageBox.Show("Undo 1 action") End Sub
private void RangeFormat() { // Set the Range to the first paragraph. Word.Document document = this.Application.ActiveDocument; Word.Range rng = document.Paragraphs[1].Range; // Change the formatting. rng.Font.Size = 14; rng.Font.Name = "Arial"; rng.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter; rng.Select(); MessageBox.Show("Formatted Range"); // Undo the three previous actions. object numTimes3 = 3; document.Undo(ref numTimes3); rng.Select(); MessageBox.Show("Undo 3 actions"); // Apply the Normal Indent style. object indentStyle = "Normal Indent"; rng.set_Style(ref indentStyle); rng.Select(); MessageBox.Show("Normal Indent style applied"); // Undo a single action. object numTimes1 = 1; document.Undo(ref numTimes1); rng.Select(); MessageBox.Show("Undo 1 action"); }
Vea también
Tareas
Cómo: Definir y seleccionar rangos en documentos