Masquer par programmation du texte dans les documents

Vous pouvez masquer du texte dans un document en définissant la propriété Hidden de Font pour une plage de texte particulière.

Par exemple, vous pouvez masquer temporairement le texte dans un Bookmark (dans une personnalisation au niveau du document) ou un Bookmark (dans un complément VSTO) avant d’envoyer un document à une imprimante.

S’applique à : les informations contenues dans cette rubrique s’appliquent aux projets au niveau du document et aux projets de complément VSTO pour Word. Pour plus d’informations, consultez Fonctionnalités disponibles par application Office lication et le type de projet.

Pour masquer du texte dans un contrôle Bookmark pendant l’impression du document

  1. Créez une procédure qui masque tout le texte figurant dans une plage spécifiée.

    static void HideText(Word.Range rng)
    {
        rng.Font.Hidden = 1;  // 1 = True
    }
    
  2. Créez une procédure qui affiche tout le texte figurant dans une plage spécifiée.

    static void UnhideText(Word.Range rng)
    {
        rng.Font.Hidden = 0;  // 0 = False
    }
    
  3. Passez la plage d’un signet à la méthode HideText , imprimez le document, puis passez la même plage à la méthode UnhideText .

    L'exemple de code suivant peut être utilisé dans une personnalisation au niveau du document. Pour utiliser cet exemple, exécutez-le à partir de la classe ThisDocument dans votre projet.

    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'exemple de code suivant peut être utilisé dans un complément VSTO. Cet exemple utilise le document actif. Pour utiliser l'exemple, exécutez-le à partir de la classe ThisAddIn dans votre projet.

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

Compiler le code

Cet exemple de code suppose que le document contient un Bookmark contrôle (dans une personnalisation au niveau du document) ou Bookmark un contrôle (dans un complément VSTO) nommé bookmark1.