URLからページを印刷できる小さなユーティリティをコーディングしたいのですが、URLは標準ファイル(pdfやjpgの画像など)を配信し、ダイアログを表示せずにcocoaアプリ内からこれを印刷したいだけです。それは可能ですか?ファイルを使用してビューを作成してからこのビューを印刷するように指示する以外は、ドキュメントでこれについて何も見つかりませんが、これは本当に必要ですか?
助けていただければ幸いです。
ありがとう、フィリップ
印刷するためにを表示する必要はありませんNSView
。プログラムで を
作成し、 に渡すだけです。NSView
NSPrintOperation
コード例:
// Get Print Info
NSPrintInfo *printInfo = [NSPrintInfo sharedPrintInfo];
// Printing Text
NSRect textRect = NSMakeRect(0,0,100,50);
NSTextView *theTextView = [[NSTextView alloc] initWithFrame:textRect];
[theTextView setString: @"Hello World"];
NSPrintOperation *textPrint = [NSPrintOperation printOperationWithView:theTextView printInfo:printInfo];
[textPrint setCanSpawnSeparateThread:YES];
[textPrint runOperation];
// Printing Picture
NSImage *pic = [[NSImage alloc] initWithContentsOfFile: @"/Users/Anne/Desktop/Sample.png"];
NSRect picRect = NSRectFromCGRect(CGRectMake(0, 0, pic.size.width, pic.size.height));
NSImageView *imageView = [[NSImageView alloc] initWithFrame:picRect];
[imageView setImage:pic];
NSPrintOperation * picPrint = [NSPrintOperation printOperationWithView:imageView printInfo:printInfo];
[picPrint setCanSpawnSeparateThread:YES];
[picPrint runOperation];
PDF ドキュメントを使用する場合PDFView
(Quartz フレームワークを追加します)。
使用を検討することもできますWebView
(WebKit フレームワークを追加します)。
WebView は多くの形式をサポートし、書式設定を簡単にします (HTML)。