我在 web 视图中使用jsPDF来生成我想在连接的 USB 标签打印机上打印出来的 PDF。我收到“发送到实例的无法识别的选择器”错误。
这是来自 Xcode 控制台的错误:
-[__NSCFString bytes]: unrecognized selector sent to instance 0x1089cb868
这是供参考的功能:
- (void) printPDFwithPrinter: (NSString *) printerName andData: (NSData *) data{
NSLog(@"%@", printerName);
PDFDocument *pdfDocument = [[PDFDocument alloc] initWithData:data];
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:NSFitPagination];
[printInfo setPrinter:[NSPrinter printerWithName:printerName]];
PDFPrintScalingMode scale = kPDFPrintPageScaleDownToFit;
NSPrintOperation *op = [pdfDocument printOperationForPrintInfo: printInfo scalingMode: scale autoRotate: YES];
[op setShowsPrintPanel:NO];
[op setShowsProgressPanel:NO];
[op runOperation];
}
pdf 数据是 pdf 正文作为字符串的原始输出。(文档)
我是 Objective-C 的新手,所以我将AppBurger用于我的 Native/webview 桥(在 HTML/JS/CSS 中构建我的应用程序)。
到目前为止,这是我的 Xcode 项目: https ://github.com/josiaho/AppBurger-Print-Test