首  页   最新日志    火人论坛        火人作品    编程园地    网络日志    网友作品     留言本本     关于火人
用户登陆
用户:
密码:
 

站点日历
73 2017 - 11 48
   1234
567891011
12131415161718
19202122232425
2627282930




日志搜索

 标题   内容

 
 
Asphyre4最新测试版 ASDB解包及XML生成器
晴天 Asphyre4动态加载图片的方法
   [分类:编程园地][发表日期:2007-1-26] [发表:火人[查看:41104]

      由于Asphyre4中的AsphyreImage没有提供类似LoadFromFile的函数,AsphyreImage只能通过预读XML文件来创建,不知是Asphyre4暂时没有这项功能还是有意识地这样设计,的确让不少朋友感觉比较不顺手,为此,火人简单写了一个TAsphyreImageEx类,可以通过调用LoadFromFile动态加载图片,与朋友们分享:

程序代码:[ 复制代码到剪贴板 ]
 TAsphyreImageEx = class(TAsphyreImage)
  Public
    function LoadFormfile(IDName,FilePath:string;patWidth,patHeight,Count:Integer): Boolean;
 end;
{ TAsphyreImageEx }

function TAsphyreImageEx.LoadFormfile(IDName,FilePath: string;patWidth,patHeight,Count:integer): Boolean;
var
 ImageDesc: PImageDesc;
begin
  ImageDesc:=new(PImageDesc) ;
  Setlength(ImageDesc.Textures,1);
  with ImageDesc^ do
  begin
    Identifier  :=IDName;//
    DescType    :=idtImage;//
    PatSize     := Point(patWidth,patHeight);
    PatCount    :=Count;//
    Textures[0]:=FilePath;
  end;
  FName:=ImageDesc.Identifier;
  Result:=Self.Initialize(ImageDesc);
  Setlength(ImageDesc.Textures,0);
  Dispose(ImageDesc);
end;

加载的方法如下:
程序代码:[ 复制代码到剪贴板 ]
  AsphyreImageEx:= TAsphyreImageEx.Create(Sender.Images);
  AsphyreImageEx.LoadFormfile('/images/powerdraw','powerdraw.png',240,128,2);
。。。。。。
    useimage(sender.Images.image['/images/powerdraw'], 0);
    sender.Canvas.TexMap(pbounds4(80, 160, 240, 128), clWhite4, fxuBlend);
    useimage(sender.Images.image['/images/powerdraw'], 1);
    sender.Canvas.TexMap(pbounds4(320, 160, 240, 128), clWhite4, fxfAlphaTest);

本方法经火人测试有效,至于LoadFormStream要复杂些,需要修改Asphyre4的源码,等Asphyre4稍稍稳定后,如果还没这项功能,火人再尝试修改,:)



[本日志由 火人 于 2007-01-27 00:11 AM 编辑]

引用这个评论 wlion 于 2007-02-07 11:30 PM 发表评论: 
这样也行,不用每次都去查找图片!!
对于多图来说比较好!
UseImage(AsphyreImageEx,0);
    TexMap(pBounds4(128,256,128,128),cAlpha4(255),fxuBlend);

引用这个评论 wlion 于 2007-01-30 09:24 PM 发表评论: 
感觉一股脑的,不管什么都使用XML来描述和加载,而没提供从内存设置和加载的方法,失去了另一种灵活性。
用XML描述文件自然好,但也有过之尤不及之感!

引用这个评论 xunmeng 于 2007-01-28 00:10 AM 发表评论: 
谢谢 其实我蛮想有原来的 asdb那种类型包

可以定义一些其他数据给图片 直接从图片文件

读取 感觉上没那个好

 

发表评论
发表: 用户:  密码:   注册?  
验证码    
评论:

禁止表情
禁止UBB
禁止图片
识别链接
识别关键字
表  情
 

Copyright © 2006 All rights reserved. Design by huosoft

电话:13974847258    QQ群:7155339
Powered by L-Blog V-Blog 2004-2005