Recetario PHP
Recetario de PHP
Sección titulada «Recetario de PHP»Este es el índice de las recetas nativas de PHP de NextPDF: páginas ejecutables, centradas en tareas y escritas directamente contra la API PHP del core. El repositorio core nextpdf es propietario de cada receta en docs/public/cookbook/php/ y la verifica. Cada una está respaldada por un script examples/*.php y una prueba de arnés tests/Cookbook/Php/. Después, el agregador incorpora cada página a este sitio y conserva su procedencia de origen.
Como esta página es un índice, no formula ninguna afirmación de comportamiento sobre ninguna receta. Cada fila registra la intención de la receta, el módulo core que ejercita y su perfil de reproducibilidad declarado. El perfil y cualquier afirmación de conformidad figuran en la propia página de la receta, tomados del front-matter de esa página y de su prueba en el repositorio, no aquí. Para el recetario de integraciones (framework / renderizador / servicio), consulte Recetario de integraciones. Para el contrato que sigue toda receta ejecutable, consulte Convenciones de recetas.
Cómo se resuelve el enlace de una receta
Sección titulada «Cómo se resuelve el enlace de una receta»Cada [[…]] que aparece a continuación es una referencia anticipada a una página redactada en el repositorio core bajo docs/public/cookbook/php/, que luego el agregador incorpora a este sitio. El slug sigue una única convención: un solo segmento.
/cookbook/php/<recipe>/<recipe> identifica la intención de la receta en kebab-case (por ejemplo render-html-to-pdf, no el nombre del módulo html). Va en minúsculas, separado por guiones, sin números de versión y termina en una única barra final. Hasta que la página de destino se incorpore, su enlace es un marcador de posición y no se resuelve. Una receta que aún no tiene un ejemplo ejecutable (la lista de pendientes que aparece más abajo) no puede publicarse hasta que existan su ejemplo y su prueba de arnés, aunque el enlace ya apunte al slug definitivo.
Perfil de reproducibilidad, en una línea
Sección titulada «Perfil de reproducibilidad, en una línea»Cada receta declara el perfil más estricto que puede satisfacer con rigor:
- bitwise — idéntico byte a byte entre ejecuciones (contenido determinista simple, con toda la entropía fijada).
- structural — idéntico tras normalizar los átomos volátiles (el
/IDdel trailer, las fechas de creation/modification, los prefijos de subconjunto de fuente; en la práctica, cualquier PDF con varios objetos). - semantic — solo equivalencia de AST estructural más metadatos (salida firmada o con marca de tiempo, o salida cuya equivalencia sea inherentemente inestable a nivel de bytes).
El perfil es una propiedad que la página de la receta demuestra con su prueba de arnés. Este índice solo informa el valor que la página declara.
Recetas que ya se están agregando
Sección titulada «Recetas que ya se están agregando»Actualmente, el repositorio core ya contiene e integra estas cinco recetas: el conjunto de la Wave 8.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
sign-pades (previsto en upstream) | Aplicar una firma de línea base CMS/PAdES con una clave basada en software | Seguridad | semantic |
encrypt-aes256 (previsto en upstream) | Cifrar con AES-256 y establecer las marcas de permisos | Seguridad | structural |
pdfa4-conformance-gate (previsto en upstream) | Producir salida PDF/A-4 y validarla con un validador externo | Conformidad | semantic |
accessible-pdfua2-from-html (previsto en upstream) | Emitir la estructura etiquetada para la generación accesible de PDF/UA-2 | Accesibilidad | semantic |
validate-signature (previsto en upstream) | Inspeccionar si un PDF contiene una firma y cuál es el límite de confianza | Inspección | semantic |
Fundamentos
Sección titulada «Fundamentos»Construir, paginar y aplicar estilos a un documento.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
render-html-to-pdf (previsto en upstream) | Renderizar un documento HTML a PDF | Html | structural |
style-with-css (previsto en upstream) | Aplicar CSS a un renderizado de HTML | Html | structural |
html-table-layout (previsto en upstream) | Maquetar una tabla HTML | Html | structural |
paginate-long-html (previsto en upstream) | Paginar un documento HTML largo | Html | structural |
compose-text-and-fonts (previsto en upstream) | Componer texto con control tipográfico | Tipografía | structural |
embed-and-subset-fonts (previsto en upstream) | Incrustar y subconjuntar fuentes | Fuente | structural |
cjk-vertical-writing (previsto en upstream) | Componer texto CJK en modo de escritura vertical | Tipografía | structural |
multi-page-document (previsto en upstream) | Construir un documento de varias páginas | Documento | structural |
headers-and-footers (previsto en upstream) | Añadir encabezados y pies de página recurrentes | Diseño | structural |
Gráficos y contenido
Sección titulada «Gráficos y contenido»Vectores, imágenes, capas y espacio de coordenadas.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
draw-vector-graphics (previsto en upstream) | Dibujar gráficos vectoriales | Gráficos | structural |
gradients-and-transparency (previsto en upstream) | Aplicar degradados y transparencia | Gráficos | structural |
embed-images (previsto en upstream) | Incrustar imágenes rasterizadas | Contenido | structural |
optional-content-layers (previsto en upstream) | Usar contenido opcional (capas) | Gráficos | structural |
transform-coordinate-space (previsto en upstream) | Transformar el espacio de coordenadas | Gráficos | structural |
Navegación y formularios
Sección titulada «Navegación y formularios»Marcadores, enlaces, anotaciones y campos de AcroForm.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
bookmarks-and-toc (previsto en upstream) | Construir marcadores y una tabla de contenido | Navegación | structural |
links-and-annotations (previsto en upstream) | Añadir enlaces y anotaciones | Navegación | structural |
generate-barcodes (previsto en upstream) | Generar códigos de barras | Código de barras | bitwise |
fill-pdf-form (previsto en upstream) | Rellenar un AcroForm | Formulario | structural |
flatten-form-fields (previsto en upstream) | Aplanar los campos de formulario | Formulario | structural |
Información del documento
Sección titulada «Información del documento»Configurar metadatos y el comportamiento del visor.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
set-document-metadata (previsto en upstream) | Establecer los metadatos del documento | Metadatos | structural |
set-viewer-preferences (previsto en upstream) | Establecer las preferencias del visor | Documento | structural |
Seguridad, firma y conformidad
Sección titulada «Seguridad, firma y conformidad»Cifrado, firma, accesibilidad y salida con perfil. Estas recetas documentan en su propia página los límites soporte≠conformidad y presencia≠validez.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
encrypt-with-permissions (previsto en upstream) | Cifrar con marcas de permisos | Seguridad | structural |
sign-pades-b-b (previsto en upstream) | Aplicar una firma PAdES (B-B y B-T) | Seguridad | semantic |
inspect-existing-signature (previsto en upstream) | Inspeccionar una firma existente | Inspección | semantic |
tagged-pdf-ua2 (previsto en upstream) | Emitir la estructura etiquetada para PDF/UA-2 | Accesibilidad | semantic |
pdf-a-4-output (previsto en upstream) | Producir salida PDF/A-4 | Conformidad | semantic |
validate-conformance (previsto en upstream) | Validar frente a un perfil de conformidad | Cumplimiento | semantic |
Inspección y extracción
Sección titulada «Inspección y extracción»Volver a leer el contenido y la estructura de un PDF.
| Receta | Qué hace | Módulo | Perfil |
|---|---|---|---|
extract-text-content (previsto en upstream) | Extraer contenido de texto | Texto | semantic |
parse-and-inspect-pdf (previsto en upstream) | Analizar e inspeccionar un PDF | Inspección | semantic |
inspect-layout-boxes (previsto en upstream) | Inspeccionar las cajas de diseño | Inspección | semantic |
Transversal
Sección titulada «Transversal»Patrones que abarcan varios módulos.
| Receta | Qué hace | Abarca | Perfil |
|---|---|---|---|
worker-safe-batch-rendering (previsto en upstream) | Renderizar de forma segura en un worker de larga duración (registros compartidos, memoria acotada) | Core · Rendimiento · Soporte | semantic |
exception-aware-error-handling (previsto en upstream) | Gestionar errores con la jerarquía de excepciones de NextPDF | Excepción · Contratos | structural |
observe-with-opentelemetry (previsto en upstream) | Observar el renderizado con OpenTelemetry | Observabilidad · Telemetría · Evento | semantic |
Recetas pendientes de un ejemplo ejecutable
Sección titulada «Recetas pendientes de un ejemplo ejecutable»Estas recetas necesitan un examples/*.php completamente nuevo y un arnés tests/Cookbook/Php/ en el repositorio core antes de poder publicarse. El slug indicado arriba es definitivo. La página sigue siendo un marcador de posición hasta que el ejemplo esté disponible y su prueba se ejecute:
sign-pades-b-b(previsto en upstream) (cubre PAdES B-B y B-T)inspect-existing-signature(previsto en upstream)extract-text-content(previsto en upstream)parse-and-inspect-pdf(previsto en upstream)validate-conformance(previsto en upstream)inspect-layout-boxes(previsto en upstream)worker-safe-batch-rendering(previsto en upstream) (el ejemplo existe; se añadió una nueva prueba de arnés para memoria/GC)observe-with-opentelemetry(previsto en upstream) (se añadió un nuevo ejemplo nativo de PHP)
Cualquier otra receta de las anteriores ya tiene un examples/*.php de respaldo y solo necesita un envoltorio para el arnés. Este índice registra el slug y la página definitiva. No afirma que ninguna página pendiente esté ya completa.
Véase también
Sección titulada «Véase también»- Recetario de integraciones — el índice de integración de frameworks, renderizadores y servicios.
- Convenciones de recetas — el contrato que sigue toda receta ejecutable de este recetario.