我正在为 OS X 创建一个简单的照片过滤器应用程序,并且我正在显示一张照片NSImageView
(实际上两张照片彼此重叠,两个NSImageView
s,但问题仍然适用于单个视图)。一切都很好,但是当我尝试调整包含NSImageView
s 的窗口的大小时,窗口(也调整了NSImageView
s 的大小)的调整速度非常慢,大约不到 1fps,对用户体验产生了负面影响。我希望调整窗口大小尽可能平滑。当我禁用调整图像视图的大小时,窗口会平滑调整大小,因此减速的原因是那些NSImageView
s.
我正在从我的 DSLR 加载 20 兆像素的图像。当我将它们缩小到屏幕的合理尺寸(例如 1024x768)时,它们会平滑缩放,所以问题在于NSImageView
渲染图像的方式。它(我假设是这种行为的结果)每次需要将 20MP 图像重新绘制到视图的目标框架中时都会尝试重新渲染它。
如何使NSImageView
重新缩放更顺畅?我应该用缩小版的图像喂它吗?我不想这样做,因为它是一个照片编辑应用程序,它也针对视网膜显示屏,而且视口实际上会很大。我可以做到,但这是我最后的选择。除了缩小之外,我怎样才能NSImageView
更快地调整大小?