Aspose.Page pour la FAQ sur la conversion .NET-PS/EPS/XPS
Q : Quels formats de fichiers Aspose.Page pour .NET peut-il convertir depuis et vers ?
R : De : PostScript (.ps), PostScript encapsulé (.eps) et Spécification papier XML (.xps).
Vers : PDF, SVG, PNG, JPEG, BMP, GIF, TIFF (raster et multipage), EMF/WMF et tout format d’image pris en charge par Aspose.Imaging (par exemple, WEBP).
Q : Quelles versions de .NET sont prises en charge ?
R : .NET Framework 4.6+, .NET Core2.0+ et .NET5,6,7,8. La bibliothèque est fournie sous forme de package NuGet (Aspose.Page) et fonctionne sous Windows, Linux et macOS.
Q : Ai-je besoin de dépendances externes telles que Ghostscript ou ImageMagick ?
R : Non. Aspose.Page est une bibliothèque purement gérée ; toute la logique de rendu et de conversion est intégrée, ne nécessitant aucun binaire natif ni outil tiers.
Q : Comment convertir un fichier PS/EPS/XPS en 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}Remplacez l’extension de fichier par « .eps » ou « .xps » pour gérer ces formats.
Q : Puis-je convertir des fichiers PS/EPS/XPS multipages en PDF multipages ou en piles d’images ?
R : Oui. L’objet Document représente l’intégralité du document source. L’enregistrement au format PDF produit un PDF de plusieurs pages. Lors de l’enregistrement au format image, vous pouvez :
- Générer une image par page (par défaut)
- Combinez des pages dans un TIFF multipage en définissant
TiffSaveOptions.MultiPage = true.
Q : Est-il possible de définir la résolution/DPI des images de sortie ?
R : Absolument. Utilisez les options de sauvegarde spécifiques au format et définissez ResolutionX / ResolutionY (ou DpiX / DpiY). Exemple pour PNG :
1var options = new PngSaveOptions { ResolutionX = 300, ResolutionY = 300 };
2document.Save("page1.png", options);Q : Comment puis-je contrôler la taille, l’orientation ou le recadrage de la page pendant la conversion ?
R : Chaque page expose un objet PageInfo dans lequel vous pouvez lire/écrire Width, Height, Orientation, Margin et ClipRect. Les transformations peuvent également être appliquées via l’API graphique de style GDI+ (« Graphics », « Matrix »).
Q : Aspose.Page préserve-t-il les espaces colorimétriques et la transparence ?
R : Oui. Les profils de couleurs d’origine (DeviceRGB, CMJN) et la transparence sont conservés lors de la conversion en PDF, PNG, TIFF ou SVG. Pour les formats sans prise en charge CMJN (par exemple JPEG), le moteur effectue une conversion automatique des couleurs tout en conservant la fidélité visuelle.
Q : Puis-je convertir un document en mémoire sans toucher au système de fichiers ?
R : Oui. Chargez à partir d’un Stream (par exemple, MemoryStream) et enregistrez directement dans un autre 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}Q : Une licence est-elle requise pour une utilisation en production ?
R : Un essai gratuit fonctionne en mode sans licence et ajoute un petit filigrane sur les PDF. Pour un déploiement commercial, vous devez acheter un fichier de licence Aspose.Page (« Aspose.Page.lic »). Appliquez-le avec :
1var license = new License();
2license.SetLicense("Aspose.Page.lic");Toutes les restrictions sont supprimées par la suite.
Q : Quelles sont les caractéristiques de performance typiques ?
R : Vitesse de conversion : ~150‑250 ms par page sur un processeur moderne (Intel i7‑12‑core) pour PS/EPS → PDF.
Utilisation de la mémoire : reste inférieure à 100 Mo pour les documents jusqu’à 150 pages.
Évolutivité : prend en charge le traitement asynchrone et la conversion parallèle de pages séparées si nécessaire.
Q : Comment gérer les erreurs telles que « Fichier PS invalide » ou « Fonctionnalité XPS non prise en charge » ?
R : Les erreurs d’exécution génèrent des sous-classes Aspose.Page.Exceptions (FileFormatException, ConversionException, etc.). Enveloppez les conversions dans des blocs try/catch, inspectez « Message » et « ErrorCode ». Appelez Document.Validate() pour les vérifications avant vol si nécessaire.
Q : Existe-t-il des exemples de projets ou des extraits de code disponibles ?
R : Oui. Le référentiel GitHub officiel d’Aspose.Page contient des exemples prêts à l’emploi pour :
- PS/EPS → PDF
- XPS → SVG
- Exportation TIFF multipage
- Conversion de flux en mémoire
Tous les échantillons résident sous « /Examples/CSharp/Conversion ».
Q : Où puis-je trouver de la documentation et des références sur l’API ?
R :
•
Documents officiels
•
Référence API (typedocs)
• Base de connaissances avec des articles « Comment faire » couvrant des scénarios de conversion courants.
Q : L’assistance technique est-elle fournie ?
R : Oui. Les clients sous licence reçoivent une assistance par e-mail et par ticket de la part des ingénieurs Aspose (temps de réponse ≤ 24 h). Les forums communautaires sont ouverts à tous les utilisateurs pour des questions générales.