Dans iOS, comment préservez-vous les bords nets lors de l'agrandissement d'un bitmap?

Lorsque vous placez un UIImage dans un UIImageView plus petit que la vue et que le mode de contenu de la vue est ScaleToFit , iOS agrandit le bitmap, comme prévu. Ce à quoi je ne m'attendais jamais, c'est que cela brouille les bords des pixels qui ont été mis à l'échelle. Je peux voir que cela pourrait être une bonne idée si vous regardez des photos, mais dans de nombreux autres cas, je veux voir ces bords méchants, durs, droits!

Est-ce que quelqu'un sait comment vous pouvez configurer un UIImage ou UIImageView pour agrandir avec des bords de pixels pointus? C'est-à-dire: laissez-le pixellisé, pas flou.

Merci!

Si vous souhaitez augmenter l'échelle de n'importe quelle image dans UIImageView avec l'arête vive, utilisez la propriété suivante de CALayer .

 imageview.layer.magnificationFilter = kCAFilterNearest; 

Il semble que la valeur de la valeur de l' magnificationFilter affecte une méthode d'interpolation du contenu de UIView. Je vous recommand de lire une explication de la propriété dans CALayer.h.

 /* The filter types to use when rendering the `contents' property of * the layer. The minification filter is used when to reduce the size * of image data, the magnification filter to increase the size of * image data. Currently the allowed values are `nearest' and `linear'. * Both properties default to `linear'. */ @property(copy) NSSsortingng *minificationFilter, *magnificationFilter; 

J'espère que ma réponse vous sera utile.