MAGVERSO — AJUSTA TU PDF · VERSIÓN BETA 3

PUBLICAR EN CLOUDFLARE PAGES
1. En Workers & Pages, crea un proyecto Pages con carga directa de archivos.
2. Sube el ZIP completo. index.html está en la raíz: no necesita compilación.
3. Despliega y abre la URL .pages.dev.
4. Prueba tu revista y abre el PDF descargado antes de utilizarlo en MagVerso.
Para actualizar un proyecto existente, crea un nuevo despliegue de producción
mediante carga directa con este ZIP.

Todos los archivos de este paquete son inferiores al límite de 25 MiB por
archivo de Pages. Ese límite de alojamiento NO limita el PDF que selecciona
el usuario: el documento se procesa localmente y no se sube a Cloudflare.
No necesita Workers, Functions, claves, cuenta de terceros ni CDN del motor.
Debe abrirse por HTTPS o un servidor local; no mediante doble clic en index.html.

FUNCIONAMIENTO
Selecciona un PDF y pulsa AJUSTAR PDF. El ajuste recomendado usa imágenes a
150 ppp. Opciones: Más detalle (200 ppp) o Menor peso (110 ppp).
El texto digital no se convierte en una imagen. El texto escaneado sí depende
de la resolución de las imágenes. No se promete reducción sin pérdida:
las imágenes se reajustan y su calidad puede cambiar.
El resultado compara tamaños y permite descargar. Si el resultado es mayor
o igual al original, se ofrece el original con su nombre y etiqueta correctos.
Cancelar detiene el trabajador y libera su memoria.

ARCHIVOS GRANDES
Entrada admitida: menos de 2 GiB (2.147.483.648 bytes).
Lectura por bloques de 1 MiB, con acceso aleatorio: no se carga el original
completo en un ArrayBuffer ni se copia entero al sistema de archivos del motor.
La salida y las estructuras internas del motor todavía utilizan RAM.
Límite preventivo de salida: 512 MiB. No implica consumo máximo total de RAM.
Un PDF complejo, con imágenes enormes, puede fallar aunque sea menor de 2 GiB.
Para archivos de más de 1 GB se recomienda un ordenador.

VERIFICACIÓN
Se ha probado el motor real en Chromium 153 sobre un servidor HTTP local,
con los encabezados de seguridad previstos para Pages. Ver AUDITORIA.md.
Prueba grande: 90 páginas, 1.132.511.347 bytes de entrada; 3.987.883 bytes
aproximados de salida con el ajuste equilibrado; texto extraíble idéntico.
Es un PDF sintético con imágenes sin comprimir, no la revista real del usuario.
No se ha desplegado esta versión en una cuenta de Cloudflare.

25 MB es una referencia del proyecto, NO un límite confirmado de MagVerso.
No se garantiza que cualquier revista quede por debajo de esa referencia.
Formularios, comentarios, firmas digitales y otros elementos interactivos
pueden cambiar al reescribir el PDF. Revisar el resultado antes de publicarlo.
Los PDF con daños irrecuperables, sin páginas procesables o con contraseña se rechazan.

ESTRUCTURA
index.html / app.js      Interfaz.
motor.js                Trabajador de optimización y lectura por bloques.
magverso-logo.png        Logotipo aprobado; Versión Beta bajo el logo.
_headers                Encabezados de Pages y tipo MIME de WebAssembly.
vendor/gs.js, gs.wasm    Motor fijado: Ghostscript 10.06.0.
vendor/ORIGEN.txt        Versiones, huellas y fuentes de compilación.
vendor/LICENSE...       Licencia AGPL.
FUENTES.zip             Código de esta herramienta, pruebas y fuentes de build.
AUDITORIA.md             Requisitos, revisión, alternativas y resultados.

LICENCIAS
La herramienta se distribuye bajo AGPL-3.0-or-later.
Ghostscript: copyright Artifex Software y sus colaboradores.
Motor WASM: @okathira/ghostpdl-wasm 1.1.0, AGPL-3.0-or-later.
El logo continúa siendo material de MagVerso; no se licencia como código.
El enlace de código fuente permanece visible en el pie de la página.

REPARACIÓN AUTOMÁTICA (BETA 3)
Se intenta UNA vez si se detecta un error recuperable de lectura o estructura.
Si el ajuste normal funciona, el motor de reparación ni siquiera se carga.
No se intenta para contraseñas, fallos de carga o falta de memoria identificada.
qpdf reconstruye la estructura; después Ghostscript debe procesar sus páginas.
La salida se identifica como PDF reparado y ajustado. Nunca se ofrece el
original dañado como resultado correcto, aunque la reparación aumente el peso.
No recupera datos ausentes ni garantiza integridad de todo el contenido.
La reparación lee la entrada local mediante WORKERFS sin copiarla entera.
Su salida tiene un máximo preventivo de 256 MiB y sí utiliza RAM.
Nuevo archivo: reparar.js; motor local en vendor/qpdf/ (Apache-2.0).
