zoukankan      html  css  js  c++  java
  • Firemonkey的旁门左道[五]


    这次讲讲绘制的几种模式吧,不过还是比较浅显,刚接触不久,还实在没这个实力道出个所以来。

    FMX下,我们可以切换GDI,D2D,GPU这三种模式,

    只要通过全局变量就可以轻松搞定。

    如何设置

    GlobalUseDirect2D :=False,

     那么将采用GDI的模式进行绘制。通过调试模式我们可以知道当前的Canvas的状态


    其他的以此类推,如果在某种模式下出现bug,可以切换到另一种模式中,可能就规避了bug。


    比如,在GDIPlus的模式中,你无法成功的设置字体,原因很简单,字体被写死了,

    FMX.Canvas.GDIP.pas的第506行,让人欲哭无泪啊。


    要是你坚定的使用GDI绘图,那么改成如下, 并将FMX.Canvas.GDIP.pas放到工程目录中即可。

     FGPFamily := TGPFontFamily.Create(FFont.Family);

    这也是我刚学到的给XE4打补丁的方法,还是开源的给力啊



  • 相关阅读:
    python中的面向对象编程
    python global vs nonlocal (2)
    python3 nonlocal vs global
    poj蚂蚁问题
    C/C++ static vs global
    砝码问题
    Wythoff's game
    C++中的::operator new, ::operator delete
    客户信息表 自我汇总 待确认
    Oracle Savepoint
  • 原文地址:https://www.cnblogs.com/pangblog/p/3260511.html
Copyright © 2011-2022 走看看