1. Termékek
  2.   Kép
  3.   Java
  4.   Apache Commons Imaging
 
  

Nyílt forráskódú Java képfeldolgozás és -manipuláció

A vezető nyílt forráskódú Java képszerkesztő és manipulációs könyvtár lehetővé teszi az olyan széles körben használt formátumok olvasását, írását, manipulálását és konvertálását, mint a PNG, JPEG, BMP, TIFF, ICO stb..

Mi az Apache Commons Imaging?

Az Apache Commons Imaging, korábbi nevén Sanselan, egy hatékony, nyílt forráskódú Java-könyvtár, amelyet az Apache Commons projekt keretében fejlesztettek ki. A tágabb Apache Commons projekt része, és hatékony módot kínál a szoftverfejlesztőknek különféle képformátumok olvasására és írására anélkül, hogy külső könyvtárakra kellene támaszkodnia. A szoftverfejlesztők a képformátumok széles skáláját tudják kezelni, leegyszerűsítve a feladatokat, például a képolvasást és -írást, a konvertálást más formátumokba, a képek metaadatainak kezelését, az egyéni képmegjelenítést, a képszínmodelleket, a képmanipulációt és így tovább. A könyvtár rugalmassága ideálissá teszi a képfeldolgozást igénylő alkalmazásokhoz anélkül, hogy külső függőségekre támaszkodna. A könyvtár számos képszűrőt kínál, beleértve az elmosódást, az élesítést és az élészlelést.

Az Apache Commons Imaging egy robusztus és sokoldalú könyvtár, amely leegyszerűsíti a képfájlokkal való munkát Java alkalmazásokban. Ez egy Java-alapú könyvtár, amely többféle képformátumot támogat, például PNG, JPEG, BMP, GIF, TIFF, ICO stb. Ezenkívül eszközöket kínál a képelemzéshez, beleértve a hisztogram-számítást, a színtér-konverziót és a képszegmentálást. Ideális választás fejlesztőknek, kutatóknak és rajongóknak egyaránt. A könyvtár hatékony és egyszerűen használható API-t kínál a képkezeléshez, amely különösen hasznos lehet korlátozott erőforrásokkal rendelkező környezetben. Akár képfeldolgozást igénylő projekten dolgozik, akár egyszerűen csak kísérletezni szeretne a képkezeléssel, az Apache Commons Imaginget mindenképpen érdemes felfedezni.

Previous Next

Kezdő lépések az Apache Commons Imaging használatával

Az Apache Commons Imaging telepítésének javasolt módja a Maven Repository használata. Kérjük, használja a következő parancsot a zökkenőmentes telepítés érdekében.

Maven adattár az Apache Commons Imaginghez

 

<repositories>
	<repository>
	<id>AsposeJavaAPI</id>
	<name>Aspose Java API</name>
	<url>https://releases.aspose.com/java/repo/</url>
	</repository>
</repositories>

//Define Aspose.PDF for Java API Dependency

<dependencies>
	<dependency>
	<groupId>org.apache.commons</groupId>
	<artifactId>commons-imaging</artifactId>
	<version>1.0.0-alpha5</version>
	</dependency>
</dependencies>

Az Apache Commons Imaging telepítése a GitHubon keresztül

go get -u https://github.com/apache/commons-imaging.git 

A könyvtárat közvetlenül a GitHub termékoldaláról töltheti le

Képkonverzió a java alkalmazásokon belül

Előfordulhat, hogy az egyik formátumban (pl. PNG) tárolt diagramokat egy másik formátumba (pl. BMP vagy JPEG) kell konvertálni a kompatibilitás vagy az optimalizálás érdekében. Az Apache Commons Imaging konverziós szolgáltatásokat kínál, amelyek segítségével a fejlesztők könnyedén konvertálhatnak különböző képfájlformátumokat a támogatott formátumok között. A következő példa bemutatja, hogy a szoftverfejlesztők milyen könnyen konvertálhatnak egy PNG fájlt BMP formátumba. A folyamat egyszerű, és képes kezelni a támogatott formátumok közötti konverziókat, így ideális olyan alkalmazásokhoz, amelyeknek kompatibilitási okokból több formátumba kell menteni a képeket.

Hogyan lehet PNG fájlt BMP fájlformátummá konvertálni Java API-n keresztül?


File inputFile = new File("diagram.png");
BufferedImage image = Imaging.getBufferedImage(inputFile);
File outputFile = new File("converted_image.bmp");
Imaging.writeImage(image, outputFile, ImageFormats.BMP, null);

Képmanipuláció Java könyvtáron keresztül

Az Apache Commons Imaging más Java könyvtárakkal, például a BufferedImage-gel kombinálva használható általános képátalakítások végrehajtására, például átméretezésre, kivágásra és méretezésre. A Scalr.resize() metódust egy másik Java képfeldolgozó könyvtárból (imgscalr) használjuk az átméretezéshez, majd az átméretezett kép mentését az Apache Commons Imaging segítségével. Ez lehetővé teszi a zökkenőmentes integrációt más Java könyvtárakkal a fejlett képkezelés érdekében.

Hogyan lehet átméretezni egy képet a Java alkalmazásokban?

BufferedImage originalImage = Imaging.getBufferedImage(new File("sample_image.png"));
BufferedImage resizedImage = Scalr.resize(originalImage, 300); // Resize width to 300px

File outputFile = new File("resized_image.png");
Imaging.writeImage(resizedImage, outputFile, ImageFormats.PNG, null);

Kép metaadat-kinyerése Java API-n keresztül

Az Apache Commons Imaging egyik legfontosabb jellemzője, hogy képes metaadatokat kinyerni a Java alkalmazásokon belüli képekből. Diagramok esetében ezek a metaadatok hasznos információkat tartalmazhatnak, például a létrehozás dátumát, a módosítási előzményeket vagy a szerző adatait. Ez a képesség lehetővé teszi a fejlesztők számára, hogy a diagramképeket a puszta megjelenítésen túlmutató módon dolgozzák fel. A következő példa bemutatja, hogy a szoftverfejlesztők hogyan nyerhetnek ki metaadatokat a Java alkalmazásokon belüli képekből.

Hogyan lehet metaadatokat kinyerni a képekből Java API-n keresztül?

File imageFile = new File("diagram.png");
ImageInfo imageInfo = Imaging.getImageInfo(imageFile);
System.out.println("Format: " + imageInfo.getFormat());
System.out.println("Width: " + imageInfo.getWidth());
System.out.println("Height: " + imageInfo.getHeight());

Egyéni képmegjelenítés a Java alkalmazásokban

A szoftverfejlesztők az Apache Commons Imaging segítségével készíthetnek képeket menet közben, vagy módosíthatják a meglévőket a java alkalmazásokon belül. A könyvtárnak a Java natív Graphics2D-vel való kombinálásával lehetőség nyílik a képekre programozottan rajzolni vagy megjegyzéseket hozzáadni. A következő kódpélda létrehoz egy üres képet, szöveget ad hozzá, és elmenti PNG-fájlként. Bemutatja, hogy az Apache Commons Imaging hogyan tud együttműködni a Java rajz API-jával, hogy a semmiből állítson elő képeket.

Hogyan lehet képeket előállítani a semmiből a Java segítségével?

BufferedImage image = new BufferedImage(400, 300, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics = image.createGraphics();
graphics.setPaint(Color.WHITE);
graphics.fillRect(0, 0, image.getWidth(), image.getHeight());

graphics.setPaint(Color.BLACK);
graphics.setFont(new Font("Arial", Font.BOLD, 20));
graphics.drawString("Custom Diagram", 100, 150);

graphics.dispose();
File outputFile = new File("custom_image.png");
Imaging.writeImage(image, outputFile, ImageFormats.PNG, null);
 Magyar