相关疑难解决方法(0)

使用 Cocoa 打印本地 HTML

我有一个需要使用 Cocoa 打印的项目的简单列表。我有一个半生不熟的解决方案,它使用带有自定义drawRect:方法的 NSView ,但它相当复杂且不易维护。

我想要的是一个 HTML 字符串(可以很容易地从列表中构建),它可以嵌入到一次性 WebView 中,然后打印。

假设我有一个简单的 NSString 像:

NSString *htmlString = @"<b>Test</b>";
Run Code Online (Sandbox Code Playgroud)

创建显示此内容的 WebView 的最简单方法是什么?我试过下面的代码,但它导致一个空白页:

WebView *webView = [[WebView alloc] init];
NSString *dir = @"/Users/Me/Desktop/";
NSString *fileUrl = [dir stringByAppendingPathComponent:@"Temp_Print.html"];

NSString *htmlString = @"<b>Hi!</b>";
[[htmlString dataUsingEncoding:NSUTF8StringEncoding] writeToFile:fileUrl atomically:YES];

[[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:fileUrl]]];
[webView setFrame:NSMakeRect(0, 0, 500, 500)];
NSPrintOperation *po = [NSPrintOperation printOperationWithView:webView printInfo:pi];

[pi release];
[po runOperation];
Run Code Online (Sandbox Code Playgroud)

printing cocoa objective-c webview

5
推荐指数
1
解决办法
1767
查看次数

标签 统计

cocoa ×1

objective-c ×1

printing ×1

webview ×1