7
votes

Vue sur la caméra iPhone en direct échelonné au centre, "cgaffinetransform Traduire" ne fonctionne pas

J'ai un petit problème que je ne pouvais pas résoudre. J'espère vraiment que quelqu'un peut m'aider avec ça. Je voulais redimensionner la vue de la caméra en direct et le placer dans le centre, en utilisant le code suivant ci-dessous: xxx

mais tout ce que j'ai eu était une vue de taille 1/2 sur le haut à gauche de la gauche du écran. Il semble que "cgaffinetransformTranslate" ne fait rien du tout. La traduction n'a pas fonctionné même lorsque j'ai utilisé: xxx

La partie de traduction semble avoir aucun effet sur la vue de la caméra en direct. J'espère que quelqu'un peut m'éclairer.

Merci.


3 commentaires

Je vois le même comportement.


Moi aussi. Je ne connais pas la solution.


Cela semble être corrigé dans les nouveaux iOS. Je ne suis pas sûr quand ils la corrigèrent.


3 Réponses :


1
votes

J'ai frappé ma tête contre le même problème. J'ai confirmé que la mise à l'échelle et la rotation de la prévisualisation fonctionne, mais les traductions semblent être ignorées. Je spéculerais que les portions TX, TY de la cgaffinétransformes sont ignorées lorsque la transformation est définie. Ceci est avec iPhone OS v3.1.2. Je n'ai pas d'autres versions du système d'exploitation à tester en ce moment.


0 commentaires

-1
votes

J'ai eu une solution. Il doit être défini sur le message:

#pragma mark -
#pragma mark UINavigationControllerDelegate
- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{   
    CGFloat width = [[self view] bounds].size.width;
    CGFloat height = width/4*3;
    CGSize sizeOfCamera = CGSizeMake(width, height);
    CGAffineTransform t = CGAffineTransformMakeScale(0.5, 0.5);
    [picker setCameraViewTransform:t];

    // Now the image is automatically aligned to center.
    // Translation matrix also can be applied, but didn't use because it's already aligned to center.
}


1 commentaires

Vous pouvez certainement essayer d'ajouter la traduction, mais il sera ignoré, comme dans la question initiale.



5
votes

J'étais dans le même bateau. Ce que j'ai fait était physiquement déplacer le cadre de cueillette. xxx


0 commentaires