How to manipulate large images in Firemonkey?


Does Firemonkey have an image manipulation library? Right now I’m doing everything with Canvases and it sucks.

I have a program which currently loads the image into a TBitmap, performs its operations, and then saves the TBitmap object out to a file.

The TBitmap interface however is not ideal. Among the problems…

It silently scales down images which are larger than 8k pixels in any dimension, losing resolution on large .png files
It scales the image whenever there are clipping issues with DrawBitmap which is undesirable (I’d much rather it clip the output or just crash)
Rotating bitmaps is very hard to predict the output of and may scale the image.

I want a better option than canvas methods for image manipulation. I see there are units under Vcl.Imaging, but I can’t find anything similar under the FMX units.

The operations I’m really looking for are just drawing lines, text, zooming, rotating, blitting to the display, saving, and loading.

Comments are closed.