Lavorare con i commenti

Aspose.Words consente agli utenti di lavorare con commenti – commenti in un documento in Aspose.Words sono rappresentati da Comment classe. Anche utilizzare CommentRangeStart e CommentRangeEnd classi per specificare la regione del testo che dovrebbe essere associata a un commento.

Aggiungi un commento

Aspose.Words consente di aggiungere commenti in diversi modi:

  1. Usare il Comment classe
  2. Usare il CommentRangeStart e CommentRangeEnd classi

Il seguente esempio di codice mostra come aggiungere un commento a un paragrafo utilizzando il Comment classe:

Il seguente esempio di codice mostra come aggiungere un commento a un paragrafo utilizzando una regione di testo e CommentRangeStart e CommentRangeEnd classi:

Estrarre o rimuovere i commenti

Utilizzando i commenti in un documento di Word (oltre ai cambiamenti di traccia) è una pratica comune durante la revisione dei documenti, in particolare quando ci sono più recensori. Ci possono essere situazioni in cui l’unica cosa di cui hai bisogno da un documento è i commenti. Dì che si desidera generare un elenco di risultati di recensioni, o forse avete raccolto tutte le informazioni utili dal documento e si desidera semplicemente rimuovere commenti inutili. Si consiglia di visualizzare o rimuovere i commenti di un particolare recensore.

In questo esempio, stiamo andando a guardare alcuni metodi semplici per sia raccogliere informazioni dai commenti all’interno di un documento e per rimuovere i commenti da un documento. In particolare, copriremo come:

  • Estrarre tutti i commenti da un documento o solo quelli fatti da un autore particolare.
  • Rimuovere tutti i commenti da un documento o solo da un autore particolare.

Come estrarre o rimuovere i commenti

Il codice in questo campione è abbastanza semplice e tutti i metodi si basano sullo stesso approccio. Un commento in un documento di Word è rappresentato da un Comment oggetto nel Aspose.Words documento oggetto modello. Per raccogliere tutti i commenti in un documento utilizzare getChildNodes metodo con il primo parametro impostato a NodeType.Comment. Assicurarsi che il secondo parametro del ottenereNodi bambini metodo è impostato su true: questo forza il ottenereNodi bambini selezionare da tutti i nodi bambino ricorsivamente, piuttosto che solo raccogliere i bambini immediati.

Per illustrare come estrarre e rimuovere i commenti da un documento, passeremo attraverso i seguenti passaggi:

  1. Aprire un documento di Word utilizzando Document classe
  2. Ottenere tutti i commenti dal documento in una raccolta
  3. Per estrarre commenti:
    1. Passare attraverso la raccolta utilizzando l’operatore
    2. Estrarre e elencare il nome dell’autore, la data e il testo di tutti i commenti
    3. Estrarre e elencare il nome dell’autore, la data e il testo dei commenti scritti da uno specifico autore, in questo caso, l’autore ‘ks’
  4. Per rimuovere i commenti:
    1. Vai all’indietro attraverso la raccolta utilizzando l’operatore
    2. Rimuovere i commenti
  5. Salva i cambiamenti.

Useremo il seguente documento di Word per questo esercizio:

extract-remove-comments-aspose-words-java-1

Come potete vedere, contiene diversi commenti da due autori con le iniziali “pm” e “ks”.

Come estrarre tutti i commenti

The getChildNodes metodo è molto utile e si può utilizzare ogni volta che è necessario per ottenere un elenco di nodi di documento di qualsiasi tipo. La raccolta risultante non crea un overhead immediato perché i nodi vengono selezionati in questa raccolta solo quando si enumerate o accedete agli elementi in esso.

Il seguente esempio di codice mostra come estrarre il nome dell’autore, data&time e testo di tutti i commenti nel documento:

Come estrarre i commenti di un autore specificato

Dopo aver selezionato i nodi Comment in una raccolta, tutto quello che devi fare è estrarre le informazioni di cui hai bisogno. In questo esempio, le iniziali dell’autore, la data, l’ora e il testo normale del commento sono combinati in una stringa; si potrebbe scegliere di memorizzarlo in alcuni altri modi invece.

Il metodo sovraccarico che estrae i commenti da un particolare autore è quasi lo stesso, controlla solo il nome dell’autore prima di aggiungere le informazioni nell’array.

Il seguente esempio di codice mostra come estrarre il nome dell’autore, data&time e testo dei commenti da parte dell’autore specificato:

Come rimuovere i commenti

Se stai rimuovendo tutti i commenti, non c’è bisogno di passare attraverso la raccolta cancellando commenti uno per uno; è possibile rimuoverli chiamando clear sulla raccolta dei commenti.

Il seguente esempio di codice mostra come rimuovere tutti i commenti nel documento:

Quando è necessario rimuovere selettivamente i commenti, il processo diventa più simile al codice utilizzato per l’estrazione dei commenti.

Il seguente esempio di codice mostra come rimuovere i commenti dall’autore specificato:

Il punto principale da evidenziare è l’uso dell’operatore. A differenza della semplice estrazione, qui si desidera eliminare un commento. Un trucco adatto è quello di iterare la collezione all’indietro dall’ultimo Commento al primo. La ragione di questo se si inizia dalla fine e si sposta all’indietro, l’indice degli articoli precedenti rimane invariato, e si può lavorare la strada di ritorno al primo elemento della raccolta.

Il seguente esempio di codice mostra i metodi per l’estrazione e la rimozione dei commenti:

Quando viene lanciato, il campione visualizza i seguenti risultati. In primo luogo, elenca tutti i commenti di tutti gli autori, poi elenca i commenti dell’autore selezionato solo. Infine, il codice rimuove tutti i commenti.

extract-remove-comments-aspose-words-java-2

Il documento di Word di output ha ora commenti rimossi da esso:

extract-remove-comments-aspose-words-java-3

Come rimuovere il testo tra CommentRangeStart e CommentRangeEnd

Utilizzo Aspose.Words è inoltre possibile rimuovere i commenti tra i nodi CommentRangeStart e CommentRangeEnd.

Il seguente esempio di codice mostra come rimuovere il testo tra CommentRangeStart e CommentRangeEnd:

Aggiungi o Rimuovi il commento

The addReply metodo aggiunge una risposta a questo commento. Si prega di notare che a causa delle limitazioni esistenti MS Office solo un (1) livello di risposte è consentito nel documento. Un’eccezione di tipo InvalidOperationException sarà sollevato se questo metodo è chiamato sul commento di risposta esistente.

È possibile utilizzare removeReply metodo per rimuovere la risposta specificata a questo commento.

Il seguente esempio di codice mostra come aggiungere una risposta a un commento e rimuovere la risposta di un commento:

Leggi il commento

Aspose.Words il sostegno a leggere la risposta di un Commento. The Replies proprietà restituisce una raccolta della Comment oggetti che sono figli immediati del commento specificato.

Il seguente esempio di codice mostra come iterare attraverso le risposte di un commento e risolverle: