¡Nos complace anunciar el lanzamiento de GroupDocs.Conversion for .NET v26.10, disponible a partir de octubre de 2026! Esta versión se centra en el control sobre lo que un documento puede cargar: su código ahora puede decidir sobre cada recurso externo que solicita un documento, y los valores predeterminados son seguros para documentos de fuentes desconocidas. Además, hace que las conversiones respeten el formato de salida y la selección de páginas solicitados, corrige una serie de fallos de conversión y problemas de carga en .NET Framework, y actualiza una dependencia sensible a la seguridad: 60 características, mejoras y correcciones de errores en total.
Aspectos destacados
Decida qué puede cargar cada documento
Los documentos a menudo hacen referencia a recursos externos: imágenes en una CDN, hojas de estilo, scripts, texturas 3D, taxonomías XBRL. En la versión 26.10 puede ver cada una de estas solicitudes y decidir sobre ellas en código. Implemente IExternalResourceHandler y establézcalo mediante la propiedad ExternalResourceHandler de las opciones de carga. El controlador recibe cada recurso con la decisión predeterminada ya establecida, y puede permitirlo, omitirlo o — para la mayoría de los formatos — suministrar el contenido directamente, por ejemplo desde su propia caché, de modo que no se solicite nada.
Este controlador carga imágenes JPEG de un host de confianza además de lo que permiten los valores predeterminados:
public class TrustedJpegHandler : IExternalResourceHandler
{
public void OnLoading(ExternalResourceLoadingArgs args)
{
Uri uri;
if (Uri.TryCreate(args.Uri, UriKind.Absolute, out uri)
&& uri.Scheme == Uri.UriSchemeHttps
&& string.Equals(uri.Host, "cdn.example.com", StringComparison.OrdinalIgnoreCase)
&& (uri.AbsolutePath.EndsWith(".jpg", StringComparison.OrdinalIgnoreCase)
|| uri.AbsolutePath.EndsWith(".jpeg", StringComparison.OrdinalIgnoreCase)))
{
args.Skipped = false;
}
}
}
WebLoadOptions loadOptions = new WebLoadOptions
{
ExternalResourceHandler = new TrustedJpegHandler()
};
using (Converter converter = new Converter("sample.html", (LoadContext loadContext) => loadOptions))
{
converter.Convert("converted.pdf", new PdfConvertOptions());
}
El controlador funciona con las opciones de carga para web, XML, procesamiento de texto, hoja de cálculo, CSV y TSV, presentaciones, correo electrónico, SVG, finanzas y documentos 3D.
Valores predeterminados seguros para documentos no confiables
Convertir un archivo que alguien subió no debe hacer que su servidor lea otros archivos o se conecte a hosts arbitrarios. Con la configuración predeterminada, la versión 26.10:
- carga archivos locales solo desde la propia carpeta del documento y nunca desde rutas UNC;
- no ejecuta scripts en documentos HTML, MHTML, XHTML y SVG, y no solicita archivos de script;
- aplica las mismas reglas a SVG, modelos 3D, XBRL, XSL‑FO, Markdown y conversiones de correo electrónico a hoja de cálculo.
Cuando sus documentos realmente necesiten recursos externos, permítalos de la forma que mejor se ajuste: enumere ubicaciones de confianza en WhitelistedResources, decida por recurso con el controlador, o establezca SkipExternalResources = false para los documentos en los que confíe. Los scripts solo se ejecutan cuando establezca ExecuteScripts = true en WebLoadOptions o SvgLoadOptions. Las rutas UNC y las referencias javascript: o vbscript: nunca se cargan, sea cual sea la configuración.
La salida que solicitó
Algunas conversiones ignoraban parte de la solicitud. Varias siempre generaban DOCX, XLSX, PPTX o un TIFF de varios fotogramas sin importar el formato de destino que eligiera, y la selección de páginas se ignoraba para correo electrónico, web y TIFF multipágina a procesamiento de texto, para documentos Word Flat OPC, y para Project a PS y PCL. Todas ahora producen lo que indican las opciones de conversión. Las marcas de agua ahora también aparecen al convertir documentos que no son imágenes a imágenes y al convertir CSV y TSV, las páginas MHT y MHTML se renderizan en lugar de mostrar su fuente MIME, y los fondos transparentes ya no se vuelven negros en la salida J2K, JP2, WMF y WMZ.
Menos conversiones fallidas
Los archivos PostScript que usan el operador run o file en .NET Framework, los documentos PSD, PSB y AI página por página, los dibujos CAD completos a TeX, XHTML con SVG incrustado, PDF, XPS y SVG a EPUB, y Visio y SVG a hoja de cálculo ahora se convierten en lugar de fallar. En archivos de correo, buzón y archivo, un adjunto que no puede convertirse al formato de destino ya no provoca el fallo de toda la conversión, y un documento contenido que no puede cargarse ahora se informa mediante ConversionEvents.OnDocumentFailed.
Seguridad, licencias y .NET Framework
- System.Security.Cryptography.Pkcs avanza a 8.0.2 (10.0.13 en .NET 10), abordando CVE‑2026‑84008 y CVE‑2026‑70162.
- Los proyectos .NET Framework ya no fallan al cargar RuntimeInformation o ValueTuple, y las conversiones EML, HTML y CAD ya no fallan en .NET Framework 4.6.2 a 4.7.0.
- Las conversiones WebP con una licencia válida ya no muestran la insignia de prueba. En modo de evaluación, el límite de 3 páginas ahora también se aplica a la salida SVG, SVGZ, PS y PCL.
Qué hay de nuevo en esta versión
- [Feature] Añadir una devolución de llamada por recurso para inspeccionar, permitir, denegar o suministrar cada recurso externo que carga un documento
- [Improvement] Ofrecer SvgLoadOptions como opciones de carga para documentos SVG y SVGZ
- [Improvement] Nombrar elementos OLM y NSF sin asunto por carpeta y posición y evitar nombres de dispositivos reservados de Windows en los nombres de elementos del buzón
- [Improvement] Informar los elementos de archivo, correo y buzón que no pueden cargarse al controlador de documento fallido en lugar de solo registrarlos
- [Bug] La insignia de prueba se aplica al convertir desde Webp incluso cuando se aplica una licencia válida
- [Bug] Conversión específica de archivo VSDX – texto fuera de los límites del cuadro
- [Bug] Texto con doble tachado no se conserva en la conversión ODT a PDF
- [Bug] Problemas de conversión de VCF a Excel
- [Bug] Corregir conversiones que fallan al cargar RuntimeInformation en proyectos .NET Framework 4.7.1+ de estilo antiguo que usan PackageReference
- [Bug] Corregir conversiones que fallan al cargar RuntimeInformation o ValueTuple en proyectos .NET Framework con packages.config
- [Bug] Corregir conversiones de EML, HTML y CAD que fallan en entornos .NET Framework 4.6.2 a 4.7.0
- [Bug] Convertir documentos WordProcessing, Pdf y ProjectManagement a cualquier formato de hoja de cálculo siempre produce XLSX
- [Bug] Convertir documentos WordProcessing, Pdf y Diagram a cualquier formato de presentación siempre produce PPTX
- [Bug] Corregir conversión de PST, OST y MBOX que falla en un elemento sin asunto y notas adhesivas PST que se convierten en texto ilegible
- [Bug] Convertir un documento de una sola página a un formato de imagen que no sea TIFF siempre produce un TIFF de varios fotogramas
- [Bug] [GroupDocs.Conversion for .NET] Actualizar System.Security.Cryptography.Pkcs a 8.0.2 (CVE‑2026‑84008 / CVE‑2026‑70162)
- [Bug] La marca de agua de texto o imagen no se aplica al convertir documentos que no son imágenes a imágenes
- [Bug] El fondo de página transparente se vuelve negro al convertir a J2K, JP2, WMF y WMZ
- [Bug] La salida WMZ de documentos basados en Word contiene un PNG comprimido con gzip y la salida EMZ de imágenes se comprime dos veces
- [Bug] Las páginas MHT y MHTML convertidas a imágenes muestran la fuente MIME en lugar de la página
- [Bug] La información del documento de un documento Publisher siempre indica una página
- [Bug] La marca de agua no se aplica al convertir documentos CSV y TSV
- [Bug] Cargar recursos externos solo desde prefijos de URL en la lista blanca exacta y la propia carpeta del documento, nunca desde rutas UNC
- [Bug] Corregir CAD, Image, Diagram, DjVu, VCF y Email a WordProcessing que guardan DOCX para todo objetivo excepto DOC
- [Bug] Corregir Email a WordProcessing que ignora la selección de página y el rango de páginas
- [Bug] Corregir TIFF multipágina a WordProcessing que ignora la selección de página
- [Bug] Respetar SkipExternalResources y WhitelistedResources al convertir documentos Markdown y CHM
- [Bug] Respetar SkipExternalResources y WhitelistedResources en conversiones de correo a hoja de cálculo, hoja de cálculo y rango de páginas
- [Bug] No cargar imágenes fuera de la carpeta del documento por defecto al convertir HTML a una hoja de cálculo
- [Bug] No cargar recursos externos por defecto al convertir SVG a presentación, procesamiento de texto, hoja de cálculo, XPS o EPS
- [Bug] No cargar bibliotecas de materiales 3D, texturas y buffers fuera de la carpeta del modelo por defecto
- [Bug] No cargar imágenes externas por defecto al convertir XML mediante una hoja de estilo XSL‑FO
- [Bug] Corregir HTML y MHTML a WordProcessing que guardan DOCX para todo objetivo
- [Bug] No cargar taxonomías XBRL e XBRL incrustadas fuera de la carpeta del documento por defecto
- [Bug] Dejar de ejecutar scripts y descargar archivos de script al convertir documentos HTML, XHTML y SVG
- [Bug] Corregir Web a WordProcessing que ignora la selección de página y el rango de páginas
- [Bug] Corregir documentos Word Flat OPC que ignoran la selección de página y el rango de páginas
- [Bug] No incrustar texturas fuera de la carpeta del modelo por defecto al convertir documentos 3D
- [Bug] Corregir archivos de compresión de flujo único que convierten su archivo sin nombre
- [Bug] Corregir referencias javascript: y vbscript: que se recuperan cuando se permiten recursos externos
- [Bug] Corregir documentos XHTML con SVG incrustado que fallan al convertir
- [Bug] Corregir conversión HTML a HTML que falla cuando no se puede cargar un @import CSS relativo
- [Bug] Corregir conversión de Visio y SVG a hoja de cálculo que falla en una página sin contenido para dibujar
- [Bug] Corregir conversión de PDF, XPS y SVG a EPUB que falla en un hipervínculo que no cubre texto
- [Bug] Corregir conversión de correo, buzón y archivo que falla en un adjunto que no puede convertirse al formato de destino
- [Bug] Corregir conversión PCL que reemplaza Courier New y otras fuentes instaladas después de convertir un PDF
- [Bug] GroupDocs.Conversion.LowCode 26.9.0: DOCX a PDF en Linux ignora la sustitución de fuentes y usa la primera fuente alfabéticamente
- [Bug] Corregir errores de documentación XML en GroupDocs.Conversion.LowCode 26.9.0
- [Bug] Corregir conversión PostScript que falla en .NET Framework cuando un documento usa el operador run o file
- [Bug] Corregir conversiones sin licencia a formatos de lenguaje de descripción de página que ignoran el límite de prueba de páginas
- [Bug] Corregir conversión página por página de documentos PSD, PSB y Illustrator AI que falla con una excepción
- [Bug] Corregir conversión de video a formato de audio que falla incluso cuando se establece un conector de video
- [Bug] Corregir conversión de ProjectManagement a PS y PCL que produce páginas extra e ignora la selección de página
- [Bug] Corregir ProjectManagement a SVG que escribe UTF‑16 sin marca de orden de bytes
- [Bug] Corregir 3D a glTF y OBJ que escribe archivos de buffer y material en el directorio de trabajo
- [Bug] Corregir conversiones MHT y MHTML a PDF, XPS, TeX y WordProcessing que muestran la fuente MIME en lugar de la página
- [Bug] Corregir conversión CAD a TeX de un dibujo completo que falla con FileTypeNotSupported
- [Bug] Corregir conversiones PDL y XML/JSON a PS y PCL que añaden páginas extra
- [Bug] Corregir conversiones CAD a PS y PCL que conservan solo una página de dibujos DWF multipágina
- [Bug] Corregir conversión MBOX que falla o elimina los encabezados de correo cuando el asunto del mensaje parece un nombre de archivo
Cambios en la API pública
Nueva API
IExternalResourceHandleryExternalResourceLoadingArgs(Uri,Skipped,Data) en el espacio de nombresGroupDocs.Conversion.Options.Load.ExternalResourceHandlerenIResourceLoadingOptionsy en las opciones de carga que lo implementan.ExecuteScriptsenWebLoadOptionsySvgLoadOptions.SkipExternalResources,WhitelistedResourcesyExternalResourceHandlerenFinanceLoadOptionsyThreeDLoadOptions, que ahora implementanIResourceLoadingOptions.
⚠️ Verifique antes de actualizar
-
Recursos externos: los documentos que dependían de archivos locales fuera de su carpeta, rutas UNC o scripts ahora se convierten sin ellos. Permita lo que confíe según lo descrito en Valores predeterminados seguros para documentos no confiables.
-
Entradas de lista blanca: cada entrada de
WhitelistedResourcesdebe ser un prefijo de URI absoluto, comohttps://cdn.example.com/assets/ofile:///C:/assets/. Entradas comojpgoexample.com, que en versiones anteriores coincidían en cualquier parte de la URL, ahora hacen que la carga falle conInvalidLoadOptionsException. -
XBRL y XBRL incrustado: una presentación cuya taxonomía se encuentre fuera de su carpeta, o una cargada desde un flujo, ahora falla al cargar con
InvalidLoadOptionsException. Cargue presentaciones de confianza de esta manera:using (Converter converter = new Converter("filing.xbrl", (LoadContext loadContext) => new FinanceLoadOptions { SkipExternalResources = false })) { converter.Convert("filing.xlsx", new SpreadsheetConvertOptions()); } -
SVG y SVGZ: convertidos sin opciones de carga, ahora usan
SvgLoadOptions, yPossibleConversions.LoadOptionsdevuelveSvgLoadOptionsen lugar dePageDescriptionLanguageLoadOptions. -
Formato de salida y páginas: las conversiones ahora respetan el formato solicitado y la selección de páginas, por lo que la salida puede diferir de versiones anteriores con las mismas opciones.
PublisherDocumentInfo.PagesCountahora devuelve el recuento real de páginas. -
Implementaciones personalizadas de
IResourceLoadingOptionsdeben añadir la nueva propiedadExternalResourceHandler.
Las notas de la versión enumeran cada cambio con los mensajes exactos de excepción.
Cómo obtener la actualización
NuGet
Actualice al paquete más reciente GroupDocs.Conversion a través de NuGet: GroupDocs.Conversion 26.10.0
dotnet add package GroupDocs.Conversion --version 26.10.0
Descarga directa
Descargue los ensamblados desde la página GroupDocs.Conversion for .NET 26.10
Recursos
- Notas completas de la versión
- Documentación
- Acceso a la red y privacidad de datos – cuándo la biblioteca accede a la red y cómo ejecutarla sin conexión
- Omitir carga de recursos externos – valores predeterminados, entradas de lista blanca, el controlador por recurso y scripts
- Notas de migración – migrar a la versión 26.10
- Opciones de carga para diferentes tipos de documento
- Ejemplos en GitHub – ubicaciones de confianza, un controlador por recurso, scripts de HTML y XBRL de confianza con una taxonomía remota
- Foro de soporte gratuito