Dnes se naučíme základy grafického programování v Java. Ponoříme se do základů kreslení základních tvarů, manipulace s barvami a práce s perem. Ať už vytváříte grafiku jako součást svého aktuálního projektu nebo jako základ své vlastní hry či aplikace, pojďme prozkoumat, jak programově snadno vytvářet krásné vizuály.
Tento článek se zabývá následujícími tématy:
- Java Graphics Library
- Grafické programování v Java
- Nakreslete křivky
- Mnohoúhelníky a obdélníky
- Jak kreslit čáry
- Nakreslit cesty
- Nakreslete oblast výplně
Java Graphics Library – ke stažení zdarma
Aspose.Drawing je jednou z nejrozšířenějších knihoven vektorové grafiky pro 2D programování. Pro grafické programování v Java použijeme API Aspose.Drawing for Java. Programátoři mohou využít tuto multiplatformní knihovnu ke kreslení textu, tvarů a obrázků ve svých 2D aplikacích. Umožňuje načítání, ukládání a manipulaci s podporované formáty souborů.
stáhněte si JAR API nebo přidejte následující konfiguraci pom.xml do Java aplikace založené na Maven.
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-drawing</artifactId>
<version>24.1</version>
</dependency>
</dependencies>
Grafické programování v Java
V Java můžeme snadno kreslit různé typy tvarů, jako jsou křivky, čáry, obdélníky, vyplněné oblasti, elipsy a mnohoúhelníky. Rozhraní API poskytuje různé metody pro kreslení těchto tvarů. Můžeme vytvořit řadu různých vektorových grafik programově podle následujících kroků:
- Vytvořte objekt třídy Bitmap.
- Inicializujte objekt třídy Graphics z bitmapy.
- Definujte objekt třídy Pen nebo SolidBrush s požadovanými parametry.
- Použijte metodu(y) specifické pro tvar třídy Graphics k nakreslení požadovaného tvaru(ů).
- Nakonec obrázek uložte.
Nyní se podívejme, jak provést tyto kroky v Java.
Kreslit křivky v Java
Oblouky, kružnice, elipsy nebo uzavřené křivky můžeme kreslit pomocí následujících metod:
- metoda drawArc() pro nakreslení oblouku.
- metoda drawEllipse() k nakreslení elipsy.
- metoda drawClosedCurve() pro nakreslení uzavřené křivky.
- metoda drawCurve() pro nakreslení křivky.
Při kreslení zakřivených tvarů postupujte podle níže uvedených kroků:
- Vytvořte instanci třídy Bitmap.
- Vytvořte objekt třídy Graphics pomocí metody fromImage() z nově vytvořeného objektu Bitmap.
- Definujte objekt třídy Pen se zadanou barvou a velikostí.
- Poté zavolejte metodu drawClosedCurve() a nakreslete uzavřenou křivku.
- Volitelně opakujte výše uvedené kroky a přidejte oblouk a elipsu.
- Nakonec uložte výstupní obraz pomocí metody save().
Následující ukázka kódu ukazuje, jak kreslit zakřivené tvary v Java.
// Tento příklad kódu ukazuje, jak nakreslit uzavřenou křivku, oblouk a kružnici.
// Vytvořte bitmapu
Bitmap bitmap = new Bitmap(1000, 800);
// Inicializujte grafiku z bitmapy
Graphics graphics = Graphics.fromImage(bitmap);
// Definujte pero, které chcete kreslit
Pen penBlue = new Pen(Color.getBlue(), 4);
// Nakreslete křivku
graphics.drawClosedCurve(penBlue, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });
// Nakreslete oblouk
Pen penRed = new Pen(Color.getRed(), 2);
graphics.drawArc(penRed, 0, 0, 700, 700, 0, 180);
// Nakreslete elipsu
Pen penGreen = new Pen(Color.getGreen(), 2);
graphics.drawEllipse(penGreen, 10, 10, 500, 500);
// Uložte bitmapu jako PNG
bitmap.save("D:\\Files\\Curves.png");
Kreslení mnohoúhelníků a obdélníků v Java
Můžeme kreslit mnohoúhelníky a obdélníky podle výše uvedených kroků. V kroku 4 však musíme použít následující metody:
- metoda drawPolygon() pro kreslení mnohoúhelníku.
- metoda drawRectangle() pro nakreslení obdélníku.
Následující ukázka kódu ukazuje, jak kreslit mnohoúhelníky a obdélníky v Java.
// Tento příklad kódu ukazuje, jak nakreslit mnohoúhelník a obdélník.
// Vytvořte bitmapu
Bitmap bitmap = new Bitmap(1000, 800);
// Inicializujte grafiku z bitmapy
Graphics graphics = Graphics.fromImage(bitmap);
// Definujte pero, které chcete kreslit
Pen penBlue = new Pen(Color.getBlue(), 4);
// Nakreslete mnohoúhelník
graphics.drawPolygon(penBlue, new Point[] { new Point(100, 100), new Point(500, 700), new Point(900, 100) });
// Nakreslete obdélník
Pen penRed = new Pen(Color.getRed(), 2);
graphics.drawRectangle(penRed, 10, 10, 900, 700);
// Uložte bitmapu jako PNG
bitmap.save("D:\\Files\\Shapes.png");
Kreslit čáry v Java
Podobně můžeme kreslit čáry podle výše uvedených kroků. K nakreslení čáry však musíme použít metodu drawLine() v kroku č. 4.
Následující ukázka kódu ukazuje, jak kreslit čáry v Java.
// Tento příklad kódu ukazuje, jak nakreslit čáru.
// Vytvořte bitmapu
Bitmap bitmap = new Bitmap(1000, 800);
// Inicializujte grafiku z bitmapy
Graphics graphics = Graphics.fromImage(bitmap);
// Definujte pero, které chcete kreslit
Pen pen = new Pen(Color.getBlue(), 4);
// Kreslit čáry
graphics.drawLine(pen, 10, 700, 500, 10);
graphics.drawLine(pen, 500, 10, 990, 700);
// Uložte bitmapu jako PNG
bitmap.save("D:\\Files\\Lines.png");
Kreslit cesty v Java
Cesty ve vektorové grafice představují řadu hladkých přímých čar definovaných počátečním a koncovým bodem spolu s dalšími body. Cestu můžeme nakreslit podle následujících kroků:
- Vytvořte instanci třídy Bitmap.
- Inicializujte objekt třídy Graphics z nově vytvořeného objektu Bitmap pomocí metody fromImage().
- Definujte objekt třídy Pen se zadanou barvou a velikostí.
- Vytvořte instanci třídy GraphicsPath.
- Přidejte řádky pomocí metody addLine().
- Poté zavolejte metodu drawPath() s objekty Pen a GraphicsPath.
- Nakonec uložte výstupní obraz pomocí metody save().
Následující ukázka kódu ukazuje, jak nakreslit cestu v Java.
// Tento příklad kódu ukazuje, jak nakreslit cestu.
// Vytvořte bitmapu
Bitmap bitmap = new Bitmap(1000, 800);
// Inicializujte grafiku z bitmapy
Graphics graphics = Graphics.fromImage(bitmap);
// Definujte pero, které chcete kreslit
Pen pen = new Pen(Color.getBlue(), 4);
// Inicializujte grafickou cestu
GraphicsPath path = new GraphicsPath();
// Přidat řádek 1
path.addLine(100, 100, 1000, 400);
// Přidat řádek 2
path.addLine(1000, 600, 300, 600);
// Přidat obdélník
path.addRectangle(new Rectangle(500, 350, 200, 400));
// Přidejte Elipsu
path.addEllipse(10, 250, 450, 300);
// Nakreslete cestu
graphics.drawPath(pen, path);
// Uložte bitmapu jako PNG
bitmap.save("D:\\Files\\Shapes.png");
Nakreslete oblast výplně v Java
Oblast výplně můžeme nakreslit podle následujících kroků:
- Vytvořte instanci třídy Bitmap.
- Inicializujte objekt třídy Graphics z nově vytvořeného objektu Bitmap pomocí metody fromImage().
- Vytvořte instanci třídy GraphicsPath.
- Přidejte mnohoúhelník pomocí metody addPolygon().
- Vytvořte instanci třídy Region.
- Přidejte další objekt GraphicsPath a přidejte obdélník pomocí metody addRectangle().
- Chcete-li vyloučit vnitřní cestu z oblasti, zavolejte metodu exclude().
- Poté definujte objekt třídy SolidBrush se zadanou barvou.
- Poté zavolejte metodu fillRegion() s objekty SolidBrush a GraphicsPath.
- Nakonec uložte výstupní obraz pomocí metody save().
Následující ukázka kódu ukazuje, jak nakreslit vyplněnou oblast v Java.
// Tento příklad kódu ukazuje, jak nakreslit oblast.
// Vytvořte bitmapu
Bitmap bitmap = new Bitmap(1000, 800);
// Inicializujte grafiku z bitmapy
Graphics graphics = Graphics.fromImage(bitmap);
// Přidejte mnohoúhelník
GraphicsPath path = new GraphicsPath();
path.addPolygon(new Point[] { new Point(100, 400), new Point(500, 100), new Point(900, 400), new Point(500, 700) });
// Inicializujte oblast
Region region = new Region(path);
// Vnitřní grafická cesta
GraphicsPath innerPath = new GraphicsPath();
// Přidejte obdélník
innerPath.addRectangle(new Rectangle(300, 300, 400, 200));
// Vyloučit vnitřní cestu
region.exclude(innerPath);
// Definujte pevný kartáč
Brush brush = new SolidBrush(Color.getBlue());
// Vyplňte oblast
graphics.fillRegion(brush, region);
// Uložte bitmapu jako PNG
bitmap.save("D:\\Files\\FillRegion.png");
Získejte bezplatnou licenci
Můžete získat bezplatnou dočasnou licenci a vyzkoušet Aspose.Drawing for Java bez omezení hodnocení.
Grafické programování v Java – bezplatné zdroje
Kromě kreslení čar, cest a obdélníků můžete pomocí níže uvedených zdrojů prozkoumat různé další funkce knihovny:
Závěr
V tomto článku jsme se naučili základy grafického programování v Java pomocí Aspose.Drawing for Java. Viděli jsme, jak programově kreslit obdélníky, elipsy, čáry a cesty v Java. Také jsme se naučili, jak vytvořit a uložit bitmapový obrázek jako obrázek PNG. Podle kroků uvedených v tomto článku a poskytnutých příkladů kódu můžete ve svých aplikacích Java vytvořit úžasnou vektorovou grafiku. V případě jakýchkoliv nejasností nás prosím neváhejte kontaktovat na našem bezplatném fóru podpory.