IRONSOFTWAREHOME
HERRAMIENTAS PDF

Ghostscript GPL frente a IronPDF: Comparación en profundidad de .NET

Curtis Chau
Curtis Chau
Updated: 19 de julio de 2026

Los ISVs españoles que desarrollan software de facturación certificable bajo el régimen VeriFactu se enfrentan a una evaluación de componentes que va mucho más allá de la funcionalidad técnica. La Agencia Estatal de Administración Tributaria (AEAT) impone penalizaciones de hasta 150.000 €/año a los proveedores de software de facturación no conforme. En ese contexto, la licencia copyleft de Ghostscript GPL —la misma AGPL que rige iText— añade una capa de riesgo legal que convierte una decisión técnica en una decisión de negocio de primer orden.

Este artículo analiza Ghostscript GPL e IronPDF desde la perspectiva del ISV español que necesita generar facturas con el sello VERI*FACTU, la leyenda Factura verificable en la sede electrónica de la AEAT, firmas PAdES para TicketBAI, y documentos Facturae 3.2.2 para FACe. La elección del componente PDF determina no solo la arquitectura, sino la exposición regulatoria del producto.

El marco VeriFactu y la obligación del proveedor de software

VeriFactu (postponido a 1 de enero de 2027 para el Impuesto sobre Sociedades y 1 de julio de 2027 para el resto de contribuyentes, según RDL 15/2025) establece que los proveedores de software de facturación —no solo los usuarios— son objeto de la penalización. Un ISV que distribuya software de facturación no conforme se expone a sanciones de hasta 150.000 €/año independientemente de si sus clientes son sancionados.

Esta realidad convierte la evaluación de componentes PDF en un análisis de riesgo empresarial:

  • El componente PDF genera las facturas que deben incluir el sello VERI*FACTU y el código QR de verificación AEAT
  • El componente PDF firma los documentos con PAdES bajo eIDAS para TicketBAI en las tres provincias vascas (Bizkaia/BATUZ, Gipuzkoa, Araba)
  • El componente PDF produce los Facturae 3.2.2 embebidos en PDF/A-3 para la plataforma FACe (B2G)
  • El componente PDF gestiona el archivado conforme a LOPDGDD y los requisitos de retención fiscal

Añadir Ghostscript GPL a este stack introduce la licencia AGPL sobre el componente más sensible del producto.

La trampa copyleft en software de facturación certificable

La AGPL (Affero General Public License) exige que cualquier software que use Ghostscript GPL —y que se distribuya o se ofrezca como servicio de red— libere su código fuente completo bajo los mismos términos copyleft. Para un ISV que ha invertido años en desarrollar lógica de negocio propietaria de facturación, esto significa:

Escenario A — Distribución de software (ERP/POS local): Si el ISV distribuye su software a clientes, está obligado a publicar todo el código fuente de la aplicación. Las mismas rutinas que implementan la generación de huella para VeriFactu, la cadena de firmado XAdES para TicketBAI, o los algoritmos de cálculo de IVA quedan expuestas bajo la AGPL.

Escenario B — SaaS/servicio de red: La AGPL cierra expresamente la laguna "ASP loophole": incluso si el ISV no distribuye binarios sino que presta el servicio de facturación en la nube, sigue obligado a liberar el código fuente bajo demanda del usuario. Un SaaS de facturación VeriFactu construido sobre Ghostscript GPL es incompatible con un modelo de negocio propietario.

Escenario C — Licencia comercial Artifex: Ghostscript GPL ofrece una licencia comercial pagada de Artifex Software que elimina la obligación copyleft. Sin embargo, su coste por servidor o por despliegue supera significativamente el de IronPDF para volúmenes de producción, y la negociación con Artifex añade incertidumbre contractual que un ISV bajo presión de cumplimiento regulatorio puede no querer.

La intersección VeriFactu × AGPL es particularmente aguda porque el riesgo copyleft y el riesgo regulatorio se materializan sobre el mismo componente: el generador de documentos de facturación.

Ghostscript GPL: arquitectura y limitaciones técnicas para facturación española

Ghostscript GPL es un intérprete de PostScript y PDF maduro con décadas de historia. Su integración en C# requiere:

// Arquitectura Ghostscript GPL desde C#
// Requiere gsdll32.dll / gsdll64.dll instalado externamente
using Ghostscript.NET;
using Ghostscript.NET.Processor;

GhostscriptVersionInfo gvi = new GhostscriptVersionInfo("gsdll64.dll");
GhostscriptProcessor processor = new GhostscriptProcessor();

List<string> switches = new List<string>
{
    "-dNOPAUSE",
    "-dBATCH",
    "-dSAFER",
    "-sDEVICE=pdfwrite",
    "-sOutputFile=factura_output.pdf",
    "factura_input.ps"
};

processor.Process(switches.ToArray());

Para las obligaciones específicas del mercado español, Ghostscript GPL presenta limitaciones estructurales:

Requisito españolGhostscript GPLIronPDF
Generación de factura con VERI*FACTUNo nativo — requiere capa HTML→PS→PDFDirecto vía ChromePdfRenderer
Leyenda Factura verificable en la sede electrónica de la AEATManipulación manual de texto PSPlantilla HTML con literales preservados
Código QR AEAT en facturaSin soporte QR nativoIntegración con IronQR / imagen embebida
PAdES bajo eIDAS (TicketBAI)Sin soporte de firma digitalPdfSignature con certificado FNMT/ACCV
Facturae 3.2.2 en PDF/A-3Conversión PDF/A limitadaSaveAsPdfA3() con XML embebido
XAdES para Bizkaia/BATUZFuera del alcanceIntegración via biblioteca XAdES externa
HTML a PDF nativoNo soportado (requiere PS intermedio)Motor Chromium integrado
Licencia para ISVAGPL viral o Artifex comercial costosoComercial predecible por despliegue

La ausencia de HTML a PDF nativo es especialmente problemática: las plantillas de factura modernas se diseñan en HTML/CSS para que el área contable no técnica pueda mantenerlas. Ghostscript GPL no puede renderizar HTML directamente; requiere conversión previa a PostScript mediante herramientas adicionales, lo que añade dependencias y puntos de fallo en el pipeline.

IronPDF: generación de facturas VeriFactu con componente comercial

IronPDF es una biblioteca PDF nativa de .NET con licencia comercial predecible que elimina tanto la complejidad copyleft como las dependencias binarias externas.

Factura con sello VeriFactu y QR de verificación AEAT

// NuGet: Install-Package IronPdf
using IronPdf;

// Plantilla HTML de factura con los literales VeriFactu obligatorios
string plantillaFactura = @"
<!DOCTYPE html>
<html lang='es'>
<head>
    <meta charset='UTF-8'>
    <style>
        body { font-family: Arial, sans-serif; }
        .verifactu-block { border: 2px solid #000; padding: 10px; margin-top: 20px; }
        .qr-code { float: right; }
    </style>
</head>
<body>
    <h1>FACTURA</h1>
    <p>Número: {{NumeroFactura}}</p>
    <p>Fecha: {{FechaFactura}}</p>
    <p>NIF Emisor: {{NifEmisor}}</p>
    
    <!-- Bloque VeriFactu obligatorio -->
    <div class='verifactu-block'>
        <p><strong>VERI*FACTU</strong></p>
        <p>Factura verificable en la sede electrónica de la AEAT</p>
        <p>Huella: {{HuellaEncadenada}}</p>
        <img class='qr-code' src='data:image/png;base64,{{QRCodeBase64}}' 
             alt='Código QR AEAT' width='100' height='100' />
    </div>
</body>
</html>";

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;

var pdf = renderer.RenderHtmlAsPdf(plantillaFactura
    .Replace("{{NumeroFactura}}", "FAC-2027-001234")
    .Replace("{{FechaFactura}}", "2027-01-15")
    .Replace("{{NifEmisor}}", "B12345678")
    .Replace("{{HuellaEncadenada}}", huellaVeriFactu)
    .Replace("{{QRCodeBase64}}", qrBase64));

pdf.SaveAs("factura_verifactu.pdf");
C#

Firmado PAdES con certificado FNMT para TicketBAI

Las tres provincias vascas (Bizkaia/BATUZ, Gipuzkoa, Araba) requieren facturas firmadas con XAdES. Para el formato PDF de acompañamiento, PAdES bajo eIDAS es el estándar aplicable, con certificados FNMT o de otra CA acreditada:

using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;

// Cargar certificado FNMT (Fábrica Nacional de Moneda y Timbre)
// o certificado de entidad acreditada bajo eIDAS
var certificado = new X509Certificate2(
    "certificado_fnmt.pfx", 
    "contraseña_certificado",
    X509KeyStorageFlags.Exportable);

var pdf = PdfDocument.FromFile("factura_verifactu.pdf");

// Firma PAdES conforme a eIDAS
var firma = new PdfSignature(certificado);
firma.SigningContact = "facturacion@empresa.es";
firma.SigningLocation = "España";
firma.SigningReason = "Factura electrónica VeriFactu - TicketBAI";

pdf.Sign(firma);
pdf.SaveAs("factura_firmada_ticketbai.pdf");

Facturae 3.2.2 embebido en PDF/A-3 para FACe

La plataforma FACe (B2G) requiere Facturae XML adjunto a un contenedor PDF/A-3 conforme con EN 16931 y la implementación española CIUS-ES:

using IronPdf;
using System.IO;

var pdf = PdfDocument.FromFile("factura_base.pdf");

// Adjuntar Facturae XML como archivo embebido (PDF/A-3 permite adjuntos)
byte[] facturaeXml = File.ReadAllBytes("factura_facturae_3_2_2.xml");
pdf.EmbedFile(facturaeXml, "factura.xml", "application/xml");

// Convertir a PDF/A-3 para cumplimiento FACe / Crea y Crece
pdf.SaveAsPdfA("factura_face_pdfa3.pdf", PdfAVersions.PdfA3);

Diferencias de integración en el entorno .NET

Más allá del riesgo regulatorio, la diferencia arquitectónica entre Ghostscript GPL e IronPDF es determinante para la productividad del equipo:

AspectoGhostscript GPLIronPDF
APIConmutadores de cadena de texto, generación de procesosAPI .NET tipificada, IntelliSense
HTML a PDFNo soportado nativamenteMotor Chromium integrado
Firma digitalFuera del alcancePAdES / firma digital nativa
Gestión de erroresParseo de stderrExcepciones .NET estándar
Dependencias externasgsdll32.dll / gsdll64.dllPaquete NuGet autónomo
Thread-safetySolo aislamiento de procesosThread-safe por diseño
Soporte asyncBasado en procesosasync/await nativo
Compatibilidad .NETSoporte limitado.NET 6/7/8/9 completo
DespliegueConfigurar PATH + DLLSolo referencia NuGet
LicenciaAGPL (copyleft viral) o Artifex comercialComercial predecible

La complejidad de la interfaz de línea de comandos de Ghostscript GPL es especialmente problemática en pipelines de facturación de alto volumen donde se generan miles de documentos por hora: cada operación genera un proceso separado, añadiendo latencia y complejidad de gestión de recursos.

// Patrón Ghostscript GPL: frágil, sin IntelliSense, errores en stderr
List<string> switches = new List<string>
{
    "-dNOPAUSE", "-dBATCH", "-dSAFER",
    "-sDEVICE=pdfwrite",
    $"-sOutputFile={outputPdf}"
};
processor.Process(switches.ToArray());
// ¿Funcionó? Hay que parsear stderr...

// Patrón IronPDF: tipado, excepciones estándar, IntelliSense
var pdf = renderer.RenderHtmlAsPdf(htmlFactura);
pdf.SaveAs(outputPdf); // Excepción .NET si falla

Mapeo de operaciones equivalentes

Para equipos que evalúan la transición, esta tabla relaciona operaciones comunes:

OperaciónGhostscript GPLIronPDF
GhostscriptProcessorGeneración de procesosPdfDocument + métodos
GhostscriptRasterizerRasterización página a páginapdf.ToBitmap() / RasterizeToImageFiles()
-sDEVICE=pdfwriteVarios métodos PDFPdfDocument
-sDEVICE=png16mSalida PNGRasterizeToImageFiles("*.png")
-sOutputFile=XArchivo de salidaSaveAs("X")
-r300Parámetro DPIParámetro DPI en métodos
-sOwnerPassword=XCifradopdf.SecuritySettings.OwnerPassword
Sin equivalenteFirma PAdESPdfSignature con eIDAS
Sin equivalentePDF/A-3 con adjuntosSaveAsPdfA3() + EmbedFile()

Protección de datos LOPDGDD en el pipeline de facturación

Las facturas contienen datos personales sujetos a la LOPDGDD (la adaptación española del RGPD) y a la supervisión de la AEPD. El pipeline de generación de PDF debe garantizar:

  • Cifrado en reposo de los documentos generados
  • Control de acceso por roles a los PDF firmados
  • Registros de auditoría de las operaciones de firma (quién firmó, cuándo, con qué certificado)
  • Retención según plazos fiscales y destrucción segura al vencimiento

IronPDF proporciona SecuritySettings para cifrado y PdfSignature con trazabilidad; la integración de ambos en un pipeline LOPDGDD-conforme es más directa que con la gestión de procesos externos de Ghostscript GPL.

Cuándo usar Ghostscript GPL y cuándo IronPDF en el mercado español

Ghostscript GPL puede ser adecuado cuando:

  • El proyecto es de código abierto y no hay objeción a publicar el código fuente bajo AGPL
  • No se requiere HTML a PDF: el pipeline trabaja exclusivamente con PostScript o PDF existentes
  • No se emiten facturas bajo VeriFactu, TicketBAI o Facturae; el procesamiento PDF es puramente interno
  • Se dispone de licencia comercial Artifex y la inversión adicional está justificada

IronPDF es la elección apropiada para ISVs españoles cuando:

  • El producto incluye software de facturación sujeto al régimen VeriFactu/TicketBAI/Facturae
  • Se requiere HTML a PDF para plantillas de factura editables por el equipo contable
  • La firma PAdES o la generación de documentos firmados eIDAS forma parte del pipeline
  • El modelo de negocio es propietario (SaaS o distribución de software) y la AGPL es incompatible
  • Se necesita threading seguro para generación de facturas de alto volumen (SII: miles de facturas en tiempo real)

Evaluación de la complejidad de transición

Para ISVs que ya usan Ghostscript GPL y evalúan la migración bajo presión de cumplimiento VeriFactu:

OperaciónComplejidad de migración
PDF a imágenesBaja
Fusionar PDFsBaja
Comprimir PDFBaja
PostScript a PDFMedia
Optimización PDFBaja
Cifrado/protecciónMedia
Conversión PDF/ABaja
HTML a PDF (nuevo)Baja — funcionalidad nueva, no migración
Firma PAdES (nuevo)Media — certificado + integración eIDAS

El mayor riesgo en la migración no es técnico sino cronológico: si el ISV necesita certificar su software para VeriFactu antes de enero de 2027, la migración a un componente con soporte nativo de PDF/A-3, firma digital y HTML a PDF reduce el trabajo de integración respecto a construir estas capacidades sobre Ghostscript GPL.

Conclusión

Para un ISV español que construye software de facturación bajo el régimen VeriFactu, la comparación entre Ghostscript GPL e IronPDF no es solo una evaluación técnica: es una evaluación de riesgo regulatorio. La AGPL de Ghostscript GPL impone la divulgación del código fuente sobre el componente que genera las facturas con VERI*FACTU, firma los documentos para TicketBAI bajo eIDAS con certificados FNMT, y produce los Facturae 3.2.2 para FACe.

IronPDF ofrece una alternativa nativa .NET con licencia comercial predecible, HTML a PDF vía Chromium, firma PAdES, soporte PDF/A-3 y threading seguro para volúmenes compatibles con el SII. La ausencia de la obligación copyleft simplifica directamente el análisis de cumplimiento VeriFactu del ISV.

Evalúe IronPDF con una prueba sin coste y consulte la documentación en español para verificar la compatibilidad con su arquitectura de facturación.

Por favor nota: Ghostscript es una marca registrada de sus respectivos propietarios. Este sitio no está afiliado, respaldado ni patrocinado por Artifex Software. Todas las comparaciones son a título informativo y reflejan información públicamente disponible en el momento de su publicación. IronPDF es un componente que se integra dentro de aplicaciones de facturación; no es en sí mismo un sistema de facturación certificado bajo VeriFactu.
Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien estructurados y visualmente atractivos.

...
Leer más

Artículos Relacionados

Key in blue circle

Obtenga su clave de prueba gratuita de 30 días al instante.

Your trial license will be sent to your email address

Sin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.

bullet_checkedNo se requiere tarjeta de crédito ni creación de cuentaSin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Reserve su Demostración en Vivo gratuita
Booking Badge

Confiado por millones de ingenieros en todo el mundo

Logos de clientes de Iron Software
Obtén tu Consulta Sin Compromiso
Completa el formulario a continuación o envía un correo a sales@ironsoftware.com
Tus detalles siempre serán mantenidos confidenciales.
Confiado por millones de ingenieros en todo el mundo
Logos de clientes de Iron Software
Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta