Ajouter des figures géométriques aux fichiers PS

Solution API C# .NET pour travailler avec des formes de fichiers PS

 

Dessiner des figures géométriques dans des fichiers PostScript (PS) présente quelques particularités à noter :

  • Bien que PostScript utilise un système de coordonnées où l’origine (0, 0) est située dans le coin inférieur gauche de la page, Aspose.Page PsDocument transforme l’état graphique PS afin que l’origine soit située dans le coin supérieur gauche. C’est plus pratique car nous plaçons généralement le contenu de la page de haut en bas et de gauche à droite.
  • Les unités de mesure en PostScript sont des points, où 1 point équivaut à 1/72 de pouce. Par conséquent, lorsque vous spécifiez des coordonnées ou des dimensions de figures géométriques, tenez compte de cette mesure basée sur des points.

  • En PostScript, les figures géométriques sont construites en définissant des chemins qui sont une série de segments de ligne connectés, de courbes ou les deux. Le chemin est défini à l’aide d’une séquence de commandes telles que newpath, moveto, lineto, curveto, arc et closepath. Ils sont utilisés pour contrôler le mouvement du point actuel et définir la forme du chemin. Il existe également une commande qui dessine ou remplit un rectangle (rectfill et rectStroke). Le PsDocument d’Aspose.Page simplifie le dessin et le remplissage de formes géométriques en acceptant uniquement l’objet System.Drawing.Drawing2D.GraphicsPath qui peut contenir un ou plusieurs sous-chemins, composés de segments droits et courbes connectés et/ou déconnectés. Cependant, PsDocument contient également des méthodes pour le dessin de bas niveau, telles que DrawLine(), DrawPolyLine(), Draw(Fill)Arc(), Draw(Fill)Oval(), Draw(Fill)Rect(), Draw(Fill) RoundRect(), Draw(Fill)Polygon().
  • L'ordre dans lequel vous appelez les commandes de dessin est important. Si deux figures se chevauchent, celle qui sera dessinée plus tard apparaîtra au-dessus de la précédente.

  • PostScript vous permet de définir une peinture distincte pour remplir et décrire les figures. Bien que PostScript prenne en charge de nombreux espaces colorimétriques, Aspose.Page propose d'utiliser uniquement les peintures suivantes : couleur unie RVB, motifs de texture et de hachures, remplissage linéaire et dégradé de chemin, les plus populaires.

  • Comme PostScript ne prend pas en charge la transparence, une forme translucide chevauchant une autre forme la cache à l'endroit du chevauchement. Le PsDocument d'Aspose.Page effectue une pseudo-transparence pour les figures colorées qui ne chevauchent pas d'autres formes mais se trouvent sur un fond blanc. Dans ce cas, la couleur RVB finale sera calculée en prenant en compte la valeur alpha de la couleur de la figure.

  • Il prend également en charge diverses opérations de transformation telles que la mise à l'échelle, la rotation, la translation et le cisaillement afin que vous puissiez modifier la taille, l'orientation et la position des formes.

  • PS fournit des fonctionnalités de découpage des zones et des masques, vous permettant de limiter le dessin à des zones spécifiques de formes.

Connaître ces aspects vous permettra de garantir une bonne intégration des formes et un rendu précis dans les flux de travail basés sur PostScript. Mais quoi qu’il en soit, Aspose.Page vous offre la fonctionnalité nécessaire pour dessiner facilement des formes géométriques dans des fichiers PS. Avec cette API, vous pouvez ajouter différentes images en utilisant C#. Pour en savoir plus sur la façon de gérer les fichiers PS et sur la façon de travailler avec les formes dans les fichiers PS en particulier, suivez la documentation.

Pour ajouter des formes aux documents PS, nous avons besoin de :

  • Aspose.Page pour l'API .NET qui est une API de manipulation et de conversion de documents riche en fonctionnalités, puissante et facile à utiliser pour la plate-forme C#.

  • Ouvrez le gestionnaire de packages NuGet, recherchez Aspose.Page et installez. Vous pouvez également utiliser la commande suivante à partir de la console Package Manager.

Package Manager Console Command


    PM> Install-Package Aspose.Page

Étapes pour ajouter des figures à un fichier PS C#.

Ce code ci-dessous crée un document PS, y ajoute un rectangle et le peint en orange. Pour voir plus d’exemples, accédez au projet Aspose.Page-for-.NET GitHub .

  1. Créez un flux de sortie pour le document PostScript à l’aide de la classe FileStream.
  2. Créez un objet PsSaveOptions pour spécifier les options d’enregistrement du document PostScript.
  3. Créez un chemin graphique à l’aide de la classe System.Drawing.Drawing2D.GraphicsPath et spécifiez les coordonnées et les dimensions du rectangle à l’aide de la classe System.Drawing.RectangleF.
  4. Utilisez la méthode SetPaint() pour spécifier la couleur du rectangle.
  5. Appelez la méthode Fill() pour ajouter la couleur spécifiée au rectangle.
  6. Appelez le ClosePage() pour indiquer que la page actuelle est terminée.
  7. Enregistrez les modifications à l’aide de la méthode Save().

Code C# pour insérer une forme géométrique dans un fichier PS

    using Aspose.Page.EPS;
    using Aspose.Page.EPS.Device;
    using System.Drawing;
    using System.Drawing.Drawing2D;
    using System.IO;
    //Create an output stream for PostScript document
    using (Stream outPsStream = new FileStream(dataDir + "AddRectangle_outPS.ps", FileMode.Create))
    {
        //Create save options with A4 size
        PsSaveOptions options = new PsSaveOptions();

        // Create a new 1-paged PS Document
        PsDocument document = new PsDocument(outPsStream, options, false);

        //Create a graphics path from the first rectangle
        System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath();
        path.AddRectangle(new System.Drawing.RectangleF(250, 100, 150, 100));
        //Set the paint
        document.SetPaint(new System.Drawing.SolidBrush(Color.Orange));
        //Fill the rectangle
        document.Fill(path);

        //Close the current page
        document.ClosePage();

        //Save the document
        document.Save();
    }



FAQ

1. Est-il possible d’ajouter des figures ou des formes géométriques aux fichiers PostScript ?

Oui, vous pouvez ajouter des figures ou des formes géométriques aux fichiers PostScript à l’aide de divers opérateurs de dessin fournis par le langage PostScript. Ces opérateurs vous permettent de dessiner des formes de base telles que des rectangles, des cercles, des lignes et des polygones, ainsi que des constructions géométriques plus complexes.

2. Comment puis-je ajouter des figures ou des formes géométriques à un fichier PS ?

Pour ajouter des figures ou des formes géométriques à un fichier PostScript à l’aide d’Aspose.Page, vous devez créer un chemin graphique à l’aide de la classe System.Drawing.Drawing2D.GraphicsPath et spécifier les coordonnées et les dimensions du rectangle à l’aide de *System.Drawing.Rectangle. * Classe. Utilisez ensuite les méthodes SetPaint() et Fill() pour gérer la couleur de la figure.

3. Existe-t-il des formes ou des modèles prédéfinis pouvant être utilisés dans les fichiers PostScript (PS) ?

Bien que PostScript lui-même ne fournisse pas de formes ou de modèles prédéfinis comme certains autres formats graphiques, vous pouvez créer votre propre bibliothèque de formes réutilisables en les définissant dans des fichiers PostScript distincts ou en les incorporant à votre flux de travail sous forme d’extraits de code réutilisables.

PS Qu'est-ce que le format de fichier PS

Le format PS est l'un des formats de langage de description de page (PDL). Il est capable de contenir des informations graphiques et textuelles sur la page. C'est pourquoi le format était pris en charge par la plupart des programmes de retouche d'image. Le fichier postscript lui-même est une sorte d'instruction pour les imprimeurs. Il contient des informations sur quoi et comment imprimer à partir de sa page.