[Newbies] Resizing a form to specific width and height
bert at freudenbergs.de
Mon Jan 12 10:45:43 UTC 2009
On 12.01.2009, at 00:16, Matthias Korn wrote:
> how can I resize a form to a specific width and height by either
> stretching it on one axis or cropping it on the other axis.
Forms are fixed-size. The way you do it is by creating a new form of
the desired extent and depth, and then copying (a part of) the old
form into the new form, possibly scaling the pixels while doing so.
This is done by class BitBlt (for "bit block transfer") and its
extension WarpBlt (which can do scaling and rotation too).
There are convenience methods hiding the details of form creation,
BitBlt, and WarpBlt in class Form. E.g. "copy: aRectangle" does
cropping, and "magnify: aRectangle by: aPoint smoothing: anInteger"
does cropping and scaling.
BitBlt also does bit-depth conversion, color-remapping, statistics,
and other image manipulations. It's well worth learning about :)
- Bert -
More information about the Beginners