J'essaie d'extraire une image d'une vue sur laquelle un utilisateur peut peindre ou ajouter d'autres vues. Avec les iPad1 et 2, tout fonctionne bien jusqu'à présent. Mais sur l'iPad3, il fonctionne comme un chien. J'utilise simplement la méthode renderInContext des calques.
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
UIGraphicsBeginImageContextWithOptions(self.viewDrawableViewContainer.frame.size, NO, [UIScreen mainScreen].scale);
else
UIGraphicsBeginImageContext(self.viewDrawableViewContainer.frame.size);
[self.viewDrawableViewContainer.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Je sais que c'est probablement dû au cpu qui est égal à celui de l'ipad2, mais cela prend environ 1 seconde. Plus l'utilisateur peint ou ajoute, plus le rendu sera long. Parfois jusqu'à 5 secondes, ce qui est vraiment inacceptable. Existe-t-il des options pour améliorer les performances ? Est-il possible de réduire la qualité du rendu - je n'ai pas besoin d'un rendu dans la plus haute résolution rétina...
J'apprécierais toute aide ! Merci d'avance