Redactar archivos PDF
Los archivos PDF se utilizan habitualmente para compartir documentos, como contratos legales, estados financieros o registros médicos, debido a su formato seguro y confiable. Sin embargo, estos archivos también pueden contener información confidencial que debe mantenerse confidencial. Si necesita compartir un archivo PDF que contiene datos confidenciales, la redacción es la mejor manera de protegerlo. La redacción es un proceso de eliminación o censura de la información confidencial del documento mientras se mantiene intacto el resto del contenido. En esta publicación del blog, le mostraremos cómo redactar archivos PDF con Python.

API de procesamiento de PDF

Aspose.PDF Cloud SDK for Python es una excelente herramienta para redactar archivos PDF en línea. Es una API REST basada en la nube que ofrece varias funciones para trabajar con documentos PDF, como crear, convertir y manipular archivos PDF. Con este SDK, puede redactar fácilmente información confidencial de sus archivos PDF en línea sin tener que instalar ningún software adicional en su computadora.

Ofrece varias ventajas en comparación con los métodos de redacción tradicionales. Por ejemplo, la función de redacción de la API es más rápida y precisa que la redacción manual. También garantiza que la información confidencial se elimine permanentemente del documento, lo que evita el acceso no autorizado a la información.

Ahora, el primer paso es instalar el SDK, que está disponible para descargar en los repositorios PIP y GitHub. Ejecute el siguiente comando en la terminal para completar la instalación.

pip install asposepdfcloud

IDE de PyCharm

Si está utilizando PyCharm IDE, puede agregar directamente el SDK como una dependencia en su proyecto.

Archivo ->Configuración ->Proyecto ->Intérprete de Python ->asposepdfcloud

título

Image 1:- PyCharm settings option.

Paquete Python Aspose.PDF

Imagen 2:- Paquete Python en la nube Aspose.Pdf.

Después de la instalación, el siguiente paso importante es obtener las credenciales del cliente desde Dashboard. En caso de que no tenga una cuenta, simplemente regístrese utilizando la opción crear una nueva cuenta.

Redactar PDF con Python

Siga las instrucciones que se indican a continuación para redactar el contenido del PDF utilizando un fragmento de código Python:

  • Cree una instancia de ApiClient pasando las credenciales del cliente como argumentos.
  • Ahora inicialice PdfApi mientras pasa el objeto ApiClient como argumento.
  • Cree un objeto de RedactionAnnotation y llame al método postpageredactionannotations(..) de PdfApi para cumplir con nuestros requisitos.
def redactPDF():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # Crea una instancia de PdfApi mientras pasas PdfApiClient como argumento
        pdf_api = PdfApi(pdf_api_client)

        # archivo PDF de entrada
        input_file = 'marketing.pdf'

        # crear una instancia de la clase RedactAnnotation
        redactAnnotation = asposepdfcloud.models.RedactionAnnotation() 
        redactAnnotation.contents = 'Confidential'

        # Establezca los detalles de color para el objeto de anotación
        redactAnnotation.color = asposepdfcloud.Color(a = 0, r = 66, g = 111, b = 245)

        # Establecer la fecha de modificación de la anotación
        redactAnnotation.modified = '01/01/2018 12:00:00.000 AM'
        redactAnnotation.id = 1

        # Establecer la bandera de anotación como predeterminada
        redactAnnotation.flags = [asposepdfcloud.models.AnnotationFlags.DEFAULT]
        redactAnnotation.name = 'redactName'

        # Especifica la región rectangular para la anotación en la página.
        redactAnnotation.rect = asposepdfcloud.models.Rectangle(llx = 20, lly = 700, urx = 220, ury = 650 )
        redactAnnotation.page_index = 1

        # Factor ZIndex para anotación
        redactAnnotation.z_index = 1

        # Establezca la alineación vertical y horizontal como Centro
        redactAnnotation.horizontal_alignment = asposepdfcloud.models.HorizontalAlignment.CENTER
        redactAnnotation.vertical_alignment = asposepdfcloud.models.HorizontalAlignment.CENTER
        
        # Detalles de puntos para anotación de redacción
        redactAnnotation.quad_point =  [
            asposepdfcloud.models.Point(5, 40),
            asposepdfcloud.models.Point(10, 60)
            ]

        # Detalles de color de relleno de anotación
        redactAnnotation.fill_color = asposepdfcloud.Color(a = 10, r = 50, g = 168, b = 182)

        # Texto superpuesto que se imprimirá en la anotación de redacción
        redactAnnotation.overlay_text = 'Confidential Data'

        # repetir la ocurrencia de anotación
        redactAnnotation.repeat = True

        # Establezca la información de alineación del texto como Alineado a la izquierda
        redactAnnotation.text_alignment = asposepdfcloud.models.HorizontalAlignment.LEFT 

        # Llamar a la API para agregar una anotación de redacción a la primera página del documento.
        response = pdf_api.post_page_redaction_annotations(name = input_file, page_number= 1, annotations= [redactAnnotation])
        
        # Imprimir código de respuesta en la consola
        print(response)

        # Imprimir mensaje en la consola (opcional)
        print('Redaction Annotation successfully added to PDF document !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

Cómo ocultar contenido PDF mediante comandos cURL

Con el comando cURL y Aspose.PDF Cloud, redactar archivos PDF es más fácil que nunca. Aspose.PDF Cloud es una API RESTful que se puede utilizar con varios lenguajes de programación, incluido el comando cURL. Puede redactar fácilmente información confidencial de archivos PDF ocultando texto o eliminándolo por completo. La API es segura, confiable y escalable, lo que la convierte en una opción ideal para empresas de todos los tamaños.

Ahora el primer paso es ejecutar el siguiente comando para generar el accessToken.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Una vez que tengamos el token de acceso, ejecute el siguiente comando para redactar la información en el documento PDF en la región rectangular especificada (“LLX”: 20, “LLY”: 700, “URX”: 220, “URY”: 650).Después de la operación exitosa, el archivo resultante se guarda en el almacenamiento en la nube.

curl -v -X POST "https://api.aspose.cloud/v3.0/pdf/{inputPDF}/pages/1/annotations/redaction?apply=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer {accessToken}" \
-H  "Content-Type: application/json" \
-d "[  {    \"Color\": {      \"A\": 0,      \"R\": 158,      \"G\": 50,      \"B\": 168    },    \"Contents\": \"Confidential\",    \"Modified\": \"01/18/2022 12:00:00.000 AM\",    \"Id\": \"1\",    \"Flags\": [      \"Default\"    ],    \"Name\": \"Name\",    \"Rect\": {      \"LLX\": 20,      \"LLY\": 700,      \"URX\": 220,      \"URY\": 650    },    \"PageIndex\": 1,    \"ZIndex\": 1,    \"HorizontalAlignment\": \"CENTER\",    \"VerticalAlignment\": \"CENTER\",    \"QuadPoint\": [      {        \"X\": 5,        \"Y\": 10      }    ],    \"FillColor\": {      \"A\": 10,      \"R\": 50,      \"G\": 168,      \"B\": 182    },    \"BorderColor\": {      \"A\": 10,      \"R\": 168,      \"G\": 50,      \"B\": 141    },    \"OverlayText\": \"Sensitive data\",    \"Repeat\": true,    \"TextAlignment\": \"Left\"  }]"

Reemplace {inputPDF} con el nombre del archivo PDF disponible en el almacenamiento en la nube y {accessToken} con el token de acceso generado anteriormente.

Conclusión

En conclusión, redactar archivos PDF es una tarea fundamental para evitar que se divulgue información confidencial. Ya sea que elija utilizar Python o el comando cURL con Aspose.PDF Cloud, el proceso se ha vuelto más simple y eficiente con la disponibilidad. Por lo tanto, ya sea un profesional legal, un médico o un analista financiero, aprender a redactar archivos PDF con Python puede ayudarlo a proteger su información confidencial y cumplir con las regulaciones de protección de datos.

Enlaces útiles

Artículos recomendados

Le recomendamos visitar los siguientes artículos para obtener más información sobre: