在Cocoa中将内存中的图像插入到Webview中的正确方法?

发布于 2024-11-03 03:48:34 字数 133 浏览 0 评论 0原文

我有一张使用 Core-Plot 框架生成的图表图像。我希望能够将图像插入到 Web 视图中保存的自定义报告中。

是否有建议或最佳实践方法可以做到这一点。即,如果图像需要作为临时文件保存到磁盘,图像应该放在哪里?什么时候应该删除图像等?

I have an image of a graph generated using the Core-Plot framework. I'd like to be able to insert the image into a custom report which is held in a Webview.

Is there an advised or best practise way of doing this. i.e. if the image needs to be saved to disk as a temporay file, where should the image be placed? When should the image be deleted etc.?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

衣神在巴黎 2024-11-10 03:48:34

假设您控制要在 Web 视图中呈现的所有 html,我建议保存一种本地 Web 存档,将 html、图像和任何其他资源都放在同一个位置,从而使您的自定义报告的呈现更不容易出现问题打破。 (如果您已经做到了这一点,您甚至可以将其设为受支持的捆绑文档类型。)

如果您只需要让该文件可用于一次性渲染修改后的 html 文档,我建议使用 NSTemporaryDirectory() 路径:

NSData        *imageData = ...;
NSString      *temporaryImagePath = NSTemporaryDirectory();
NSError       *error = nil;

temporaryImagePath = [ temporaryImagePath stringByAppendingPathComponent: @"img.jpg" ];
[ imageData writeToFile: temporaryImagePath options: NSDataWritingAtomic error: &error ];

Assuming you control all the html that's to be rendered in the webview, I'd suggest saving a sort of local web archive, with the html, image and any other resources all in the same place, making your custom report's rendering much less prone to breaking. (You could even make it a supported bundle document type, if you get that far along.)

If you just need to have the file available for a one-time rendering of a modified html document, I suggest using the NSTemporaryDirectory() path:

NSData        *imageData = ...;
NSString      *temporaryImagePath = NSTemporaryDirectory();
NSError       *error = nil;

temporaryImagePath = [ temporaryImagePath stringByAppendingPathComponent: @"img.jpg" ];
[ imageData writeToFile: temporaryImagePath options: NSDataWritingAtomic error: &error ];
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文