Revisions

Revisions

Esta guía muestra cómo inspeccionar, aceptar, rechazar y registrar los cambios controlados en un documento de Word con Aspose.Words FOSS para .NET. Aspose.Words FOSS para .NET puede inspeccionar, aceptar y rechazar cambios controlados (revisiones) en un documento de Word a través de Document.Revisions, y puede registrar nuevos cambios controlados mientras se edita mediante Document.StartTrackRevisions()/StopTrackRevisions().


Lectura de cambios controlados

Document.Revisions devuelve un RevisionCollection de cada Revision en el documento; Range.Revisions limita lo mismo a un rango específico. Cada Revision informa quién realizó el cambio y cuándo (Author, DateTime), qué tipo de cambio es (RevisionType: Insertion, Deletion, FormatChange, StyleDefinitionChange o Moving), y dónde se aplica (ParentNode, ParentStyle). Document.HasRevisions le indica de antemano si un documento cargado tiene algún cambio controlado.


Aceptando y rechazando revisiones

Llame a Revision.Accept() o Revision.Reject() para resolver un único cambio controlado, o trabaje con toda la colección a la vez usando RevisionCollection.AcceptAll() / RejectAll(). Document.AcceptAllRevisions() es una conveniencia a nivel de documento que acepta todas las revisiones en una sola llamada. Para aceptar o rechazar un subconjunto de forma selectiva, implemente IRevisionCriteria.IsMatch(revision) y páselo a RevisionCollection.Accept(criteria) o Reject(criteria).


Grupos de revisiones

Las revisiones consecutivas del mismo autor y del mismo tipo se exponen juntas como un RevisionGroup — accesible mediante Revision.Group para una sola revisión, o RevisionCollection.Groups (un RevisionGroupCollection) para cada grupo en el documento. Cada grupo informa sus Text, Author y RevisionType combinados.


Grabando nuevos cambios rastreados

Llame a Document.StartTrackRevisions(author) o a la sobrecarga StartTrackRevisions(author, dateTime) antes de realizar ediciones para que los cambios posteriores se registren como revisiones en lugar de aplicarse directamente; llame a StopTrackRevisions() para finalizar el seguimiento. La propiedad Document.TrackRevisions refleja si el seguimiento está activo actualmente.


Visualizando contenido original vs. final

Document.RevisionsView controla si el documento se presenta en su estado Original o Final (un valor RevisionsView) cuando hay revisiones, sin alterar los datos subyacentes de la revisión.


Consejos y mejores prácticas

  • Compruebe Document.HasRevisions antes de iterar Document.Revisions para evitar trabajo innecesario en documentos sin cambios rastreados.
  • Prefiera RevisionCollection.Accept(criteria)/Reject(criteria) con un IRevisionCriteria personalizado en lugar de filtrar manualmente y llamar a Revision.Accept() uno por uno.
  • RevisionGroup es útil para presentar un resumen legible de los cambios — agrupar revisiones consecutivas del mismo autor y del mismo tipo evita tratar cada carácter insertado como una entrada separada.
  • Siempre combina StartTrackRevisions() con una llamada posterior a StopTrackRevisions() para que las ediciones no relacionadas no se registren como cambios controlados.

Problemas comunes

ProblemaCausaSolución
Document.Revisions está vacío después de las edicionesStartTrackRevisions() nunca se llamó antes de editarLlame a StartTrackRevisions(author) antes de realizar las ediciones que desea rastrear
RevisionCollection.Accept(criteria) no acepta nadaIRevisionCriteria.IsMatch() no coincide con ninguna revisiónVerifique la lógica de criterios contra los valores reales de Revision.Author/RevisionType/ParentNode primero
El documento sigue mostrando marcas de cambios rastreados después de AcceptAllRevisions()Ver estado, no datos de revisiónEstablezca Document.RevisionsView a Final si necesita la vista de contenido resuelto

FAQ

¿Cómo verifico si un documento tiene cambios controlados?

Lea Document.HasRevisions — es true si Document.Revisions contiene al menos un Revision.

¿Cuál es la diferencia entre Revision.Accept() y RevisionCollection.AcceptAll()?

Revision.Accept() resuelve una revisión específica; RevisionCollection.AcceptAll() (o Document.AcceptAllRevisions()) resuelve todas las revisiones de la colección de una vez.

¿Cómo acepto solo las revisiones realizadas por un autor específico?

Implemente IRevisionCriteria.IsMatch(revision) para comprobar revision.Author, luego llame a RevisionCollection.Accept(criteria) con esa implementación.

¿Cómo registro mis propias ediciones como cambios controlados?

Llame a Document.StartTrackRevisions(author) antes de hacer las ediciones, luego Document.StopTrackRevisions() cuando haya terminado.

¿Qué tipos de revisiones existen?

RevisionType define Insertion, Deletion, FormatChange, StyleDefinitionChange y Moving.


API Reference Resumen

Clase / MétodoDescripción
Document.RevisionsRevisionCollection de todos los cambios rastreados en el documento
RevisionUn cambio rastreado: Author, DateTime, RevisionType, Accept(), Reject()
RevisionCollectionAcceptAll(), RejectAll(), Accept(criteria), Reject(criteria), Groups
RevisionGroup / RevisionGroupCollectionRevisiones consecutivas del mismo autor y del mismo tipo agrupadas
IRevisionCriteriaPredicado personalizado (IsMatch(revision)) para aceptar/rechazar selectivamente
Document.StartTrackRevisions() / StopTrackRevisions()Registrar nuevas ediciones como cambios rastreados
Document.RevisionsViewPresentación Original o Final del contenido revisado

Ver también

 Español