Because I am constantly busy working on something, I have never had time to actually put everything in words and pictures. But, since you got here, then you must have already seen some part of my work - and this is the way I’m talking. I'm 24, born in Romania, studied at UPG Romania in software development field. I started from 0, mostly with basic stuff, and I’m evolving every day to an expert. I'm focused on freelancing projects, from small websites, to really heavy stuff.

Friday, February 10, 2012

Cropping, rotate and resizing images


This is FYI kind tip. Recently, I have looked for some cool Java libraries for cropping, rotating and resizing images. I was looking for something small, fast, flexible and very easy to use. And I found it at http://www.thebuzzmedia.com/software/imgscalr-java-image-scaling-library/. It main advantages are:

• 100% Java code based on Java2D, no native libraries to install
• Java that works in “headless” environments without special environment variable settings; it just works.
• Because there are no native libraries, you mitigate the risk of native libraries crashing the host VM (e.g. your app server) or thread-contention issues
• Hardware accelerated on supported platforms (uses the optimized Java2D rendering pipeline)
• Fast; not faster than a native-C solution, but still damn fast.
• Simple, simple, simple. A handful of static, 1-word methods you can call. No complex configurations, managers, encoders/decoders or any other nonsense. imgscalr is not a “graphics library”, it is a set of the most commonly used graphic operations, optimized and ready to do your bidding.

Well, per example a resize can be accomplished like this:

BufferedImage bimage = Scalr.resize(bimage, Method.QUALITY, Mode.FIT_EXACT, width,
height);

This is just one case, but as you can see in javadoc – http://www.thebuzzmedia.com/downloads/software/imgscalr/javadoc/index.html, this is exactly what you need for cropping, rotating and resizing images.

No comments: