Compartir a través de


Cómo: Ocultar 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

  • Proyectos de nivel de documento

  • Proyectos de nivel de aplicación

Versión de Microsoft Office

  • Word 2003

  • Word 2007

Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto.

Puede ocultar texto de un documento si establece la propiedad Hidden de Font para un intervalo determinado de texto.

Por ejemplo, puede ocultar temporalmente el texto de Microsoft.Office.Tools.Word.Bookmark (en una personalización de nivel de documento) o de Microsoft.Office.Interop.Word.Bookmark (en un complemento de nivel de aplicación), antes de enviar el documento a la impresora.

Para ocultar texto en un control Bookmark mientras imprime el documento

  1. Cree un procedimiento que oculte todo el texto del intervalo especificado.

    Shared Sub HideText(ByVal rng As Word.Range)
        rng.Font.Hidden = True
    End Sub
    
    static void HideText(Word.Range rng)
    {
        rng.Font.Hidden = 1;  // 1 = True
    }
    
  2. Cree un procedimiento que muestre todo el texto del intervalo especificado.

    Shared Sub UnhideText(ByVal rng As Word.Range)
        rng.Font.Hidden = False
    End Sub
    
    static void UnhideText(Word.Range rng)
    {
        rng.Font.Hidden = 0;  // 0 = False
    }
    
  3. Pase el intervalo de un marcador al método HideText, imprima el documento y, a continuación, pase el mismo intervalo al método UnhideText.

    El ejemplo de código siguiente se puede usar en una personalización de nivel de documento. Para usar este ejemplo, ejecútelo desde la clase ThisDocument del proyecto.

    HideText(Bookmark1.Range)
    
    Me.PrintOut()
    
    UnhideText(Bookmark1.Range)
    
    HideText(bookmark1.Range);
    
    object oTrue = true;
    object oFalse = false;
    object range = Word.WdPrintOutRange.wdPrintAllDocument;
    object items = Word.WdPrintOutItem.wdPrintDocumentContent;
    object copies = "1";
    object pages = "";
    object pageType = Word.WdPrintOutPages.wdPrintAllPages;
    
    this.PrintOut(
        ref oTrue, ref oFalse, ref range, ref missing, ref missing, ref missing,
        ref items, ref copies, ref pages, ref pageType, ref oFalse, ref oTrue,
        ref missing, ref oFalse, ref missing, ref missing, ref missing, ref missing);
    
    UnhideText(bookmark1.Range);
    

    El ejemplo de código siguiente se puede usar en un complemento de nivel de aplicación. En este ejemplo se usa el documento activo. Para usar el ejemplo, ejecútelo desde la clase ThisAddIn del proyecto.

    HideText(Bookmark1.Range)
    Me.Application.ActiveDocument.PrintOut()
    UnhideText(Bookmark1.Range)
    
    HideText(bookmark1.Range);
    
    object oTrue = true;
    object oFalse = false;
    object range = Word.WdPrintOutRange.wdPrintAllDocument;
    object items = Word.WdPrintOutItem.wdPrintDocumentContent;
    object copies = "1";
    object pages = "";
    object pageType = Word.WdPrintOutPages.wdPrintAllPages;
    
    this.Application.ActiveDocument.PrintOut(
        ref oTrue, ref oFalse, ref range, ref missing, ref missing, ref missing,
        ref items, ref copies, ref pages, ref pageType, ref oFalse, ref oTrue,
        ref missing, ref oFalse, ref missing, ref missing, ref missing, ref missing);
    
    UnhideText(bookmark1.Range);
    

Compilar el código

En este ejemplo de código se supone que el documento contiene un control Microsoft.Office.Tools.Word.Bookmark (en un complemento de nivel de aplicación) o el control Microsoft.Office.Interop.Word.Bookmark (en una personalización de nivel de documento) que se denomina bookmark1.

Vea también

Tareas

Cómo: Imprimir documentos

Cómo: Definir y seleccionar rangos en documentos

Cómo: Establecer rangos en documentos de Word

Cómo: Actualizar el texto del marcador

Conceptos

Descripción de los parámetros opcionales en las soluciones de Office