Aplanar un PDF

Aplana los campos de formulario de un PDF en contenido estático de página para que no se puedan editar más y se impriman de forma fiable, en tu navegador.

🌐 English

Drop your files here (.pdf)

🔒 Privado por diseño: tus archivos se procesan localmente en tu navegador; nada se sube nunca a ningún servidor.

Qué es realmente un campo AcroForm

Un PDF rellenable son dos documentos apilados uno encima del otro. Debajo está la página: instrucciones de dibujo estáticas para líneas, texto e imágenes que nunca cambian. Encima se asienta la capa AcroForm, un diccionario de widgets interactivos (campos de texto, casillas, grupos de opciones, desplegables) cada uno con un nombre, un valor actual y un flujo de apariencia que describe cómo debe pintarse. Cuando escribes en un formulario y guardas, no estás editando la página en absoluto. Estás fijando un valor en un widget que da la casualidad de que flota encima.

Esa separación es útil mientras el formulario está en juego y un lastre en cuanto está terminado. El widget sigue siendo editable para siempre, el valor vive en una estructura que la mayoría de extractores de texto ignoran, y distintos lectores se toman libertades notablemente distintas al representar una casilla marcada o un campo resaltado. Aplanar colapsa las dos capas en una.

Qué le hace el aplanado a cada tipo de campo

La operación es el propio form.flatten() de pdf-lib, y conviene saber exactamente qué hace con cada tipo de campo. El flujo de apariencia de cada widget se refresca, se pinta dentro del contenido de la propia página en la posición que ocupaba el widget, y después el widget se elimina. Para un campo de texto eso significa que la cadena que escribiste pasa a ser texto normal de la página. Para una casilla significa que se confirma la apariencia marcada o sin marcar, que es la razón por la que una marca que se veía en Acrobat pero desaparecía en la vista previa del navegador pasa a verse en todas partes. Un grupo de opciones confirma el botón seleccionado. Un desplegable o una lista confirma el valor elegido como texto plano, y las demás opciones sencillamente dejan de existir en el archivo.

Después el documento ya no tiene AcroForm en absoluto. Su apariencia visible no ha cambiado, pero a un lector no le queda nada donde ofrecerte un cursor.

Por qué la herramienta nunca pregunta si tu archivo tiene formulario

Esto se comprobó en Node antes de escribir una línea de la herramienta, porque la forma defensiva evidente (detectar un formulario, ramificar, mostrar un aviso de “no se han encontrado campos”) habría sido el diseño equivocado si pdf-lib toleraba el caso vacío. Lo tolera: llamar a getForm() sobre un PDF corriente sin ningún AcroForm devuelve un objeto de formulario vacío en lugar de lanzar un error, y llamar a flatten() sobre eso no hace nada y no rompe nada.

Esa verificación es la razón por la que la herramienta se ejecuta sin condiciones sobre lo que le des. La mayoría de archivos que la gente suelta aquí (escaneos, informes exportados, documentos que ya eran planos de origen) no tienen ningún campo, y rechazarlos o dar la lata al respecto sería ruido. Los tests fijan esto como un caso de primera clase junto al formulario realmente relleno: un PDF plano entra y sale un PDF plano equivalente, mientras que un archivo corrupto o que no es un PDF falla de forma ruidosa en lugar de producir basura en silencio.

Lo que “aplanar” no significa aquí

La palabra está sobrecargada, y tres de sus otros significados no aplican.

No es aplanado de capas. Los PDF creados desde Illustrator o InDesign pueden llevar grupos de contenido opcional, y esta herramienta no los toca. Tampoco es rasterizar: nada se convierte en un mapa de bits, el texto sigue siendo texto y los vectores siguen siendo vectores. Si de verdad quieres una imagen de cada página, PDF a JPG es la herramienta para eso. Y no es censurar. Aplanar un campo que contenía un número de la seguridad social hace ese número permanente, no lo oculta; si el objetivo es eliminar información en lugar de fijarla, usa Censurar PDF.

Dos herramientas hermanas tampoco necesitan aplanado. Firmar PDF estampa tu imagen de firma directamente en la página con una llamada de dibujo, y Anotar PDF graba resaltes y notas en el contenido de la página al exportar. Las dos producen contenido estático por construcción. Ejecutar esta herramienta sobre su salida no cambia nada, salvo que el mismo archivo lleve además campos de formulario separados, rellenados con Rellenar formulario PDF o en un lector de escritorio, que sigan vivos.

Un formulario completado es el peor archivo posible para subir

Piensa en lo que hay escrito de verdad en los campos de los PDF que la gente quiere aplanar: una fecha de nacimiento, una cuenta bancaria, un salario, un historial médico, un bloque de firma en un contrato que todavía no está firmado por la otra parte. Un formulario rellenable es de las mayores concentraciones de datos personales que lleva un documento corriente, y los valores están en el archivo en forma plana y legible por máquina bajo sus propios nombres de campo, que es precisamente lo que los hace triviales de cosechar para un servicio del lado del servidor.

Esta herramienta carga los bytes en la memoria de tu navegador, llama a flatten() ahí y guarda el resultado en tu carpeta de descargas. El carácter irreversible del aplanado corta en los dos sentidos, así que guarda el original rellenable en algún sitio seguro antes de fijar un formulario que quizá aún tengas que corregir.

Aplanar un PDF

  1. Suelta uno o más PDF en la caja de arriba.
  2. Pulsa Aplanar un PDF.
  3. Descarga cada resultado. Los nombres siguen al de entrada con -flattened añadido, así que contrato-firmado.pdf pasa a ser contrato-firmado-flattened.pdf.

No hay opciones, porque no hay ninguna variante con sentido de esta operación. O los campos quedan grabados o no.

Cómo funciona, en imágenes

Captura de pantalla de la herramienta Aplanar un PDF con sysfenix-sample.pdf (3 KB) cargado
Aplanar un PDF en pleno proceso: sysfenix-sample.pdf (3 KB) cargado.
Captura de pantalla del resultado de Aplanar un PDF mostrando sysfenix-sample-flattened.pdf listo para descargar (3 KB, 1% más grande)
El resultado final: sysfenix-sample-flattened.pdf listo para descargar (3 KB, 1% más grande). El enlace de descarga es una URL blob local: el archivo nunca sale de tu dispositivo.

Preguntas frecuentes

¿Qué hace realmente "aplanar"?

Toma cada campo AcroForm de la página (un cuadro de texto rellenado, una casilla marcada, un botón de radio o valor de desplegable elegido) y graba su apariencia actual de forma permanente en el propio contenido estático de la página, y luego elimina el campo interactivo en sí. El resultado visible es idéntico, pero el PDF ya no tiene ningún campo de formulario activo que editar.

¿Se sube mi PDF a un servidor?

No. El PDF se abre directamente en la memoria de tu navegador usando pdf-lib, se aplana ahí, y el resultado se guarda directamente en tu carpeta de descargas. Nada se sube, registra ni transmite a ningún sitio, esto importa porque un formulario rellenado suele ser uno de los documentos más sensibles que maneja alguien (un contrato firmado, una solicitud completada).

¿Qué pasa si mi PDF no tiene ningún campo de formulario?

No pasa nada malo, la mayoría de los PDF que la gente sube aquí (escaneos, documentos exportados, archivos ya planos) no tienen ningún AcroForm de partida, y la herramienta simplemente devuelve un PDF equivalente sin cambios en lugar de lanzar un error o negarse a ejecutarse. No hay ningún inconveniente en ejecutar esta herramienta sobre un PDF del que no estés seguro de si tiene campos.

¿Esto también aplana un sello de firma del Firmador de PDF?

Ahí no hay nada que aplanar en primer lugar. El Firmador de PDF coloca tu imagen de firma directamente sobre la página como contenido dibujado normal (de la misma forma que lo haría una foto o un logo), así que ya es estático y no interactivo desde el momento en que se crea, nunca fue un campo de formulario. Esta herramienta solo importa para campos AcroForm genuinos, por ejemplo los rellenados con Rellenar Formulario PDF, un formulario completado en Adobe Acrobat o Vista previa, o uno que sobrevivió del documento original.

¿Por qué aplanaría un formulario en lugar de simplemente dejarlo rellenable?

Algunas razones habituales, el formulario está terminado y quieres evitar que alguien (incluido tú mismo) cambie accidentalmente una respuesta antes de enviarlo; algunas impresoras y visores de PDF antiguos renderizan de forma inconsistente las casillas/campos de texto activos, mientras que el contenido estático aplanado siempre se imprime exactamente como se muestra; y un PDF aplanado es más amigable con herramientas de extracción de texto y archivado que no manejan bien los campos AcroForm interactivos.

¿Puedo "desaplanar" un PDF después?

No. Aplanar es un proceso de un solo sentido, una vez que el valor de un campo se graba en la página y el propio campo se elimina, no hay forma de recuperar el campo activo y editable. Si es posible que aún necesites cambiar una respuesta, conserva una copia sin aplanar del PDF antes de ejecutar esta herramienta, o simplemente no lo aplanes todavía.

¿Hay un límite de tamaño de archivo, número de páginas o lote?

No hay ningún límite artificial, y puedes soltar varios PDF a la vez, cada uno se aplana de forma independiente en su propio archivo descargable. Como tu propio dispositivo hace el trabajo, el límite práctico es solo la memoria disponible de tu dispositivo.

Herramientas relacionadas