Redacción de WPF XPS

Me gusta DocumentViewer para mostrar un documento XPS en una aplicación WPF. Pero también necesito redactar el documento XPS. Encontré aplicaciones independientes (.exe) para redactar XPS. Lo que necesito es un control WPF para ver y redactar XPS. O una extensión de DocumentViewer para la redacción. La redacción debe eliminar los datos y no solo ocultarlos (esto es para una aplicación de litigio). ¿Alguien sabe cómo ver y redactar XPS en WPF?

preguntado el 08 de noviembre de 11 a las 14:11

Podría ser posible usar un paginador personalizado ya que en ese momento todo se ha convertido en visual. 1) Busque el texto que desee redactar, cree una forma negra sobre el texto y luego acople la página a una sola imagen. La única parte de la que no estoy seguro y que tendría que comprobar mañana es la precisión con la que podría seleccionar párrafos / ejecutar / glifos y redactarlos. Tampoco estoy seguro de si luego podrá seleccionar cualquier texto no redactado. -

No olvide la parte "realmente debe eliminar los datos". No puede haber una redacción. -

Ese es mi punto sobre aplanar las imágenes, el texto visual debajo del bloque de redacción se destruirá. -

@DennisRoche Si publicas una respuesta, la votaré o la aceptaré. La única respuesta actual no es tan buena como sus comentarios. -

Esperaba que mis comentarios lo llevaran en la dirección correcta, lo suficiente como para encontrar una solución. Puedo publicar varios artículos e información de antecedentes sobre Paginators que ayudarán, sin embargo, no tengo tiempo (y no lo he hecho en los últimos 7 días) para escribir una respuesta adecuada. -

2 Respuestas

Con una costumbre DocumentPaginator puede controlar cómo se imprime cada elemento del documento.

Si puede identificar los rangos de texto que desea redactar, puede reemplazar los glifos con un visual negro y no agregar el rango de texto al documento final.

...

Mmm. Mientras escribía lo de arriba realmente suena un poco complejo cuando hay soluciones más simples.

  1. Lea el documento XPS, conviértalo en un FlowDocument.
  2. Permita que el usuario seleccione rangos de texto para censurar.
  3. Reemplaza * el texto seleccionado con el carácter ███████████████ (U + 2588, Full Block).
  4. Convierta el documento de nuevo a XPS e imprímalo.

* Como reemplazó el texto original, no estará disponible en las acciones de copiar / pegar.

Hay muchos tutoriales sobre cómo cada uno de los pasos anteriores por separado. Avísame si necesitas ayuda adicional.

respondido 05 mar '12, 22:03

Si mi mente no miente, no puede editar XPS directamente, pero puede crear una representación WPF del documento, editarlo e imprimirlo en un nuevo archivo XPS.

respondido 04 mar '12, 13:03

Arman tiene razón ... incluso usted puede "agregar texto" (no recomendado) al XPS, no conserva cosas importantes como Márgenes y PageLength, por lo que WPF no reformatea el documento. Tenga en cuenta que los documentos XPS están casi "escritos en piedra", ya formateados y listos para imprimirse. - NestorArturo

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.