BufferedImage newImage = new BufferedImage(height, width, imagetype); og ImageIO.read() returnerer ikke, hvis billedet er for stort.
Jeg har ikke undersøgt vældig mange billeder, men små billeder er ok, og store billeder giver problemer. Eksempel på lille billede: 89KB, (500 x 375) px Eksempel på stort billede: 2265KB, (3264 x 2448) px Begge er JPEG. (Jeg bruger Java 1.7)
Runtime.getRuntime().freeMemory() returnerer 40MB. 3264 x 2448 x 4 = 32MB, så det burde vel være ok?
Eller er der andet, jeg skal være opmærksom på?!?
(Det ville have været rart, hvis ImageIO kastede en exception, i mangel af resourcer)
#3 Nej, det har jeg ikke. Jeg undersøgte, hvor ofte Andy Warhol problemet opstår, og det er i 1 promille af alle billederne, så jeg besluttede at flytte det langt ned på min prioriteringsliste. Derudover er der to grunde til ikke at benytte ImageJ og ImagePlus: 1) footprint 2) det er ikke standard Java, dvs. en extern afhængighed.
Jeg forventer, at mit webhotel på et eller andet tidspunkt opgraderer til en nyere version end 1.7, og så vill dette Andy Warhol problem løse sig selv.
Jeg er også ved at kikke efter andre Java webhoteller, men de hænger ikke på træerne.
#6 Jeg har i øjeblikket ristriktioner på filstørrelsen, men vil gerne lave det om til restriktioner på billedstørelsen.
Problemet er, at jeg kan sagtens uploade store filer til webserveren, men hvis et billede er for stort, så hænger programmet, når jeg læser billedet ind fra filen via ImageIO.read(). Og det kræver at jeg læser billedet ind for at kunne se billedstørrelsen, så det er en Catch 22.
Alternativet er at skrive et program, der læser starten af en fil ind for at finde billedstørrelsen. Den løsning har jeg kikket på, men det er kompliceret, da brugeren skal have mulighed for at oploade forskellige billedformater, JPEG, GIF, osv.
#5 Jeg har nu kikket på Google app engine, og prisstrukturen er meget præcis men komplet uigennemskuelig. Hos mit nuværende webhotel, er der flat rate. dvs. uafhængig af belastning, storage og trafik.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.