Skip to content

Instantly share code, notes, and snippets.

@xhruso00
Created February 14, 2024 09:40
Show Gist options
  • Save xhruso00/af12d0bd0785ed17a30101ee3c21e97d to your computer and use it in GitHub Desktop.
Save xhruso00/af12d0bd0785ed17a30101ee3c21e97d to your computer and use it in GitHub Desktop.
ZIP compression for TIFF macOS Cocoa
NSTIFFCompression with zip has enum value 8
NSData *originalData = [NSData dataWithContentsOfURL:URL];
NSImage *image = [[NSImage alloc] initByReferencingURL:URL];
NSBitmapImageRep *imageRep = (NSBitmapImageRep *)[[image representations] firstObject];
NSLog(@"%@", [NSBitmapImageRep localizedNameForTIFFCompressionType:8]); //prints null
BOOL canBecompressed = [imageRep canBeCompressedUsing:8];
NSLog(@"%d", canBecompressed); //prints NO
NSData *lzwData = [imageRep TIFFRepresentationUsingCompression:NSTIFFCompressionLZW factor:1.0];
NSData *zipData = [imageRep TIFFRepresentationUsingCompression:8 factor:1.0];
NSLog(@"%lu", [originalData length]); //104050196
NSLog(@"%lu", [lzwData length]); //697104
NSLog(@"%lu", [zipData length]); //349616
// NSTIFFCompression compression;
// float factor;
// [imageRep getCompression:&compression factor:&factor];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment