-
近期文章
近期评论
文章归档
分类
功能
分类目录归档:Delphi
FireMonkey GIF处理的更新
盒子上人才济济,很快就有兄弟发现在Android中有问题。
经过调试,发现Android中TCanvas.DrawBitmap对透明处理跟Windows不太一样,而是把透明部分也覆盖上去了,于是自己处理了一下帧的叠加,自己复制Bitmap的Scanline颜色,跳过透明即可。
2017.4.19[……]
FireMonkey跨平台的GIF解决方案
用FireMonkey的同学们一定知道FireMonkey对GIF动画的支持不是太好,只有静态的。
网上已有的解决方案就是先手动预处理GIF文件分割成多个单张,然后放到BitmapList中,缺点是要手动处理,而且帧速率也麻烦。因为项目中要实现了一个GIF的格式处理,代码整理了一下,嫁接到Fire[……]
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啦,多个进程传送点数据啦.[……]
Delphi Hook Library做了一点小更新
https://www.raysoftware.cn/?p=357
1.原来的HOOK库,当遇到函数先被别人HOOK了,会无视对方的钩子,造成函数出问题.
现在加入了处理,如果想要HOOK的函数先被别人HOOK了,那么就去HOOK对方的函数.
但是要记得UnHOOK的时候也最好在对方去掉HOOK之前[……]
Delphi循环移位操作
如果在X86计算机上很简单,直接内嵌汇编ror和rol指令就是循环移位.
但是如果在Android的平台上,asm关键字是无效的.
只能自己实现.
function ror(const Value: DWORD; ShiftValue: Byte): DWORD; overload;
begin[……]
Delphi XE5开发Android程序使用自定义字体文件.
最近在做一个电子书阅读器的Android小程序来验证Delphi XE5的移动开发功能.
万事大吉,只欠根据字体文件(.ttf文件)切换阅读字体,通常Android系统只带三种以下字体.一般用Java/Eclipse开发的话比较简单,typeface的createFromAsset,createFr[……]
Delphi移动平台上生存期自管理一些问题的避免
今天和Delphi高手刘麻子讨论了一下移动平台上生存期自管理容易导致的一些问题.有几点体会
在移动平台上Delphi的对象是生存期自管理的,这和早期版本和现有的PC版本有很大不同.
大部分时间我们原来的代码不会有问题.我们原来的手动释放代码在移动平台也不会有问题,因为TObject.Free方法在[……]