Advertisement
Guest User

Untitled

a guest
Sep 26th, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. - (IBAction)exportForJim:(id)sender {
  2.    
  3.     NSSavePanel *s = [NSSavePanel savePanel];
  4.    
  5.     NSString *startFileType = [[[self fileType] retain] autorelease];
  6.    
  7.     PXAssert(startFileType);
  8.    
  9.     if ([self fileURL]) {
  10.         [s setNameFieldStringValue:[[self fileURL] lastPathComponent]];
  11.     }
  12.     else {
  13.         [s setNameFieldStringValue:NSLocalizedString(@"Untitled", @"Untitled")];
  14.     }
  15.    
  16.     [self prepareSavePanel:s forExport:YES];
  17.    
  18.     [s beginSheetModalForWindow:[[self windowController] window] completionHandler:^(NSInteger result) {
  19.        
  20.         if (!result) {
  21.             return;
  22.         }
  23.        
  24.         NSPopUpButton *saveFormats = [self windowController]->savePanelImageFormatButton;
  25.         NSString *uti = [[saveFormats selectedItem] representedObject];
  26.        
  27.         CGImageRef ref = [self newCGImage];
  28.        
  29.         CGColorSpaceRef cs = CGColorSpaceCreateWithName(kCGColorSpaceGenericGray);
  30.        
  31.         CGContextRef context = CGBitmapContextCreate(nil, _canvasSize.width, _canvasSize.height, 8, 0, cs, kCGImageAlphaNone);
  32.        
  33.         CGColorSpaceRelease(cs);
  34.        
  35.         CGContextSetBlendMode(context, kCGBlendModeCopy);
  36.         CGContextDrawImage(context, CGRectMake(0, 0, _canvasSize.width, _canvasSize.height), ref);
  37.         CGContextSetBlendMode(context, kCGBlendModeNormal);
  38.        
  39.         CGImageRelease(ref);
  40.        
  41.         ref = CGBitmapContextCreateImage(context);
  42.        
  43.         TSWriteCGImageToFileWithUTI(ref, [s filename], uti);
  44.        
  45.         CGImageRelease(ref);
  46.        
  47.         CGContextRelease(context);
  48.        
  49.     }];
  50. }
  51.  
  52.  
  53.  
  54. function main(image) {
  55.     var acorn = NSApplication.sharedApplication();
  56.     var doc = acorn.orderedDocuments()[0];
  57.     [doc exportForJim:null];
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement