The Java API gir deg et stort bibliotek av standard klasser som finnes for å gjøre oppgaver - som ville være komplisert og tidkrevende henhold til språk som C - blitt relativt raskt og feilfritt . Et eksempel på dette er den Java Bilde- API. Hva bildet API kan gjøre
Java Bilde API kan laste inn, lagre, vise ( med hjelp av en GUI bibliotek som AWT eller Swing ) , endre størrelse og konvertere mellom de fleste vanlige bildeformater . Som standard , leser javax.imageio pakken fra png , jpg /jpeg og gif- format , og kan skrive til alle disse formatene med unntak av gif , men disse listene kan utvides med tredjeparts pakkene kalles plug- ins.
laste ned et bilde
den sentrale klasse for å holde et bilde i Java API er BufferedImage ( se referanse en), så dannes:
BufferedImage image ;
å laste bildet , må du gi BufferedImage konstruktør en standard File-objekt med en bane og et filnavn som peker til bildefilen , og siden du har tilgang til filsystemet , må du å fange en mulig IOException , i tilfelle at bildefilen ikke eksisterer
prøve { image = ImageIO.read (new File ( " candycane.jpg ")); } . fangst ( IOException e ) { System.err.println ( "FEIL : bildet finnes ikke" ); }
Dette vil laste bildefilen candycane.jpg innenfor din arbeidskopi
Resize .
bildestørrelsesjustering er enkelt. Forutsatt at du allerede har lastet opp bildet til et BufferedImage variabel kalt bildet, ville du kjøre følgende kommandoer : en
int BREDDE = 100; int HØYDE = 100; BufferedImage resizedImage = ( BufferedImage ) image.getScaledInstance ( bredde, høyde , BufferedImage.SCALE_DEFAULT ) ;
Den endelige argumentet for å getScaledInstance spesifiserer hva slags skalering algoritmen vil bli brukt . SCALE_DEFAULT er et godt alternativ , men enkelte programmer kan kreve at andre, som kan sees i BufferedImage ( se "Ressurser " nedenfor ) .
Skjerm
slutt, lære hvordan å vise et bilde . For dette trinnet , bør du allerede har opprettet en JPanel for bildet å bli trukket til , og du må overstyre denne JPanel er maling (Graphics g )-funksjonen som følger : en
public void paint (Graphics g ) { int XPOS = 0; int YPOS = 0; g.drawImage ( resizedImage , XPOS , YPOS , null ) ;}
Du vil aldri kalle denne malingen funksjonen selv, dette gjøres automatisk når det er nødvendig av Java GUI motor. Koden over vil trekke skalerte bildet øverst til venstre på JPanel vinduet .