Intentando cambiar el tamaño de una NSImage que se convierte en NSData

Tengo una NSImage que intento redimensionar así;

NSImage *capturePreviewFill = [[NSImage alloc] initWithData:previewData];
NSSize newSize;
newSize.height = 160;
newSize.width = 120;
[capturePreviewFill setScalesWhenResized:YES];
[capturePreviewFill setSize:newSize];

NSData *resizedPreviewData = [capturePreviewFill TIFFRepresentation]; 
resizedCaptureImageBitmapRep = [[NSBitmapImageRep alloc] initWithData:resizedPreviewData];
saveData = [resizedCaptureImageBitmapRep representationUsingType:NSJPEGFileType properties:nil];
[saveData writeToFile:@"/Users/ricky/Desktop/Photo.jpg" atomically:YES];

Mi primer problema es que mi imagen se aplasta cuando intento cambiar su tamaño y no me ajusto a la relación de aspecto. Leí que usar -setScalesWhenResized resolvería este problema, pero no fue así.

Mi segundo problema es que cuando intento escribir la imagen en un archivo, la imagen no se redimensiona en absoluto.

Gracias de antemano, Ricky.

Respuestas a la pregunta(3)

Su respuesta a la pregunta