本文主要是介绍Firemonkey的旁门左道[二],希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
上一篇我们讲到了利用双缓冲的方式进行图形绘制,这是在Win下一般的套路。
可是移植在Mac OS下,竟然出现了意外?!依旧是不能显示。
几经摸索,终于找到了一种解决方案,在单元末加了
initialization
GlobalUseGPUCanvas := True; //直接利用GPU绘制
两个平台都输出了,而且是没有抗锯齿的效果(是我需要的效果)。但是Mac Os下竟然出现了雪花屏
后来发现本身就不用那么麻烦,直接画在canvas上就可以了,Bitmap只是多次一举。猜测:MFiremonkey针对苹果平台已经做了很好的优化。
看来是把问题想复杂了
打开GlobalUseGPUCanvas, 在Mac平台下在任何方法中都能实时绘图,否则OnPaint事件中的绘图才有效
--------
不过依旧有不完善的情况,当 GlobalUseGPUCanvas := True 时,会有少量的内存泄露
还是很不爽的,看来XE系列的完善还是一条很漫长的道路啊
这篇关于Firemonkey的旁门左道[二]的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!