De Java API biedt u een grote bibliotheek van standaard klassen die er zijn om taken te maken - die ingewikkeld en tijdrovend zou zijn onder talen zoals C - relatief snel en foutloos worden. Een voorbeeld hiervan is de Java Image API. Wat de afbeelding API Can Do De Java Afbeelding API kan laden , opslaan , weergeven ( met behulp van een GUI library zoals AWT of Swing ) , verkleinen en omzetten tussen de meest gangbare beeldformaten . Standaard is de javax.imageio pakket leest van het png , jpg /jpeg -en gif -formaten , en kan aan al deze formaten met uitzondering van gif te schrijven , hoewel deze lijsten kan worden uitgebreid met pakketten van derden zogenaamde plug - ins . overbrengen van een foto de centrale klasse voor het houden van een beeld in de Java API is BufferedImage ( zie referentie een) , dus maken: BufferedImage afbeelding ; Om de afbeelding te laden , moet u de BufferedImage constructeur een standaard file -object te geven met een pad en bestandsnaam die naar uw image-bestand , en daar bent u toegang tot het bestandssysteem , moet u . vangst ( IOException e ) { ; naar een mogelijke IOException , in het geval dat het beeldbestand niet bestaat try { image = ImageIO.read (nieuw bestand ( " candycane.jpg " ) ) } catch System.err.println ( " FOUT : afbeelding bestaat niet " ) ; } Dit zal het beeldbestand candycane.jpg binnen je werkmap laadt Resize . formaat een beeld is eenvoudig . Ervan uitgaande dat u reeds de afbeelding geladen in een afbeelding BufferedImage variabele genaamd , zou je de volgende opdrachten uitvoeren : int WIDTH = 100 ; int HEIGHT = 100 ; BufferedImage resizedImage = ( BufferedImage ) image.getScaledInstance (breedte, hoogte , BufferedImage.SCALE_DEFAULT ) ; Het laatste argument om getScaledInstance specificeert welk type resizing algoritme wordt gebruikt . SCALE_DEFAULT is een goede optie , maar bepaalde toepassingen kan anderen , die kan worden gezien in BufferedImage ( zie "Bronnen " hieronder ) nodig . Beeldscherm Tenslotte leren hoe u een afbeelding weer te geven . Voor deze stap , moet je al een JPanel gemaakt voor uw imago op te stellen om , en je zult moeten verf van deze JPanel ( Graphics g ) functie overschrijven als volgt : public void paint ( Graphics g ) { int xpos = 0 ; int YPOS = 0 ; g.drawImage ( resizedImage , xpos , YPOS , null ) ; } U zult nooit deze verf functie zelf noemen ; dit gebeurt automatisch wanneer dat nodig is door de Java GUI engine . De bovenstaande code zal trekken je verkleinde afbeelding in de linkerbovenhoek van uw venster JPanel .
|