iphoneioscocoa-touchuiimagepickercontrollercgaffinetransformscale

Implementing zoom in\out using UIImagePickerController


I have been using UIImagePickerController for my application preview purpose, I have customized and zoom in/out buttons, I didn't used CGAffineTransformScale before, however I have googled and implemented zoom in functionality using CGAffineTransformScale like this...

- (void) zoom_in_clkd
{

        preview_picker.cameraViewTransform = CGAffineTransformScale(preview_picker.cameraViewTransform, 1.0, 1.2499);

}

It seems fine, however I want to implement zoom out functionality, I don't have any idea what should be its sx,sy values in CGAffineTransformScale.

Can anyone please tell a good tutorial or sample code to use CGAffineTransformScale?


Solution

  • I have simulated zoom out functionality in different way, What I have done is I reset to identity(bringing back to original size) and zooming in again to what position I want like this..

          if (cameraTransformX == 2.0) {
                preview_picker.cameraViewTransform = CGAffineTransformIdentity;
                cameraTransformX -= 1.0;
            } else if (cameraTransformX == 3.0) {
                preview_picker.cameraViewTransform = CGAffineTransformIdentity;
                preview_picker.cameraViewTransform = CGAffineTransformScale(preview_picker.cameraViewTransform, 1.0, 1.2499);
                cameraTransformX -= 1.0;
            }  else if (cameraTransformX == 4.0) {
                preview_picker.cameraViewTransform = CGAffineTransformIdentity;
                preview_picker.cameraViewTransform = CGAffineTransformScale(preview_picker.cameraViewTransform, 1.0, 1.2499);
                preview_picker.cameraViewTransform = CGAffineTransformScale(preview_picker.cameraViewTransform, 1.0, 1.2499);
                cameraTransformX -= 1.0;
            }
    

    I know its not a proper way to go back to previous transform, but it will do the tricks. :)