Je souhaite recadrer l'image en fonction de la vue rouge. Il y a quelques points à garder à l'esprit.Recadrer l'image de manière dynamique
1.Image peut être défilé et agrandi. 2.Red ImageView est créé à l'image selon Dynamiquement
UIImage* whole = [UIImage imageNamed:@"9.png"]; //I uses this image
CGImageRef cgImg = CGImageCreateWithImageInRect(whole.CGImage, CGRectMake(x, y, incX, incY));
UIImage* part = [UIImage imageWithCGImage:cgImg];
Je veux juste savoir comment trouver les valeurs de
x, y, INCX, INCY
Merci ...
Scénario 1: normal (Non Scrolled)
Résultat attendu (Ignorer Black Border en haut et en bas)
Scénario 2: Scrolled
Résultat attendu (Ignorer Black Border en haut et en bas)
Scénario 3: Zoomé
Et même résultat attendu pour le Zoomed One.
Dans tous les cas, je veux les images respectives à l'intérieur du rectangle rouge.
Pour Tout cela, je me sers de ce code ...
-(void)cropClicked:(UIButton*)sender
{
float zoomScale = 1.0/[mainScrollView zoomScale];
CGRect rect;
rect.size.width = [redImageView bounds].size.width * zoomScale ;
rect.size.height = [redImageView bounds].size.height * zoomScale ;
rect.origin.x = ([mainScrollView bounds].origin.x + redImageView.frame.origin.x);
rect.origin.y = ([mainScrollView bounds].origin.y + redImageView.frame.origin.y);
CGImageRef cr = CGImageCreateWithImageInRect([[mainImageView image] CGImage], rect);
UIImage *cropped = [UIImage imageWithCGImage:cr];
mainImageView.image=cropped;
UIImageWriteToSavedPhotosAlbum(cropped, nil, nil, nil);
CGImageRelease(cr);
}
Voulez-vous laisser l'utilisateur dessiner ce rect? – HDdeveloper
Non @HDdeveloper Je veux connaître le moment où les X et Y de redImage sont visibles à l'écran, qu'il s'agisse d'un défilement ou d'un zoom. – Anand