我有一个带有打印收据按钮的窗口。我需要做的是创建一个简单的 NSTextView,向其中添加一个 NSString(至少类似于“Hello World”)并打印它,而不在窗口上显示 NSTextView。
这是我目前拥有的:
NSTextView *textView = [[NSTextView alloc] init];
NSString *text = @"testing";
[textView setEditable:true];
NSRange range = NSMakeRange( 0, [[textView string] length]);
[textView setSelectedRange:range];
[[[textView textStorage] mutableString] appendString:text];
NSPrintOperation *printOperation;
printOperation = [NSPrintOperation printOperationWithView:textView];
[printOperation runOperation];
当我运行它时,我看到打印对话框,但预览是空的。 当我更改 printOperationWithView:textView]; 时从 textView 到我窗口上的现有 View 之一,它打印正常。
最主要的是..我不想在单击“打印”按钮后显示 View 。理想情况下,我想打印文本,而不是 View 。
最佳答案
您是否尝试过将 -initWithFrame
与非零矩形一起使用?
NSTextView *textview = [[NSTextView alloc] initWithFrame:NSMakeRect(0, 0, 468, 648);
(468 x 648 适合 1 英寸边距的 A4 纸。)
关于 cocoa 。创建 NSTextView,向其添加 NSString 并打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7097219/