Convertir PS, EPS et XPS

Solution API de conversion PS, EPS et XPS pour .NET.

 

Chaque fois qu'il est nécessaire de convertir des fichiers PostScript PS et PostScript EPS encapsulés ainsi que des documents XPS par programmation, l'API .NET peut le faire en douceur et convertit plusieurs fichiers. Pour PS et EPS, l'API prend en charge les opérateurs PostScript de niveaux 1 à 3 et la plupart des commentaires d'en-tête EPS et transforme les documents PostScript ayant une conformité maximale à l'exception de quelques cas de polices et l'API traite des polices telles que Time New Roman.

De plus, pour la transformation de fichiers XPS, l'API peut ajouter ou supprimer des pages, traiter des éléments de canevas, de chemins et de glyphes, créer des formes graphiques vectorielles, des chaînes de texte, convertir des éléments de plan XPS, etc.

La solution API pour .NET ici vous permet de convertir par programmation des fichiers de formats PDL tels que PS, EPS et XPS, mais il peut être utile de voir et d'essayer la multiplateforme développée sur ces API natives.

Conversion PostScript en PDF via C# .NET.

Pour convertir des fichiers PostScript PS et Encapsulated PostScript EPS en PDF via l'API .NET, vous devez suivre les étapes suivantes :

  1. Chargez le fichier PS ou EPS à l’aide de PsDocument Class .
  2. Définissez l’enregistrement PDF à l’aide de Classe PdfSaveOptions .
  3. Utilisez FileStream Class pour le fichier PDF de sortie.
  4. PdfDevice Class en initialisant avec l’objet filestream PDF de sortie.
  5. Appelez PsDocument.Save pour la conversion PDF.
Code C# pour la conversion PS EPS en PDF
// The path to the documents directory.
string dataDir = "definedDirectoryPath";
// Initialize PsDocument with the name of PostScript file.
PsDocument document = new PsDocument(dataDir + "input.ps");
// If you want to convert Postscript file despite of minor errors set this flag
bool suppressErrors = true;
//Initialize options object with necessary parameters.
PdfSaveOptions options = new PdfSaveOptions(suppressErrors);
// If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
options.AdditionalFontsFolders = new string[] { @"{FONT_FOLDER}" };
// Default page size is 595x842 and it is not mandatory to set it in PdfSaveOptions
// But if you need to specify sizeuse following line
//PdfSaveOptions options = new PdfSaveOptions(suppressErrorsnew, Aspose.Page.Drawing.Size(595x842));
// or
//saveOptions.Size = new Aspose.Page.Drawing.Size(595x842);
document.SaveAsPdf(dataDir + "outputPDF_out.pdf", options);
//Review errors
if (suppressErrors)
{
foreach (Exception ex in options.Exceptions)
{
Console.WriteLine(ex.Message);
}
}
 

Conversion PostScript en Images via C# .NET.

Pour toute application de conversion EPS/PS PostScript en image, le code C# suivant fonctionne bien, alors suivez les étapes suivantes :

  1. Chargez le document à l’aide de la classe PsDocument ayant le flux de fichier d’entrée comme paramètre.
  2. Créez l’objet ImageSaveOptions Class et initialisez-le avec les paramètres requis.
  3. Enregistrez chaque page de fichier d’entrée dans une image PNG, JPG, TIFF, BMP, etc.
Code C# pour la conversion PostScript en images
// The path to the documents directory.
string dataDir = "definedDirectoryPath";
// Initialize PsDocument with the name of PostScript file.
PsDocument document = new PsDocument(dataDir + "inputForImage.ps");
// If you want to convert Postscript file despite of minor errors set this flag
bool suppressErrors = true;
//Initialize options object with necessary parameters.
ImageSaveOptions options = new ImageSaveOptions();
//Set output image format.
options.ImageFormat = Aspose.Page.Drawing.Imaging.ImageFormat.Png;
// If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
options.AdditionalFontsFolders = new string[] { @"{FONT_FOLDER}" };
// Save PS document as array of image bytes, one bytes array for one page.
byte[][] imagesBytes = document.SaveAsImage(options);
//Save images bytes arrays as image files.
int i = 0;
foreach (byte[] imageBytes in imagesBytes)
{
string imagePath = Path.GetFullPath(dataDir + "out_image" + i.ToString() +"." + options.ImageFormat.ToString().ToLower());
using (FileStream fs = new FileStream(imagePath, FileMode.Create, FileAccess.Write))
{
fs.Write(imageBytes, 0, imageBytes.Length);
}
i++;
}



FAQ

1. Puis-je convertir Postscript avec cette solution API ?

Aspose.Page a une fonctionnalité qui vous permet de convertir des fichiers PS, XPS et EPS vers d’autres formats en ligne ou par programmation. Si vous avez besoin de transformer vos fichiers instantanément en ligne, vous pouvez utiliser l’application multiplateforme Page Description Language format files Converter .

2. Quelles langues de description de page sont prises en charge par le convertisseur ?

Cette fonctionnalité de conversion prend en charge les fichiers avec les extensions .ps, .eps et .xps. Des PDL célèbres tels que PDF et SVG sont représentés comme des solutions distinctes dans Aspose.products

3. La fonctionnalité est-elle gratuite ?

Les convertisseurs multiplateformes sont gratuits, alors que pour la solution API, vous pouvez obtenir un essai gratuit, puis acheter le produit si nécessaire.

 

Convertissez XPS en images JPG, PNG, BMP via C# .NET.

L'API .NET prend également en charge la conversion XPS en images BMP, JPG, PNG, TIFF, etc., et fournit la classe XpsDocument pour les opérations XPS. Pour convertir XPS en image, procédez comme suit :

  1. Chargez le fichier XPS à partir du flux.
  2. Initialisez les options d’enregistrement d’image pertinentes, par exemple pour XPS vers JPG, il s’agit de JpegSaveOptions et pour XPS vers PNG ses PngSaveOptions . Voici la liste de tous les XPS vers Image options de sauvegarde .
  3. Définissez les paramètres pertinents tels que SmoothingMode, Resolution et PageNumbers, etc. pour le rendu. Enfin, parcourez les partitions de documents pour les enregistrer dans des images.
Code C# pour la conversion XPS en image
// The path to the documents directory.
string dataDir = "definedDirectoryPath";
//Outut file
string outputFileName = dataDir + "XPStoImage_out.jpeg";
// Load XPS document form the XPS file
XpsDocument document = new XpsDocument(dataDir + "input.xps", new XpsLoadOptions());
// Initialize options object with necessary parameters.
JpegSaveOptions options = new JpegSaveOptions()
{
SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
Resolution = 300,
PageNumbers = new int[] { 1, 2, 6 }
};
// Save XPS document to the images byte arrays. The first dimension is for inner documents
/// and the second one is for pages within inner documents.
byte[][][] imagesBytes = document.SaveAsImage(options);
// Iterate through document partitions (fixed documents, in XPS terms)
for (int i = 0; i < imagesBytes.Length; i++)
{
// Iterate through partition pages
for (int j = 0; j < imagesBytes[i].Length; j++)
{
// Initialize image output stream
using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) + Path.DirectorySeparatorChar +
Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
// Write image
imageStream.Write(imagesBytes[i][j], 0, imagesBytes[i][j].Length);
}
}
 
  

Support and Learning Resources