Bitmapové obrázky jsou základní součástí moderní grafiky. Tyto se používají na webových stránkách, mobilních zařízeních a desktopových aplikacích. Formáty jako BMP, GIF, PNG a JPEG jsou všechny založeny na bitmapech. V tomto článku se naučíte, jak vytvářet, načítat, vyplňovat a kreslit bitmape v Java.
Java Image Drawing SDK pro práci s bitmaps
V tomto článku budeme používat Aspose.Drawing for Java k vytváření a kreslení na bitmapech v Java. Je to 2D grafické API, které podporuje kreslení tvarů, textu a obrázků napříč platformami. Různé formáty můžete snadno načítat a ukládat.
Můžete stáhnout knihovnu z releases a přidat JAR do svého projektu nebo nainstalovat přes Maven.
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-drawing</artifactId>
<version>25.6</version> <!-- Replace with latest version -->
</dependency>
1. Vytvořte nový bitmap v Java
Aby bylo možné vytvořit bitmapu od nuly, postupujte podle níže uvedených kroků:
- Vytvořte nový
bitmap
s konkrétní šířkou a výškou. - Vytvořte objekt třídy
Graphics
z bitmapy. - Inicializujte objekt třídy
Pen
s konkrétní tloušťkou a barvou. - Nakreslete elipsu na bitmapu pomocí pera.
- Uložte bitmapu jako soubor obrázku PNG.
Následující příklad kódu ukazuje, jak vytvořit nový bitmapový obrázek v Java.
// Vytvořte nový bitmapový obrázek s šířkou a výškou 800 pixelů.
Bitmap bitmap = new Bitmap(800, 800);
// Vytvořte grafický objekt z bitmapy pro umožnění kreslení
Graphics graphics = Graphics.fromImage(bitmap);
// Inicializujte červenou propisku s tloušťkou 5 pixelů
Pen pen = new Pen(Color.getRed(), 5);
// Nakreslete elipsu pomocí pera, začínající na (0, 0) s šířkou a výškou 700 pixelů.
graphics.drawEllipse(pen, 0, 0, 700, 700);
// Uložte konečný bitmapový obrázek jako soubor PNG.
bitmap.save("output.png");

Vytvořte nový bitmapový obrázek v Java
2. Vytvořte bitmapu z paměťového proudu
Chcete-li vytvořit bitmapu z paměťového proudu, postupujte podle následujících kroků:
- Otevřete vstupní proud souboru pro existující soubor s obrázkem.
- Vytvořte bitmapu z vstupního proudu.
- Uložte bitmapu do nového obrazového souboru.
Následující ukázka kódu ukazuje, jak vytvořit bitmapu pomocí vstupního proudu v Java.
// Otevřete vstupní proud souboru pro čtení existujícího obrázku
InputStream stream = new FileInputStream("input.png");
// Vytvořte bitmapu ze vstupního proudu
Bitmap bitmap = new Bitmap(stream);
// Uložte bitmapu jako nový soubor PNG.
bitmap.save("output.png", ImageFormat.getPng().d());
3. Uložit bitmapu do souboru
Můžete uložit bitmapový obrázek do souboru v několika podporovaných formátech. Stačí zadat cestu k souboru a požadovaný formát obrázku při volání metody save()
. Tímto způsobem můžete exportovat bitmapu jako PNG, JPEG, BMP, GIF a další.
Můžete ukládat bitmapy do různých formátů změnou formátu obrázku:
- Uložit bitmapu jako soubor BMP
bitmap.save("output.bmp", ImageFormat.getBmp().d());
- Uložte bitmapu jako soubor PNG
bitmap.save("output.png", ImageFormat.getPng().d());
- Uložte bitmapu jako soubor JPG
bitmap.save("output.jpg", ImageFormat.getJpeg().d());
- Uložit bitmapu jako soubor GIF
bitmap.save("output.gif", ImageFormat.getGif().d());
4. Kreslení tvarů na bitmapě
Můžete kreslit různé tvary na bitmapě pomocí třídy Graphics
, kterou poskytuje Aspose.Drawing pro Java. Umožňuje vám vytvářet vlastní grafiku a poskytuje vám plnou kontrolu nad čarami, křivkami, obdélníky, elipsami a dalšími.
Následující ukázka kódu ukazuje, jak nakreslit tvary na bitmapě v Java.
// Vytvořte nový bitmapový obrázek s šířkou a výškou 500 pixelů
Bitmap bitmap = new Bitmap(500, 500);
// Vytvořte grafický objekt pro kreslení na bitmapu
Graphics graphics = Graphics.fromImage(bitmap);
// Inicializujte modrou tužku s tloušťkou 2 pixely
Pen pen = new Pen(Color.getBlue(), 2);
// Nakreslete obdélník počínaje na (10, 10) s šířkou 100 a výškou 50
graphics.drawRectangle(pen, 10, 10, 100, 50);
// Nakreslete elipsu začínající v (10, 130) s šířkou 280 a výškou 280
graphics.drawEllipse(pen, 10, 130, 280, 280);
// Uložte konečný bitmapový obrázek jako soubor PNG.
bitmap.save("draw_shapes.png");

Kreslení tvarů na bitmapě v Java
Můžete na bitmapu kreslit různé tvary pomocí vestavěných kreslicích metod poskytovaných třídou Graphics
v Aspose.Drawing pro Java. Níže jsou uvedeny podporované typy tvarů a odpovídající metody:
- Arc: Použijte metodu
drawArc()
k nakreslení oblouku. - Bezierova křivka: Použijte metodu
drawBezier()
k nakreslení jedné Bezierovy křivky. - Více Bézierových křivek: Použijte metodu
drawBeziers()
, abyste nakreslili sekvenci Bézierových spline. - Křivka: Použijte metodu
drawCurve()
, abyste vytvořili hladký, zakřivený tvar. - Uzavřená křivka: Použijte metodu
drawClosedCurve()
, abyste nakreslili uzavřenou splajnu. - Ellipse: Použijte metodu
drawEllipse()
, abyste nakreslili tvar elipsy. - Použijte metodu
drawLine()
k nakreslení přímky. - Více řádků: Použijte metodu
drawLines()
, abyste nakreslili sérii spojitých čar. - Cesta: Použijte metodu
drawPath()
, abyste vykreslili složité tvary pomocíGraphicsPath
. - Pie: Použijte metodu
drawPie()
k vykreslení tvaru koláčového plátu. - Polygon: Použijte metodu
drawPolygon()
, abyste vytvořili polygon spojením bodů. - Obdélník: Použijte metodu
drawRectangle()
k nakreslení obdélníku. - Více obdélníků: Použijte metodu
drawRectangles()
, abyste najednou nakreslili několik obdélníků.
Kromě tvarů můžete také na bitmapě kreslit obrázky:
- Ikona: Použijte metodu
drawIcon()
, abyste nakreslili ikonu uvnitř konkrétního obdélníku. - Obrázek: Použijte metodu
drawImage()
, abyste nakreslili další obrázek na bitmapu.
Tyto kreslicí metody usnadňují programové vytváření vlastních grafik, diagramů nebo anotovaných obrázků.
5. Nakreslete text na bitovou mapu
Abychom vykreslili text na bitmapu, postupujte podle následujících kroků:
- Vytvořte nový bitmap s definovanou šířkou a výškou.
- Vytvořte grafický objekt z bitové mapy.
- Vyčistěte bitmapu s barvou pozadí světle šedé.
- Definujte písmo s požadovaným názvem a velikostí.
- Vytvořte solidní štětec s černou barvou.
- Nakreslete textový řetězec na bitmapu pomocí zvoleného písma a štětce.
- Uložte bitmapu jako soubor s obrazem PNG.
Následující příklad kódu ukazuje, jak kreslit text na bitmapu v Java.
// Jak kreslit text na bitmapu v Java pomocí Aspose.Drawing
// Vytvořte nový bitmapový obrázek o rozměrech 500x200 pixelů
Bitmap bitmap = new Bitmap(500, 200);
// Vytvořte grafický objekt pro kreslení na bitmapě
Graphics graphics = Graphics.fromImage(bitmap);
// Vyplňte celý bitmap s světle šedým pozadím
graphics.clear(Color.getLightGray());
// Definujte písmo s názvem `Arial` a velikostí 24
Font font = new Font("Arial", 24);
// Vytvořte solidní černý štětec pro kreslení textu
Brush brush = new SolidBrush(Color.getBlack());
// Nakreslete řetězec na bitové mapě na pozici (20, 80)
graphics.drawString("Welcome to Bitmap!", font, brush, 20, 80);
// Uložte koncový obrázek s textem jako soubor PNG.
bitmap.save("output.png");

Java Kreslení textu na bitmapu
6. Vyplnit bitmapu pevnou barvou
Můžete vyplnit část obrázku pevnou barvou podle následujících kroků:
- Vytvořte nový bitmap s požadovanou šířkou a výškou.
- Vytvořte grafický objekt z bitové mapy.
- Vytvořte pevný šedý štětec pro vyplňování.
- Vyplňte celou bitmapovou oblast šedou barvou pomocí vyplněného obdélníku.
- Uložte bitmapu jako soubor obrázku PNG.
Následující ukázka kódu ukazuje, jak vyplnit bitmapu pevnou barvou pomocí obdélníku v Java.
// Vytvořte nový bitmapový obrázek o rozměrech 500x500 pixelů
Bitmap bitmap = new Bitmap(500, 500);
// Vytvořte grafický objekt pro kreslení na bitmapě.
Graphics graphics = Graphics.fromImage(bitmap);
// Vytvořte solidní šedý štětec, který můžete použít pro vyplnění.
SolidBrush brush = new SolidBrush(Color.getGray());
// Vyplňte celou oblast bitmapy šedou barvou
graphics.fillRectangle(brush, 0, 0, bitmap.getWidth(), bitmap.getHeight());
// Uložte vyplněnou bitovou mapu jako soubor obrázku PNG.
bitmap.save("output.png");

Java Kreslení obdélníku na bitovou mapu a vyplnění barvou
7. Načíst obrázek do Bitmapu
Můžete také načíst obrázkový soubor do objektu Bitmap
následujícím způsobem:
- Vytvořte nový prázdný bitmapový obrázek s požadovanou velikostí.
- Načtěte existující obrázek do objektu bitmapy.
- Vytvořte grafický objekt z prázdné bitové mapy.
- Nakreslete načtený obrázek na prázdnou bitovou mapu v levém horním rohu.
- Uložte konečný bitmapový obrázek jako soubor PNG.
Následující ukázka kódu ukazuje, jak načíst obrázek do bitmapy pomocí Java.
// Vytvořte nový prázdný bitmapový obrázek o rozměrech 500x500 pixelů
Bitmap bitmap = new Bitmap(500, 500);
// Načtěte stávající obrázek ze souboru do objektu bitmapy.
Bitmap loaded = new Bitmap("C:\\Files\\Drawings\\sample.jpg");
// Vytvořte grafický objekt pro kreslení na prázdném bitovém mapování.
Graphics graphics = Graphics.fromImage(bitmap);
// Nakreslete načtený obrázek na prázdnou bitmapu na pozici (0, 0)
graphics.drawImage(loaded, 0, 0);
// Uložte finální bitmapu jako nový soubor PNG.
bitmap.save("output.png");

Načtěte obrázek v bitové mapě pomocí Java
8. Změňte velikost existujícího obrázku
Chcete-li změnit velikost bitmapového obrázku:
- Načtěte původní obrázek do objektu bitmapy.
- Vytvořte nový bitmapový obrázek s polovinou šířky a výšky původního obrázku.
- Uložte změněný bitmapový obraz jako soubor PNG.
Následující ukázka kódu ukazuje, jak změnit velikost existujícího obrázku a uložit ho jako nový bitmapový obrázek v Java.
// Načtěte původní obrázek ze souboru do objektu bitmapy
Bitmap original = new Bitmap("C:\\Files\\Drawings\\sample.jpg");
// Vytvořte nový zmenšený bitmapový obrázek s 50 % původní šířky a výšky.
Bitmap resized = new Bitmap(original, new Size((int)(original.getWidth() * 0.5), (int)(original.getHeight() * 0.5)));
// Uložte změněný bitmapový obrázek jako nový soubor PNG.
resized.save("output.png");

Změna velikosti stávajícího obrázku pomocí Java
Vyzkoušejte Aspose.Drawing zdarma
Můžete získat bezplatnou dočasnou licenci pro prozkoumání Aspose.Drawing bez omezení.
Vytvoření bitmapy v Java: Bezplatné zdroje
pokud chcete prozkoumat více o práci s bitmaps v Java, pak si prohlédněte následující bezplatné zdroje, které prohloubí vaše porozumění a zvýší vaši produktivitu:
Závěr
V tomto tutoriálu jste se naučili, jak vytvářet a pracovat s bitmaps pomocí Aspose.Drawing pro Java. Pokryli jsme, jak generovat bitmapu od nuly, načítat a měnit velikost existujících obrázků, kreslit tvary a text, vyplňovat oblasti solidními barvami a ukládat obrázky v různých formátech, jako jsou PNG, JPG, BMP a GIF. S těmito schopnostmi můžete snadno přidávat vlastní grafiku a zpracování obrázků do svých Java aplikací.
Aspose.Drawing pro Java usnadňuje práci s 2D grafikou programově. Navštivte oficiální dokumentaci a objevte více.