Xojo 2022r2: ¡Encripta tus PDF!

Una de las características añadidas a PDFDocument en Xojo 2022r2 es la capacidad de encriptar los archivos PDF creados con Xojo. Sigue leyendo y te mostraré cómo.

La encriptación o cifrado de archivos PDF creados con PDFDocument está basada en el uso de la nueva clase PDFPermissions; de modo que tendrás que crear una nueva instancia de dicha clase proporcionando las contraseñas de “propietario” y de “usuario”. Por ejemplo:

Var d As New PDFDocument
Var g As Graphics = d.Graphics

Var p As New PDFPermissions("OwnerPassword","UserPassword")

Adicionalmente también puedes definir otra serie de propiedades para la instancia creada a partir de PDFPermissions. Todas ellas son de lectura/escritura y serán aplicadas por el visor de documentos PDF cuando se abra el documento utilizando la contraseña de “usuario”.

  • AllowCopyingContents está configurado a False por omisión. Cuando se configura a True permitirá el copiado de contenidos en el PDF, como pueda ser por ejemplo el caso del texto o imágenes seleccionadas.
  • AllowModifyingContents está configurado a False por omisión. Cuando se define a True permitirá modificar los contenidos del documento PDF protegido.
  • AllowPrinting está configurado a False por omisión. Cuando se define al valor True permitirá que el PDF se imprima.

Una vez se ha creado la instancia de PDFPermissions y se han configurado las propiedades deseadas, todo lo que resta es asignar dicha instancia a la propiedad Permissions de la instancia PDFDocument que quieras cifrar:

d.Permissions = p

Entonces, cuando el documento se guarde a disco PDFDocument cifrará todos los flujos de datos que puedan ser objeto de contener información sensible, tal y como pueda ser el caso de los textos, las imágenes e incluso los propios metadatos asociados con el PDF propiamente dicho. Para ello utiliza un cifrado AES de 128 bits.

¡Y eso es todo! Podrás diferenciar un PDF cifrado de otro que no lo está porque los documentos cifrados suelen incorporar la imagen de un candado como parte de su icono.

Por supuesto, cuando abras el documento en el visor o editor de archivos PDF la app te solicitará que introduzcas una contraseña. Si introduces la contraseña asociada con el “propietario” tendrás acceso a todas las opciones disponibles, mientras que si se hace utilizando la contraseña de “usuario” entonces las capacidades estarán restringidas a aquellas que se hubiesen marcado mediante las propiedades de la instancia PDFPersmissions.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *