2017-02-18 9 views
-3

プロンプトなしで、ココア/ Objective-Cコードで領収書にテキストを印刷したいと思います。これを行う方法?任意のコード例やチュートリアル?ビューでは、印刷するテキストが配置されたビューでフィード:目的Cココア印刷

このドキュメントは、あなたが呼び出すことによって、印刷パネルをスキップすることができます私のためにハイレベルに https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/Printing/osxp_aboutprinting/osxp_aboutprt.html#//apple_ref/doc/uid/10000083-SW1

+0

「プロンプトなし」とはどういう意味ですか?プリンタのダイアログを表示せずに? –

+0

はい、ダイアログなしで、javascriptsが領収書プリンタでレシートを印刷するためにOSXでnative objective-Cメソッドを呼び出すcordova-pluginを作成したいと思います。 –

+1

領収書のレイアウト/表示はどうですか?ビューに物を置くと、[ネイティブで印刷できます](https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/Printing/osxp_printapps/osxp_printapps.html#//apple_ref/doc/ uid/20000861-BAJBFGED)印刷パネルを表示したくない場合は、[これも可能です](https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/Printing/osxp_printpanel/osxp_printpanel.html#// apple_ref/doc/uid/20000862-BAJBFGED)。 –

答えて

0

です。

NSPrintOperation *op = [NSPrintOperation printOperationWithView:aView printInfo:printInfo]; 
    [op setShowsPrintPanel:NO]; 
    [op runOperation]; 

進捗パネルを非表示にする場合は、setShowsProgressPanel:NOに電話をかけることもできます。

EDIT *とにかく別の質問がありますが、ここでは解決策:文字列を入力します。新しいテキストフィールドを作成し、そのテキストフィールドに文字列を送り、そのテキストフィールドをダイアログなしで印刷します。完了!

NSString *aString = [NSString stringWithFormat:@"A String. \nA new string"]; 
NSTextField *textField = [[NSTextField alloc] init]; 
[textField setStringValue:aString]; 
[textField setBordered:NO]; 
[textField sizeToFit]; 
NSPrintInfo *printInfo = [NSPrintInfo sharedPrintInfo]; 

NSPrintOperation *op = [NSPrintOperation printOperationWithView:textField printInfo:printInfo]; 
[op setShowsPrintPanel:NO]; 
[op runOperation]; 
+0

文字列を印刷する方法はありますか? NSViewやNSDocumentはありませんか? –

+0

いいえ!メソッドはそれを明確に指摘した。 #printOperationWithView#印刷するビューのフィード。 – voltae

+0

ハードコードからビューを作成して文字列を挿入することはできますか?または、フォーム上のビュー要素をドラッグして使用することは絶対に必要ですか? –