-
近期文章
近期评论
文章归档
分类
功能
作者归档:raysoftware
跨平台的,在FMX中读取ICON文件的每一帧到Bitmap
昨天在使用FreeImage的时候发现FreeImage对ICON的处理有问题,32位的帧读出来的背景居然是黑的。我猜应该是32位没有And的Mask数据。而它按照24位以下的处理方式把Alpha值填成255了。
只能自己动手写代码,也不复杂,算上把Windows单元抽出来声明的结构体,也就300[……]
关闭掉新版Delphi的几个固定导出函数(__dbk_fcall_wrapper,dbkFCallWrapperAddr,TMethodImplementationIntercept)
不知道从什么时候起Delphi编译的PE文件总是三个固定的导出函数。
一方面有强迫症的同学们会不爽,另一方面其实是不安全的。
这三个函数是:__dbk_fcall_wrapper,dbkFCallWrapperAddr,TMethodImplementationIntercept
有两种方式可[……]
FireMonkey在使用GDIPlus放大图像的Bug的修复
Delphi10.2中FireMonkey中GDIPlus放大图片的Bug,不知道从哪个版本开始的,还是一直都这样。
新建一个FireMonkey工程,窗口上放一个Image控件,WrapMode设置为Stretch,表示随控件大小缩放。指定一张小图。
默认使用D2D的时候放大没问题
关闭[……]
FireMonkey GIF处理的更新
盒子上人才济济,很快就有兄弟发现在Android中有问题。
经过调试,发现Android中TCanvas.DrawBitmap对透明处理跟Windows不太一样,而是把透明部分也覆盖上去了,于是自己处理了一下帧的叠加,自己复制Bitmap的Scanline颜色,跳过透明即可。
2017.4.19[……]
FireMonkey跨平台的GIF解决方案
用FireMonkey的同学们一定知道FireMonkey对GIF动画的支持不是太好,只有静态的。
网上已有的解决方案就是先手动预处理GIF文件分割成多个单张,然后放到BitmapList中,缺点是要手动处理,而且帧速率也麻烦。因为项目中要实现了一个GIF的格式处理,代码整理了一下,嫁接到Fire[……]
VC版本的MakeObjectInstance把WNDPROC映射到类的成员函数
这段时间用VC封装Windows类库,没有MakeObjectInstance处理窗口消息确实不爽,又不想使用MFC的消息映射,这玩意的效率和美观只能呵呵。
至于MakeObjectInstance是什么,Delphi转过来的同学必然很了解这个方便的功能,就是动态构造一个函数把普通函数转到一个类的[……]
发表在 CPP
VC版本的MakeObjectInstance把WNDPROC映射到类的成员函数已关闭评论
Cocos2d-x程序Windows下VC中文乱码的解决
Cocos2d-x默认字符串常量编码都是UTF8的,而Windows中的VC默认都是跟系统相同,比如简体Windows是GB2312或者GBK.繁体就是BIG5编码.
而我们大多数中国人用VC编译出来的字符串常量也就是GBK编码的字符串.
在Cocos2d-x界面上绘制的时候它是不知道的,只会认为这[……]
Delphi结构体的扩展,可以自动初始化,反初始化,自定义拷贝函数.
恭贺Delphi XE7诞生,Delphi XE7在编译器内部集成了我之前所实现的动态数组扩展.https://www.raysoftware.cn/?p=278
现在有一个更悠久的历史需求,在QC的Delphi板块上置顶了好多年.官方一直没有实现.
http://qc.embarcadero.com[……]
HTML解析器更新
增加了兼容性.
对于非标准的HTML做法,Tag中的符号没有转义做了兼容.
HtmlParser
或者
http://code.google.com/p/delphi-html-parser/[……]
共享一个之前封装的多进程共享内存的MemoryStream
具体用处呢,有很多,比如多进程浏览器共享Cookie啦,多个进程传送点数据啦.[……]