SvgGraphics2D

Inheritance: java.lang.Object

public class SvgGraphics2D

Stellt Zeichenbefehle bereit, um ein Svg-Bild zusammenzusetzen.

Konstruktoren

KonstruktorBeschreibung
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

MethodeBeschreibung
drawImage(RasterImage image, Point origin)Zeichnet das angegebene Bild am angegebenen Ort.
drawImage(RasterImage image, Point origin, Size size)Zeichnet das angegebene Bild in der angegebenen Größe am angegebenen Ort.
drawImage(Rectangle srcRect, Rectangle destRect, RasterImage image)Zeichnet den angegebenen Teil des angegebenen Bildes am angegebenen Ort und in der angegebenen Größe.
drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)Zeichnet einen Bogen, der einen Teil einer Ellipse darstellt, die durch eine Rechteckstruktur angegeben ist.
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.
drawCubicBezier(Pen pen, PointF pt1, PointF pt2, PointF pt3, PointF pt4)Zeichnet die kubische Bézierkurve.
drawString(Font font, String text, Point origin, Color textColor)Zeichnet die Textzeichenfolge.
drawLine(Pen pen, int x1, int y1, int x2, int y2)Zeichnet die Linie.
drawPath(Pen pen, GraphicsPath path)Zeichnet den Pfad.
fillPath(Pen pen, Brush brush, GraphicsPath path)Füllt den Pfad.
drawRectangle(Pen pen, int x, int y, int width, int height)Zeichnet das Rechteck.
fillRectangle(Pen pen, Brush brush, int x, int y, int width, int height)Füllt das Rechteck.
endRecording()Ruft das endgültige Svg-Bild ab, das alle über das Objekt SvgGraphics2D ausgeführten Zeichenbefehle enthält.

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:

ParameterTypBeschreibung
BreiteintDie Breite des ausgegebenen Svg-Bildes.
HöheintDie Breite des ausgegebenen Svg-Bildes.
dpiintDie Geräteauflösung, z. B. 96 Punkte pro Zoll.

SvgGraphics2D(SvgImage image)

public SvgGraphics2D(SvgImage image)

Initialisiert eine neue Instanz der Klasse SvgGraphics2D.

Parameters:

ParameterTypBeschreibung
imageSvgImageDas 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:

ParameterTypBeschreibung
imageRasterImageDas gezeichnete Bild.
originPointDer 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:

ParameterTypBeschreibung
imageRasterImageDas gezeichnete Bild.
originPointDer Ort des gezeichneten Bildes.
sizeSizeDie 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:

ParameterTypBeschreibung
srcRectRectangleDer zu zeichnende Teil des Bildobjekts.
destRectRectangleDer Ort und die Größe des gezeichneten Bildes. Das Bild wird skaliert, um in das Rechteck zu passen.
imageRasterImageDas 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:

ParameterTypBeschreibung
penPenDer Stift zum Zeichnen der Kontur der Figur.
rectRectangleDie Grenzen der Ellipse.
startAnglefloatDer Winkel in Grad, gemessen im Uhrzeigersinn von der x-Achse zum Startpunkt des Bogens.
arcAnglefloatDer 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:

ParameterTypBeschreibung
penPenDer Stift zum Zeichnen der Kontur der Figur.
brushBrushDer Pinsel zum Füllen des Inneren der Figur.
rectRectangleDie Grenzen der Ellipse.
startAnglefloatDer Winkel in Grad, gemessen im Uhrzeigersinn von der x-Achse zum Startpunkt des Bogens.
arcAnglefloatDer 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:

ParameterTypBeschreibung
penPenDer Stift, der die Farbe, Breite und den Stil der Figur bestimmt.
pt1PointFDer Startpunkt der Kurve.
pt2PointFDer erste Kontrollpunkt für die Kurve.
pt3PointFDer zweite Kontrollpunkt für die Kurve.
pt4PointFDer 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:

ParameterTypBeschreibung
fontFontDie Schriftart, die zum Rendern von Text verwendet wird.
textjava.lang.StringDie Unicode-Textzeichenfolge.
originPointDie obere linke Ecke des Textabschnitts.
textColorColorDie 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:

ParameterTypBeschreibung
penPenDer Stift, der die Farbe, Breite und den Stil der Figur bestimmt.
x1intDie x-Koordinate des ersten Punktes.
y1intDie y-Koordinate des ersten Punktes.
x2intDie x-Koordinate des zweiten Punktes.
y2intDie y-Koordinate des zweiten Punktes.

drawPath(Pen pen, GraphicsPath path)

public final void drawPath(Pen pen, GraphicsPath path)

Zeichnet den Pfad.

Parameters:

ParameterTypBeschreibung
penPenDer Stift zum Zeichnen der Kontur der Figur.
pathGraphicsPathDer 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:

ParameterTypBeschreibung
penPenDer Stift zum Zeichnen der Kontur der Figur.
brushBrushDer Pinsel zum Füllen des Inneren der Figur.
pathGraphicsPathDer 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:

ParameterTypBeschreibung
penPenDer Stift zum Zeichnen der Kontur der Figur.
xintDie x-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks.
yintDie y-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks.
BreiteintDie Breite des zu zeichnenden Rechtecks.
HöheintDie 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:

ParameterTypBeschreibung
penPenDer Stift zum Zeichnen der Kontur der Figur.
brushBrushDer Pinsel zum Füllen des Inneren der Figur.
xintDie x-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks.
yintDie y-Koordinate der oberen linken Ecke des zu zeichnenden Rechtecks.
BreiteintDie Breite des zu zeichnenden Rechtecks.
HöheintDie 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.