Reputation: 1
I am not able to print in Cocoa using the service: [[NSPrintOperation printOperationWithView:self] runOperation]; The print dialog gets launched but the preview is blank. Please let me know what could be the issue?
I have a CGImage (iImageRef) which I want to print. Here are the ways I tried:
1.
NSImage* image = [[NSImage alloc] initWithCGImage:iImageRef size:size];
NSView* printView = [[NSView alloc] initWithFrame:rect];
[printView setWantsLayer:YES];
printView.layer = [CALayer layer];
printView.layer.contents = image;
NSPrintOperation* printOperation = [NSPrintOperation printOperationWithView:printView];
[printOperation setShowsPrintPanel:YES];
[printOperation runOperation];
NSImage* image = [[NSImage alloc] initWithCGImage:iImageRef size:size];
NSView* printView = [[NSView alloc] initWithFrame:rect];
[printView setWantsLayer:YES];
printView.layer = [CALayer layer];
printView.layer.contents = image;
NSPrintInfo *printInfo = [NSPrintInfo sharedPrintInfo];
[printInfo setTopMargin:0.0];
[printInfo setBottomMargin:0.0];
[printInfo setLeftMargin:0.0];
[printInfo setRightMargin:0.0];
[printInfo setHorizontalPagination:NSFitPagination];
[printInfo setVerticalPagination:NSAutoPagination];
[printInfo setVerticallyCentered:NO];
[printInfo setHorizontallyCentered:YES];
NSPrintOperation* printOperation = [NSPrintOperation printOperationWithView:printView printInfo:printInfo];
[printOperation setShowsPrintPanel:YES];
[printOperation runOperation];
Upvotes: 0
Views: 40