Grafické programování v Java

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:

  1. Java Graphics Library
  2. Grafické programování v Java
  3. Nakreslete křivky
  4. Mnohoúhelníky a obdélníky
  5. Jak kreslit čáry
  6. Nakreslit cesty
  7. 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ů:

  1. Vytvořte objekt třídy Bitmap.
  2. Inicializujte objekt třídy Graphics z bitmapy.
  3. Definujte objekt třídy Pen nebo SolidBrush s požadovanými parametry.
  4. Použijte metodu(y) specifické pro tvar třídy Graphics k nakreslení požadovaného tvaru(ů).
  5. 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ů:

  1. Vytvořte instanci třídy Bitmap.
  2. Vytvořte objekt třídy Graphics pomocí metody fromImage() z nově vytvořeného objektu Bitmap.
  3. Definujte objekt třídy Pen se zadanou barvou a velikostí.
  4. Poté zavolejte metodu drawClosedCurve() a nakreslete uzavřenou křivku.
  5. Volitelně opakujte výše uvedené kroky a přidejte oblouk a elipsu.
  6. 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");
Křivky v grafickém programování pomocí Java

Křivky v grafickém programování pomocí Java

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");
Načtěte-obrázek-v-bitmapě-pomocí-javy

Načtěte obrázek v bitmapě pomocí Java

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");
Řádky v grafickém programování pomocí Java

Řádky v grafickém programování pomocí Java

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ů:

  1. Vytvořte instanci třídy Bitmap.
  2. Inicializujte objekt třídy Graphics z nově vytvořeného objektu Bitmap pomocí metody fromImage().
  3. Definujte objekt třídy Pen se zadanou barvou a velikostí.
  4. Vytvořte instanci třídy GraphicsPath.
  5. Přidejte řádky pomocí metody addLine().
  6. Poté zavolejte metodu drawPath() s objekty Pen a GraphicsPath.
  7. 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");
Cesty v grafickém programování pomocí Java

Cesty v grafickém programování pomocí Java

Nakreslete oblast výplně v Java

Oblast výplně můžeme nakreslit podle následujících kroků:

  1. Vytvořte instanci třídy Bitmap.
  2. Inicializujte objekt třídy Graphics z nově vytvořeného objektu Bitmap pomocí metody fromImage().
  3. Vytvořte instanci třídy GraphicsPath.
  4. Přidejte mnohoúhelník pomocí metody addPolygon().
  5. Vytvořte instanci třídy Region.
  6. Přidejte další objekt GraphicsPath a přidejte obdélník pomocí metody addRectangle().
  7. Chcete-li vyloučit vnitřní cestu z oblasti, zavolejte metodu exclude().
  8. Poté definujte objekt třídy SolidBrush se zadanou barvou.
  9. Poté zavolejte metodu fillRegion() s objekty SolidBrush a GraphicsPath.
  10. 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");
Vyplňte oblast v grafickém programování pomocí Java

Vyplňte oblast v grafickém programování pomocí Java

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.

Viz také