Last active
May 13, 2016 05:18
-
-
Save S2Ler/829361 to your computer and use it in GitHub Desktop.
air print from ios sdk 4.2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#import "AirPrintingViewController.h" | |
@implementation AirPrintingViewController | |
-(void)printItem { | |
NSString *path = [[NSBundle mainBundle] pathForResource:@"demo" ofType:@"png"]; | |
NSData *dataFromPath = [NSData dataWithContentsOfFile:path]; | |
UIPrintInteractionController *printController = [UIPrintInteractionController sharedPrintController]; | |
if(printController && [UIPrintInteractionController canPrintData:dataFromPath]) { | |
printController.delegate = self; | |
UIPrintInfo *printInfo = [UIPrintInfo printInfo]; | |
printInfo.outputType = UIPrintInfoOutputGeneral; | |
printInfo.jobName = [path lastPathComponent]; | |
printInfo.duplex = UIPrintInfoDuplexLongEdge; | |
printController.printInfo = printInfo; | |
printController.showsPageRange = YES; | |
printController.printingItem = dataFromPath; | |
void (^completionHandler)(UIPrintInteractionController *, BOOL, NSError *) = | |
^(UIPrintInteractionController *printController, BOOL completed, NSError *error) { | |
if (!completed && error) { | |
NSLog(@"FAILED! due to error in domain %@ with error code %u", error.domain, error.code); | |
} | |
}; | |
[printController presentAnimated:YES completionHandler:completionHandler]; | |
} | |
} | |
- (void)viewDidLoad { | |
[super viewDidLoad]; | |
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect]; | |
[btn addTarget:self action:@selector(printItem) forControlEvents:UIControlEventTouchDown]; | |
[btn setTitle:@"PRINT" forState:UIControlStateNormal]; | |
btn.frame = CGRectMake(0, 100, 320, 50); | |
[self.view addSubview:btn]; | |
} | |
@end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment