Preguntas frecuentes sobre la conversión de Aspose.Page para .NET–PS/EPS/XPS
P: ¿Desde y hacia qué formatos de archivo puede convertir Aspose.Page para .NET?
R: De: PostScript (.ps), PostScript encapsulado (.eps) y especificación de papel XML (.xps).
Para: PDF, SVG, PNG, JPEG, BMP, GIF, TIFF (ráster y multipágina), EMF/WMF y cualquier formato de imagen compatible con Aspose.Imaging (por ejemplo, WEBP).
P: ¿Qué versiones de .NET son compatibles?
R: .NET Framework4.6+, .NET Core2.0+ y .NET5,6,7,8. La biblioteca se entrega como un paquete NuGet (Aspose.Page) y se ejecuta en Windows, Linux y macOS.
P: ¿Necesito alguna dependencia externa como Ghostscript o ImageMagick?
R: No. Aspose.Page es una biblioteca exclusivamente administrada; Toda la lógica de renderizado y conversión está integrada y no requiere archivos binarios nativos ni herramientas de terceros.
P: ¿Cómo convierto un archivo PS/EPS/XPS a PDF en C#?
R:
1using Aspose.Page;
2using Aspose.Page.Drawing;
3
4// Load the source document
5using (var document = new Document("input.ps"))
6{
7 // Save as PDF
8 document.Save("output.pdf", SaveFormat.Pdf);
9}Reemplace la extensión del archivo con .eps o .xps para manejar esos formatos.
P: ¿Puedo convertir archivos PS/EPS/XPS de varias páginas en archivos PDF de varias páginas o pilas de imágenes?
R: Sí. El objeto Documento representa el documento fuente completo. Guardar en PDF produce un PDF de varias páginas. Al guardar en formatos de imagen, puede:
- Generar una imagen por página (predeterminado)
- Combine páginas en un TIFF de varias páginas configurando
TiffSaveOptions.MultiPage = true.
P: ¿Es posible configurar la resolución/DPI de las imágenes de salida?
R: Absolutamente. Utilice opciones de guardado específicas del formato y configure ResolutionX/ResolutionY (o DpiX/DpiY). Ejemplo para PNG:
1var options = new PngSaveOptions { ResolutionX = 300, ResolutionY = 300 };
2document.Save("page1.png", options);P: ¿Cómo puedo controlar el tamaño, la orientación o el recorte de la página durante la conversión?
R: Cada página expone un objeto PageInfo donde puede leer/escribir Ancho, Alto, Orientación, Margen y ClipRect. Las transformaciones también se pueden aplicar a través de la API de gráficos estilo GDI+ (Graphics, Matrix).
P: ¿Aspose.Page conserva los espacios de color y la transparencia?
R: Sí. Los perfiles de color originales (DeviceRGB, CMYK) y la transparencia se conservan al convertir a PDF, PNG, TIFF o SVG. Para formatos sin soporte CMYK (por ejemplo, JPEG), el motor realiza una conversión de color automática manteniendo la fidelidad visual.
P: ¿Puedo convertir un documento en la memoria sin tocar el sistema de archivos?
R: Sí. Cargue desde un Stream (por ejemplo, MemoryStream) y guárdelo directamente en otro Stream:
1using (var input = new MemoryStream(File.ReadAllBytes("sample.xps")))
2using (var doc = new Document(input))
3using (var output = new MemoryStream())
4{
5 doc.Save(output, SaveFormat.Pdf);
6 // output.ToArray() now holds the PDF bytes
7}P: ¿Se requiere licencia para el uso en producción?
R: Una prueba gratuita funciona en modo sin licencia y agrega una pequeña marca de agua en los archivos PDF. Para la implementación comercial, debe comprar un archivo de licencia Aspose.Page (Aspose.Page.lic). Aplicarlo con:
1var license = new License();
2license.SetLicense("Aspose.Page.lic");Todas las restricciones se eliminan a partir de entonces.
P: ¿Cuáles son las características de rendimiento típicas?
R: Velocidad de conversión: ~150‑250 ms por página en una CPU moderna (Intel i7‑12‑core) para PS/EPS → PDF.
Uso de memoria: se mantiene por debajo de 100 MB para documentos de hasta 150 páginas.
Escalabilidad: admite el procesamiento asincrónico y la conversión paralela de páginas separadas cuando sea necesario.
P: ¿Cómo soluciono errores como “Archivo PS no válido” o “Función XPS no compatible”?
R: Los errores de tiempo de ejecución arrojan subclases Aspose.Page.Exceptions (FileFormatException, ConversionException, etc.). Envuelva las conversiones en bloques try/catch, inspeccione Message y ErrorCode. Llame a Document.Validate() para realizar comprobaciones previas al vuelo si es necesario.
P: ¿Hay proyectos de muestra o fragmentos de código disponibles?
R: Sí. El repositorio oficial de Aspose.Page GitHub contiene ejemplos listos para ejecutar para:
- PS/EPS → PDF
- XPS → SVG
- Exportación TIFF de varias páginas
- Conversión de flujo en memoria
Todos los ejemplos se encuentran en/Examples/CSharp/Conversion.
P: ¿Dónde puedo encontrar documentación y referencias de API?
R:
•
Documentos oficiales
•
Referencia API (typedocs)
• Base de conocimientos con artículos prácticos que cubren escenarios de conversión comunes.
P: ¿Se proporciona soporte técnico?
R: Sí. Los clientes con licencia reciben soporte por correo electrónico y mediante tickets de los ingenieros de Aspose (tiempo de respuesta ≤24 h). Los foros de la comunidad están abiertos a todos los usuarios para preguntas generales.