SvgGraphics2D
Inheritance: java.lang.Object
public class SvgGraphics2D
Stellt Zeichenbefehle bereit, um ein Svg-Bild zusammenzusetzen.
Konstruktoren
| Konstruktor | Beschreibung |
|---|---|
| SvgGraphics2D(int width, int height, int dpi) | Initialisiert eine neue Instanz der Klasse SvgGraphics2D. |
| SvgGraphics2D(SvgImage image) | Initialisiert eine neue Instanz der Klasse SvgGraphics2D. |
Methoden
Example: This example shows how to create an SVG image of the specified size and draw different shapes on it using SvgGraphics2D.
String dir = "c:\\temp\\";
int imageWidth = 600;
int imageHeight = 400;
int dpi = 96;
com.aspose.imaging.fileformats.svg.graphics.SvgGraphics2D graphics = new com.aspose.imaging.fileformats.svg.graphics.SvgGraphics2D(imageWidth, imageHeight, dpi);
// Zeichne ein schwarzes Rechteck entlang der Bildränder mit einem 1 Pixel breiten schwarzen Stift.
graphics.drawRectangle(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getBlack(), 1), 0, 0, imageWidth, imageHeight);
// Fülle ein Rechteck mit der Farbe white-smoke.
graphics.fillRectangle(
new com.aspose.imaging.Pen(com.aspose.imaging.Color.getWhiteSmoke(), 1),
new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getWhiteSmoke()), 10, 10, 580, 380);
// Zeichne zwei diagonale Linien mit einem 1 Pixel breiten darkgreen Stift.
graphics.drawLine(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getDarkGreen(), 1), 0, 0, imageWidth, imageHeight);
graphics.drawLine(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getDarkGreen(), 1), 0, imageHeight, imageWidth, 0);
// Zeichne einen Bogen innerhalb des Rechtecks {0, 0, 200, 200} mit einem 2 Pixel breiten blauen Stift.
graphics.drawArc(
new com.aspose.imaging.Pen(com.aspose.imaging.Color.getBlue(), 2),
new com.aspose.imaging.Rectangle(0, 0, 200, 200), 90, 270);
// Fülle einen Bogen
graphics.fillArc(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getLightCoral(), 10),
new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getLightSkyBlue()),
new com.aspose.imaging.Rectangle(0, 0, 150, 150), 90, 270);
// Zeichne einen kubischen Bezier mit einem 2 Pixel breiten roten Stift.
graphics.drawCubicBezier(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getRed(), 2),
new com.aspose.imaging.PointF(0, 0),
new com.aspose.imaging.PointF(200, 133),
new com.aspose.imaging.PointF(400, 166),
new com.aspose.imaging.PointF(600, 400));
// Zeichne ein Rasterbild der angegebenen Größe am angegebenen Ort.
// Das Bild wird skaliert, um in das gewünschte Rechteck zu passen.
com.aspose.imaging.RasterImage imageToDraw = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(dir + "sample.bmp");
try {
graphics.drawImage(imageToDraw, new com.aspose.imaging.Point(400, 200), new com.aspose.imaging.Size(100, 50));
} finally {
imageToDraw.dispose();
}
// Zeichne eine Textzeichenfolge
graphics.drawString(
new com.aspose.imaging.Font("Arial", 48, com.aspose.imaging.FontStyle.Regular),
"Hello World!",
new com.aspose.imaging.Point(200, 300),
com.aspose.imaging.Color.getDarkRed());
// Erstelle einen Pfad zum Füllen
com.aspose.imaging.Figure figureToFill = new com.aspose.imaging.Figure();
figureToFill.setClosed(true);
com.aspose.imaging.GraphicsPath pathToFill = new com.aspose.imaging.GraphicsPath();
pathToFill.addFigure(figureToFill);
figureToFill.addShapes(new com.aspose.imaging.Shape[]
{
new com.aspose.imaging.shapes.ArcShape(new com.aspose.imaging.RectangleF(400, 0, 200, 100), 45, 300),
new com.aspose.imaging.shapes.BezierShape(
new com.aspose.imaging.PointF[]
{
new com.aspose.imaging.PointF(300, 200),
new com.aspose.imaging.PointF(400, 200),
new com.aspose.imaging.PointF(500, 100),
new com.aspose.imaging.PointF(600, 200),
}),
new com.aspose.imaging.shapes.PolygonShape(
new com.aspose.imaging.PointF[]
{
new com.aspose.imaging.PointF(300, 100),
}),
new com.aspose.imaging.shapes.RectangleShape(
new com.aspose.imaging.RectangleF(0, 100, 200, 200)),
});
// Fülle den Pfad mit einem gelben Pinsel und einem grünen Stift für die Kontur.
graphics.fillPath(
new com.aspose.imaging.Pen(com.aspose.imaging.Color.getGreen(), 2),
new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getYellow()), pathToFill);
// Erstelle einen Pfad zum Zeichnen
com.aspose.imaging.GraphicsPath pathToDraw = new com.aspose.imaging.GraphicsPath();
com.aspose.imaging.Figure figureToDraw = new com.aspose.imaging.Figure();
pathToDraw.addFigure(figureToDraw);
figureToDraw.addShapes(new com.aspose.imaging.Shape[]
{
new com.aspose.imaging.shapes.ArcShape(new com.aspose.imaging.RectangleF(200, 200, 200, 200), 0, 360),
});
// Zeichne den Pfad mit einem 5 Pixel breiten orangefarbenen Stift.
graphics.drawPath(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getOrange(), 5), pathToDraw);
// Erhalte das endgültige SVG-Bild, das alle Zeichenbefehle enthält.
com.aspose.imaging.fileformats.svg.SvgImage svgImage = graphics.endRecording();
try {
svgImage.save(dir + "test.output.svg");
} finally {
svgImage.dispose();
}
SvgGraphics2D(int width, int height, int dpi)
public SvgGraphics2D(int width, int height, int dpi)
Initialisiert eine neue Instanz der Klasse SvgGraphics2D.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| Breite | int | Die Breite des ausgegebenen Svg-Bildes. |
| Höhe | int | Die Breite des ausgegebenen Svg-Bildes. |
| dpi | int | Die Geräteauflösung, z. B. 96 Punkte pro Zoll. |
SvgGraphics2D(SvgImage image)
public SvgGraphics2D(SvgImage image)
Initialisiert eine neue Instanz der Klasse SvgGraphics2D.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| image | SvgImage | Das Bild, auf dem Zeichenoperationen ausgeführt werden. |
drawImage(RasterImage image, Point origin)
public final void drawImage(RasterImage image, Point origin)
Zeichnet das angegebene Bild am angegebenen Ort.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| image | RasterImage | Das gezeichnete Bild. |
| origin | Point | Der Ort des gezeichneten Bildes. |
drawImage(RasterImage image, Point origin, Size size)
public final void drawImage(RasterImage image, Point origin, Size size)
Zeichnet das angegebene Bild in der angegebenen Größe am angegebenen Ort.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| image | RasterImage | Das gezeichnete Bild. |
| origin | Point | Der Ort des gezeichneten Bildes. |
| size | Size | Die gewünschte Größe des gezeichneten Bildes. |
drawImage(Rectangle srcRect, Rectangle destRect, RasterImage image)
public final void drawImage(Rectangle srcRect, Rectangle destRect, RasterImage image)
Zeichnet den angegebenen Teil des angegebenen Bildes am angegebenen Ort und in der angegebenen Größe.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| srcRect | Rectangle | Der zu zeichnende Teil des Bildobjekts. |
| destRect | Rectangle | Der Ort und die Größe des gezeichneten Bildes. Das Bild wird skaliert, um in das Rechteck zu passen. |
| image | RasterImage | Das zu zeichnende Bild. |
drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)
public final void drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)
Zeichnet einen Bogen, der einen Teil einer Ellipse darstellt, die durch eine Rechteckstruktur angegeben ist.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift zum Zeichnen der Kontur der Figur. |
| rect | Rectangle | Die Grenzen der Ellipse. |
| startAngle | float | Der Winkel in Grad, gemessen im Uhrzeigersinn von der x-Achse zum Startpunkt des Bogens. |
| arcAngle | float | Der Winkel in Grad, gemessen im Uhrzeigersinn vom Parameter startAngle zum Endpunkt des Bogens. |
fillArc(Pen pen, Brush brush, Rectangle rect, float startAngle, float arcAngle)
public final void fillArc(Pen pen, Brush brush, Rectangle rect, float startAngle, float arcAngle)
Füllt einen Bogen, der einen Teil einer Ellipse darstellt, die durch eine Rechteckstruktur angegeben ist.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift zum Zeichnen der Kontur der Figur. |
| brush | Brush | Der Pinsel zum Füllen des Inneren der Figur. |
| rect | Rectangle | Die Grenzen der Ellipse. |
| startAngle | float | Der Winkel in Grad, gemessen im Uhrzeigersinn von der x-Achse zum Startpunkt des Bogens. |
| arcAngle | float | Der Winkel in Grad, gemessen im Uhrzeigersinn vom Parameter startAngle zum Endpunkt des Bogens. |
drawCubicBezier(Pen pen, PointF pt1, PointF pt2, PointF pt3, PointF pt4)
public final void drawCubicBezier(Pen pen, PointF pt1, PointF pt2, PointF pt3, PointF pt4)
Zeichnet die kubische Bézierkurve.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift, der die Farbe, Breite und den Stil der Figur bestimmt. |
| pt1 | PointF | Der Startpunkt der Kurve. |
| pt2 | PointF | Der erste Kontrollpunkt für die Kurve. |
| pt3 | PointF | Der zweite Kontrollpunkt für die Kurve. |
| pt4 | PointF | Der Endpunkt der Kurve. |
drawString(Font font, String text, Point origin, Color textColor)
public final void drawString(Font font, String text, Point origin, Color textColor)
Zeichnet die Textzeichenfolge.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| font | Font | Die Schriftart, die zum Rendern von Text verwendet wird. |
| text | java.lang.String | Die Unicode-Textzeichenfolge. |
| origin | Point | Die obere linke Ecke des Textabschnitts. |
| textColor | Color | Die Textfarbe. |
drawLine(Pen pen, int x1, int y1, int x2, int y2)
public final void drawLine(Pen pen, int x1, int y1, int x2, int y2)
Zeichnet die Linie.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift, der die Farbe, Breite und den Stil der Figur bestimmt. |
| x1 | int | Die x-Koordinate des ersten Punktes. |
| y1 | int | Die y-Koordinate des ersten Punktes. |
| x2 | int | Die x-Koordinate des zweiten Punktes. |
| y2 | int | Die y-Koordinate des zweiten Punktes. |
drawPath(Pen pen, GraphicsPath path)
public final void drawPath(Pen pen, GraphicsPath path)
Zeichnet den Pfad.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift zum Zeichnen der Kontur der Figur. |
| path | GraphicsPath | Der Pfad zum Zeichnen. |
fillPath(Pen pen, Brush brush, GraphicsPath path)
public final void fillPath(Pen pen, Brush brush, GraphicsPath path)
Füllt den Pfad.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift zum Zeichnen der Kontur der Figur. |
| brush | Brush | Der Pinsel zum Füllen des Inneren der Figur. |
| path | GraphicsPath | Der Pfad zum Zeichnen. |
drawRectangle(Pen pen, int x, int y, int width, int height)
public final void drawRectangle(Pen pen, int x, int y, int width, int height)
Zeichnet das Rechteck.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift zum Zeichnen der Kontur der Figur. |
| x | int | Die x-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks. |
| y | int | Die y-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks. |
| Breite | int | Die Breite des zu zeichnenden Rechtecks. |
| Höhe | int | Die Höhe des zu zeichnenden Rechtecks. |
fillRectangle(Pen pen, Brush brush, int x, int y, int width, int height)
public final void fillRectangle(Pen pen, Brush brush, int x, int y, int width, int height)
Füllt das Rechteck.
Parameters:
| Parameter | Typ | Beschreibung |
|---|---|---|
| pen | Pen | Der Stift zum Zeichnen der Kontur der Figur. |
| brush | Brush | Der Pinsel zum Füllen des Inneren der Figur. |
| x | int | Die x-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks. |
| y | int | Die y-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks. |
| Breite | int | Die Breite des zu zeichnenden Rechtecks. |
| Höhe | int | Die Höhe des zu zeichnenden Rechtecks. |
endRecording()
public final SvgImage endRecording()
Ruft das endgültige Svg-Bild ab, das alle über das Objekt SvgGraphics2D ausgeführten Zeichenbefehle enthält.
Returns: SvgImage - The final Svg image.