Condividi tramite


Nascondere testo nei documenti a livello di codice

È possibile nascondere testo in un documento impostando la proprietà Hidden di un controllo Font per un intervallo di testo determinato.

Ad esempio, è possibile nascondere temporaneamente il testo all'interno di un Bookmark oggetto (in una personalizzazione a livello di documento) o ( Bookmark in un componente aggiuntivo VSTO) prima di inviare un documento a una stampante.

Si applica a: le informazioni contenute in questo argomento si applicano ai progetti a livello di documento e ai progetti di componente aggiuntivo VSTO per Word. Per altre informazioni, vedere Funzionalità disponibili per app Office lication e tipo di progetto.

Per nascondere testo in un controllo Bookmark mentre si stampa il documento

  1. Creare una routine che nasconda tutto il testo che rientra in un intervallo specificato.

    static void HideText(Word.Range rng)
    {
        rng.Font.Hidden = 1;  // 1 = True
    }
    
  2. Creare una routine che scopra tutto il testo che rientra in un intervallo specificato.

    static void UnhideText(Word.Range rng)
    {
        rng.Font.Hidden = 0;  // 0 = False
    }
    
  3. Passare l'intervallo di un segnalibro al metodo HideText , stampare il documento e quindi passare lo stesso intervallo al metodo UnhideText .

    L'esempio di codice seguente può essere usato in una personalizzazione a livello di documento. Per usare questo esempio, eseguirlo dalla classe ThisDocument nel progetto.

    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);
    

    L'esempio di codice seguente può essere usato in un componente aggiuntivo VSTO. L'esempio usa il documento attivo. Per usare l'esempio, eseguirlo dalla classe ThisAddIn nel progetto.

    HideText(bookmark1.Range);
    
    this.Application.ActiveDocument.PrintOut(true, false, Word.WdPrintOutRange.wdPrintAllDocument,
        Item:Word.WdPrintOutItem.wdPrintDocumentContent, Copies:"1", Pages:"", 
        PageType:Word.WdPrintOutPages.wdPrintAllPages, PrintToFile:false, Collate:true, 
        ManualDuplexPrint:false);
    
    UnhideText(bookmark1.Range);
    

Compilare il codice

In questo esempio di codice si presuppone che il documento contenga un Bookmark controllo (in una personalizzazione a livello di documento) o Bookmark un controllo (in un componente aggiuntivo VSTO) denominato bookmark1.