Dessin d'Images
Dessin de Lignes
Cet exemple utilise la classe Graphics pour dessiner des formes de lignes sur la surface de l’image. Pour démontrer l’opération, l’exemple crée une nouvelle image et dessine des lignes sur la surface de l’image en utilisant la méthode DrawLine exposée par la classe Graphics. Tout d’abord, nous allons créer une PsdImage en spécifiant sa hauteur et sa largeur.
Une fois l’image créée, nous utiliserons la méthode Clear exposée par la classe Graphics pour définir sa couleur d’arrière-plan. La méthode DrawLine de la classe Graphics est utilisée pour dessiner une ligne sur une image en connectant deux structures de points. Cette méthode a plusieurs surcharges acceptant l’instance de la classe Pen et des paires de coordonnées de points ou de structures Point/PointF en tant qu’arguments. La classe Pen définit un objet utilisé pour dessiner des lignes, des courbes et des figures. La classe Pen dispose de plusieurs constructeurs surchargés pour dessiner des lignes avec une couleur, une largeur et une brosse spécifiées. La classe SolidBrush est utilisée pour dessiner en continu avec une couleur spécifique. Enfin, l’image est exportée au format de fichier bmp. Le code suivant vous montre comment dessiner des formes de lignes sur la surface de l’image.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
string outpath = dataDir + "Lines.bmp"; | |
BmpOptions saveOptions = new BmpOptions(); | |
saveOptions.BitsPerPixel = 32; | |
// Create an instance of Image | |
using (Image image = new PsdImage(100, 100)) | |
{ | |
// Create and initialize an instance of Graphics class and Clear Graphics surface | |
Graphics graphic = new Graphics(image); | |
graphic.Clear(Color.Yellow); | |
// Draw two dotted diagonal lines by specifying the Pen object having blue color and co-ordinate Points | |
graphic.DrawLine(new Pen(Color.Blue), 9, 9, 90, 90); | |
graphic.DrawLine(new Pen(Color.Blue), 9, 90, 90, 9); | |
// Draw a four continuous line by specifying the Pen object having Solid Brush with red color and two point structures | |
graphic.DrawLine(new Pen(new SolidBrush(Color.Red)), new Point(9, 9), new Point(9, 90)); | |
graphic.DrawLine(new Pen(new SolidBrush(Color.Aqua)), new Point(9, 90), new Point(90, 90)); | |
graphic.DrawLine(new Pen(new SolidBrush(Color.Black)), new Point(90, 90), new Point(90, 9)); | |
graphic.DrawLine(new Pen(new SolidBrush(Color.White)), new Point(90, 9), new Point(9, 9)); | |
image.Save(outpath, saveOptions); | |
} |
Dessin d’Ellipse
L’exemple de dessin d’ellipse est le deuxième article de la série sur le dessin de formes. Nous utiliserons la classe Graphics pour dessiner la forme d’ellipse sur la surface de l’image. Pour démontrer l’opération, l’exemple crée une nouvelle image et dessine la forme d’ellipse sur la surface de l’image en utilisant la méthode DrawEllipse exposée par la classe Graphics. Tout d’abord, nous allons créer une PsdImage en spécifiant sa hauteur et sa largeur.
Après avoir créé l’image, nous allons créer et initialiser un objet de la classe Graphics et définir la couleur d’arrière-plan de l’image en utilisant la méthode Clear de la classe Graphics. La méthode DrawEllipse de la classe Graphics est utilisée pour dessiner la forme d’ellipse sur une surface d’image spécifiée par la structure de rectangle de délimitation. Cette méthode a plusieurs surcharges acceptant les instances des classes Pen et Rectangle/RectangleF ou une paire de coordonnées, une hauteur et une largeur en tant qu’arguments. La classe Pen définit un objet utilisé pour dessiner des lignes, des courbes et des figures. La classe Pen dispose de plusieurs constructeurs surchargés pour dessiner des lignes avec une couleur, une largeur et une brosse spécifiées. La classe Rectangle stocke un ensemble de quatre entiers représentant l’emplacement et la taille d’un rectangle. La classe Rectangle dispose de plusieurs constructeurs surchargés pour dessiner la structure de rectangle avec une taille et un emplacement spécifiés. La classe SolidBrush est utilisée pour dessiner en continu avec une couleur spécifique. Enfin, l’image est exportée au format de fichier bmp. Le code suivant vous montre comment dessiner la forme d’ellipse sur la surface de l’image.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
string outpath = dataDir + "Ellipse.bmp"; | |
// Create an instance of BmpOptions and set its various properties | |
BmpOptions saveOptions = new BmpOptions(); | |
saveOptions.BitsPerPixel = 32; | |
// Create an instance of Image | |
using (Image image = new PsdImage(100, 100)) | |
{ | |
// Create and initialize an instance of Graphics class and Clear Graphics surface | |
Graphics graphic = new Graphics(image); | |
graphic.Clear(Color.Yellow); | |
// Draw a dotted ellipse shape by specifying the Pen object having red color and a surrounding Rectangle | |
graphic.DrawEllipse(new Pen(Color.Red), new Rectangle(30, 10, 40, 80)); | |
// Draw a continuous ellipse shape by specifying the Pen object having solid brush with blue color and a surrounding Rectangle | |
graphic.DrawEllipse(new Pen(new SolidBrush(Color.Blue)), new Rectangle(10, 30, 80, 40)); | |
// export image to bmp file format. | |
image.Save(outpath, saveOptions); | |
} |
Dessin de Rectangle
Dans cet exemple, nous allons dessiner la forme de rectangle sur la surface de l’image. Pour démontrer l’opération, l’exemple crée une nouvelle image et dessine la forme de rectangle sur la surface de l’image en utilisant la méthode DrawRectangle exposée par la classe Graphics. Tout d’abord, nous allons créer une PsdImage en spécifiant sa hauteur et sa largeur. Ensuite, nous définirons la couleur d’arrière-plan de l’image en utilisant la méthode Clear de la classe Graphics.
La méthode DrawRectangle de la classe Graphics est utilisée pour dessiner la forme de rectangle sur une surface d’image spécifiée par la structure de rectangle. Cette méthode a plusieurs surcharges acceptant les instances des classes Pen et Rectangle/RectangleF ou une paire de coordonnées, une largeur et une hauteur en tant qu’arguments. La classe Rectangle stocke un ensemble de quatre entiers représentant l’emplacement et la taille d’un rectangle. La classe Rectangle dispose de plusieurs constructeurs surchargés pour dessiner la structure de rectangle avec une taille et un emplacement spécifiés. Enfin, l’image est exportée au format de fichier bmp. Le code suivant vous montre comment dessiner la forme de rectangle sur la surface de l’image.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
string outpath = dataDir + "Rectangle.bmp"; | |
// Create an instance of BmpOptions and set its various properties | |
BmpOptions saveOptions = new BmpOptions(); | |
saveOptions.BitsPerPixel = 32; | |
// Create an instance of Image | |
using (Image image = new PsdImage(100, 100)) | |
{ | |
// Create and initialize an instance of Graphics class, Clear Graphics surface, Draw a rectangle shapes and save all changes. | |
Graphics graphic = new Graphics(image); | |
graphic.Clear(Color.Yellow); | |
graphic.DrawRectangle(new Pen(Color.Red), new Rectangle(30, 10, 40, 80)); | |
graphic.DrawRectangle(new Pen(new SolidBrush(Color.Blue)), new Rectangle(10, 30, 80, 40)); | |
// export image to bmp file format. | |
image.Save(outpath, saveOptions); | |
} |
Dessin d’Arc
Dans cette session de la série sur le dessin de formes, nous allons dessiner la forme d’arc sur la surface de l’image. Nous utiliserons la méthode DrawArc de Graphics pour démontrer l’opération sur une image BMP. Tout d’abord, nous allons créer une PsdImage en spécifiant sa hauteur et sa largeur. Une fois l’image créée, nous utiliserons la méthode Clear exposée par la classe Graphics pour définir sa couleur d’arrière-plan.
La méthode DrawArc de la classe Graphics est utilisée pour dessiner la forme d’arc sur une surface d’image. DrawArc représente une partie d’une ellipse spécifiée par la structure de rectangle ou la paire de coordonnées. Cette méthode a plusieurs surcharges acceptant les instances des classes Pen et Rectangle/RectangleF ou une paire de coordonnées, une largeur et une hauteur en tant qu’arguments. Enfin, l’image est exportée au format de fichier bmp. Le code suivant vous montre comment dessiner la forme d’arc sur la surface de l’image.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
string outpath = dataDir + "Arc.bmp"; | |
// Create an instance of BmpOptions and set its various properties | |
BmpOptions saveOptions = new BmpOptions(); | |
saveOptions.BitsPerPixel = 32; | |
// Create an instance of Image | |
using (Image image = new PsdImage(100, 100)) | |
{ | |
// Create and initialize an instance of Graphics class and clear Graphics surface | |
Graphics graphic = new Graphics(image); | |
graphic.Clear(Color.Yellow); | |
// Draw an arc shape by specifying the Pen object having red black color and coordinates, height, width, start & end angles | |
int width = 100; | |
int height = 200; | |
int startAngle = 45; | |
int sweepAngle = 270; | |
// Draw arc to screen and save all changes. | |
graphic.DrawArc(new Pen(Color.Black), 0, 0, width, height, startAngle, sweepAngle); | |
// export image to bmp file format. | |
image.Save(outpath, saveOptions); | |
} |
Dessin de Bézier
Cet exemple utilise la classe Graphics pour dessiner la forme de Bézier sur la surface de l’image. Pour démontrer l’opération, l’exemple crée une nouvelle image et dessine la forme de Bézier sur la surface de l’image en utilisant la méthode DrawBezier exposée par la classe Graphics. Tout d’abord, nous allons créer une PsdImage en spécifiant sa hauteur et sa largeur. Une fois l’image créée, nous utiliserons la méthode Clear exposée par la classe Graphics pour définir sa couleur d’arrière-plan.
La méthode DrawBezier de la classe Graphics est utilisée pour dessiner la forme de ligne de Bézier sur une surface d’image définie par quatre structures Point. Cette méthode a plusieurs surcharges acceptant les instances de la classe Pen et quatre paires ordonnées de coordonnées ou quatre structures Point/PointF ou tableau de structures Point/PointF. La classe Pen définit un objet utilisé pour dessiner des lignes, des courbes et des figures. La classe Pen dispose de plusieurs constructeurs surchargés pour dessiner des lignes avec une couleur, une largeur et une brosse spécifiées. Enfin, l’image est exportée au format de fichier bmp. Le code suivant vous montre comment dessiner la forme de Bézier sur la surface de l’image.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
string outpath = dataDir + "Bezier.bmp"; | |
// Create an instance of BmpOptions and set its various properties | |
BmpOptions saveOptions = new BmpOptions(); | |
saveOptions.BitsPerPixel = 32; | |
// Create an instance of Image | |
using (Image image = new PsdImage(100, 100)) | |
{ | |
// Create and initialize an instance of Graphics class and clear Graphics surface | |
Graphics graphic = new Graphics(image); | |
graphic.Clear(Color.Yellow); | |
// Initializes the instance of PEN class with black color and width | |
Pen BlackPen = new Pen(Color.Black, 3); | |
float startX = 10; | |
float startY = 25; | |
float controlX1 = 20; | |
float controlY1 = 5; | |
float controlX2 = 55; | |
float controlY2 = 10; | |
float endX = 90; | |
float endY = 25; | |
// Draw a Bezier shape by specifying the Pen object having black color and co-ordinate Points and save all changes. | |
graphic.DrawBezier(BlackPen, startX, startY, controlX1, controlY1, controlX2, controlY2, endX, endY); | |
// export image to bmp file format. | |
image.Save(outpath, saveOptions); | |
} |
Dessin d’Images en Utilisant les Fonctionnalités de Base
Aspose.PSD est une bibliothèque qui propose de nombreuses fonctionnalités précieuses, y compris la création d’images à partir de zéro. Dessinez en utilisant les fonctionnalités de base comme la manipulation des informations de bitmap d’une image, ou utilisez les fonctionnalités avancées comme Graphics et GraphicsPath pour dessiner des formes sur la surface de l’image à l’aide de différentes brosses et stylos. En utilisant la classe RasterImage d’Aspose.PSD, vous pouvez récupérer les informations des pixels d’une zone d’image et les manipuler. La classe RasterImage contient l’ensemble des fonctionnalités de dessin de base, comme obtenir et définir des pixels et d’autres méthodes de manipulation d’image. Créez une nouvelle image en utilisant l’une des méthodes décrites dans la création de fichiers et attribuez-la à une instance de la classe RasterImage. Utilisez la méthode LoadPixels de la classe RasterImage pour récupérer les informations des pixels d’une portion d’une image. Une fois que vous avez un tableau de pixels, vous pouvez le manipuler, par exemple, en changeant la couleur de chaque pixel. Après avoir manipulé les informations des pixels, réaffectez-lui la zone souhaitée dans l’image en utilisant la méthode SavePixels de la classe RasterImage. Le code suivant vous montre comment dessiner des images en utilisant les fonctionnalités de base.
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
string loadpath = dataDir + "sample.psd"; | |
string outpath = dataDir + "CoreDrawingFeatures.bmp"; | |
// Create an instance of Image | |
using (PsdImage image = new PsdImage(loadpath)) | |
{ | |
// load pixels | |
var pixels = image.LoadArgb32Pixels(new Rectangle(0, 0, 100, 10)); | |
for (int i = 0; i < pixels.Length; i++) | |
{ | |
// specify pixel color value (gradient in this case). | |
pixels[i] = i; | |
} | |
// save modified pixels. | |
image.SaveArgb32Pixels(new Rectangle(0, 0, 100, 10), pixels); | |
// export image to bmp file format. | |
image.Save(outpath, new BmpOptions()); | |
} |