Проследяване на промени в документ
Функцията за проследяване на промени, известна също като преглед, ви позволява да проследявате промени в съдържанието и форматирането, направени от вас или други потребители. Тази функция за проследяване на промените с Aspose.Words поддържа проследяване на промените в Microsoft Word. С тази функционалност можете да получите достъп до отделни ревизии в документа си и да приложите различни свойства към тях.
Когато разрешите функцията за проследяване на промени, всички вмъкнати, изтрити и модифицирани елементи на документа ще бъдат визуално осветени с информация за това кой, кога и какво е променено. Обектите, които носят информация за това, което е променено, се наричат “проследяване на промените”. Да предположим например, че искате да прегледате документ и да направите важни промени – това може да означава, че трябва да направите корекции. Също така може да се наложи да вмъкнете коментари, за да обсъдите някои от промените. Това е мястото, където проследяването на промените в документите идва.
Тази статия обяснява как да управлявате и проследявате промени, създадени от много проверяващи в един и същ документ, както и свойствата за проследяване на промени.
Какво е ревизия
Преди да се потопим в ревизии, нека обясним значението на ревизиите. revision е промяна, която се случва в един възел на документ, докато група ревизии, представена от клас RevisionGroup, е група от последователни ревизии, които се случват в много възли на документ. Ревизията е инструмент за проследяване на промените.
Ревизиите се използват в функцията за проследяване на промени и в функцията за сравняване на документи, където ревизиите се появяват в резултат на сравнението. Така че ревизиите в функцията за проследяване на промените показват от кого и какво е променено.
Aspose.Words поддържа различни типове ревизии, както и в Microsoft Word, като Вмъкване, Изтриване, FormatChange, StyleDefinitionChange и преместване. Всички видове ревизии са представени с изброяването RevisionType.
Стартиране и спиране на проследяването на промените
Редактирането на документ обикновено не се счита за ревизия, докато не започнете да го проследявате. Aspose.Words позволява автоматично проследяване на всички промени във вашия документ с прости стъпки. Можете лесно да започнете процеса на проследяване на промените, като използвате метода StartTrackRevisions. Ако трябва да спрете процеса на проследяване на промените, така че всички бъдещи редакции да не се считат за ревизии, ще трябва да използвате метода StopTrackRevisions.
StartTrackingRevisions
не променя състоянието на свойството TrackRevisions и не използва неговата стойност за целите на проследяването на ревизиите. Освен това, ако даден възел е бил преместен от едно място на друго вътре в проследявания документ, ще бъдат създадени промени за преместване, включително преместване от и преместване в диапазон.
В края на процеса на проследяване на промените във вашия документ ще имате възможност дори да приемете всички ревизии или да ги отхвърлите, за да върнете документа в първоначалния му вид. Това може да се постигне чрез използване на AcceptAllRevisions или RejectAll Метод. Освен това можете да приемете или отхвърлите всяка редакция поотделно, като използвате метода Accept или Reject.
Всички промени ще бъдат проследени за една итерация от момента, в който започнете процеса, до момента, в който го спрете. Връзката между различните итерации е представена като следния сценарий: завършвате процеса на проследяване, след това правите някои промени и отново започвате да проследявате промените. При този сценарий всички промени, които не сте приели или отхвърлили, ще се покажат отново.
AcceptAllRevisions
е подобен на “приеми всички промени” в Microsoft Word.
Следният пример за код показва как да работите с проследяване на промени:
Следващият пример за код показва как се генерират ревизии, когато възел се премества в проследяван документ:
Управление и съхраняване на промените като ревизии
С предишната функция за проследяване на промените можете да разберете кои промени са направени във вашия документ и кой е направил тези промени. Докато използвате функцията TrackRevisions, вие принуждавате всички промени във вашия документ да се съхраняват като ревизии.
Aspose.Words ви позволява да проверите дали даден документ има редакция или не, като използвате свойството HasRevision. Ако не е необходимо автоматично да проследявате промените в документа си чрез методите StartTrackRevisions и StopTrackRevisions, можете да използвате свойството TrackRevisions
, за да проверите дали промените се проследяват, докато редактирате документ в Microsoft Word и се съхраняват като корекции.
Функцията TrackRevisions
прави ревизии вместо реални DOM промени. Но самите ревизии са отделни. Например, ако изтриете някой абзац, Aspose.Words Направете го като ревизия, като го маркирате като изтриване, вместо да го изтриете.
В допълнение Aspose.Words ви позволява да проверите дали даден обект е вмъкнат, изтрит или променен форматиране с помощта на IsDeleteRevision, IsFormatRevision, IsInsertRevision, IsMoveFromRevision, и IsMoveToRevision свойства.
TrackRevisions
. Освен това можете да приемате/отхвърляте ревизии, независимо от функцията за проследяване на промените.
Следният пример за код показва как да прилагате различни свойства с ревизии: