Créez un NSImage de la taille souhaitée, verrouillez le focus, dessinez le rectangle de recadrage souhaité de l'image source dans les limites entières de l'image de destination et déverrouillez le focus. L'image que vous avez créée contient maintenant le recadrage de l'image source. Notez qu'il perdra des informations telles que la résolution (DPI), le profil de couleur et les étiquettes EXIF. Si vous souhaitez conserver ces éléments (probablement une bonne idée), utilisez CGImage:
- Utilisez CGImageSource pour charger l'image. Assurez-vous de récupérer les propriétés de chaque image à partir du fichier, ainsi que les images elles-mêmes. Et notez que j'ai utilisé le pluriel: les fichiers TIFF peuvent contenir plusieurs images.
- Utilisez the
CGImageCreateWithImageInRect
function pour recadrer la section souhaitée de chaque image. N'oubliez pas de libérer chaque image originale selon le cas. Si vous voulez écrire les images rognées dans un fichier, utilisez CGImageDestination. Passez à la fois les images et les dictionnaires d'attributs que vous avez obtenus à l'étape 1.
Vous ne savez pas exactement ce que vous voulez faire. Que voulez-vous dire par "image maximum rect"? De plus, de quel type avez-vous l'image? –
Je peux avoir des images .jpg, ou .png, ou .tiff. Toutes les thèses peuvent être chargées dans NSimage. Dans mon image originale, disons qu'il est de taille 1200X600 Mais l'image réelle est seulement 300X200 au centre. L'autre zone est remplie de pixels noirs. Je veux obtenir l'image rect qui couvre la zone 300X200. – Dhanaraj