繁体   English   中英

在应用程序中实现绘图的最有效方法是什么?

[英]What is the most efficient way to implement drawings in app?

我想在我的PDF阅读器应用程序中实现自由形式绘图。 我看到了一个教程,它使用UIImageView作为渲染图形的视图。 我试过这个并且效果很好,除非我尝试保存绘图。 有时它会阻止我从一个页面移动到另一个页面,除非我轻拍两次边缘,其他时候过渡是平滑的。

那么实现此功能的最佳方法是什么?

- 附加信息 -

为了保存图形,我所做的是使用UIImagePNGRepresentation将其保存为图像以将其保存在目录中。 保存图像的文件名基于bookId和文档的页码(例如121-5.png)

现在要加载绘图,将调用一个函数,该函数根据图书的ID和页码检查图像是否存在。 因此,如果书的ID为121且我在第5页,则该函数将加载图像“121-5.png”。

这只是一个猜测(而且我要在其上进行扩展太晚了),但是如果你试图以最明显的方式进行保存部分,可能你会停止主(UI)线程。 它可能你不是,如果它是冒昧的,那就很抱歉。 如果是这样,这将导致整个界面停止运行,直到图像被渲染,压缩和保存。

两种简单方法来解决这个问题:

  • 启动后台线程来执行此操作,这将释放主线程以响应用户。 (搜索NSOperation是一个开始。这是一个随机教程
  • 将要保存的UILayer传递到“下一页”,并在转换后执行保存。 它仍然会使事情停滞不前,但至少用户会考虑下一步该做什么,你需要几百毫秒才能完成任务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM