【超级难题,高手必答:】png格式的图片怎么透明显示呢?????分不够再加~!!!

coolfire729 2004-01-11 05:28:12
png格式的图片怎么透明显示呢?????分不够再加~!!!

搜了以前的帖子,只有将png转成bmp的方法。 png转成bmp后透明部分就变黑拉,而且那些png的阴影等效果都失真了。

google上搜了一下,好像是windows对png支持的不好,但我用过一套软件Samurize确能完美的让png透明显示不失真。

delphi深度论坛上的那个png控件 ‘pngsrc’偶装不上去,老缺什么tree.obj文件,用cbc编译里面的那个zlib文件夹里的cpp后可以安装,但看不到控件再哪,郁闷啊~~~

哪位高手帮帮忙哦~~~~分不够再加~!!!
...全文
121 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolfire729 2004-01-14
  • 打赏
  • 举报
回复
up~~~~!!!
coolfire729 2004-01-12
  • 打赏
  • 举报
回复
难道没解决的办法嘛???
晕~ 没有M$的支持难道就真的用不了png图片???
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
UP UP~~
ehom 2004-01-11
  • 打赏
  • 举报
回复
你再看看,一般那个解析PNG的类都有可以设置的地方的,还有代码你也可以看看
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
delphi的设定透明的功能我认为是透过bmp的TransparentColor实现的,比如你设定TransparentColor为黑色,那么你的bmp画出来后凡是黑色的地方就透明(也就是说没画).
但png的实现好像不同,好像它的alpha通道挺多设置的,需要打开:(
所以用把png转成bmp再用bmp的方式实现透明一来效果极其不好,二来无法实现半透明:(
所以高手们还有没有别的路走哦???????
ehom 2004-01-11
  • 打赏
  • 举报
回复
很多控件本身有设定透明的功能
ehom 2004-01-11
  • 打赏
  • 举报
回复
没怎么用过BCB的IDE环境,但命令行模式绝对可以吧?

切换到控制台模式下,通过Bin下bcc32执行bcc32 tree.c
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
晕晕,编译pngsrc自带的例子通过了,但让我失望的是我载入的png的透明效果全没了,跟bmp一样了,就像我前面说的: png转成bmp后透明部分就变黑拉,而且那些png的阴影等效果都失真了。
郁闷,高手想想办法哦,不会是没有方法实现png图像的透明半透明吧,可是人家又已经做到了,郁闷~~~~
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
哈编译好了,试试先~
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
tree.c确实有哈,但是我不会编译,请问怎么编译啊,我装了cbc的
ehom 2004-01-11
  • 打赏
  • 举报
回复
应该有个src目录吧?用Borland提供的32位C++编译器把里面对应的tree.c编译成中间文件tree.obj,如果没有去找套pnglib,把里面的tree.c找过来编译。把产生的中间文件tree.obj和其它obj文件放一起,再安装控件即可。
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
To ehom(?!) :

不行哦,提示tree.obj找不到:(
我的具体操作如下,帮我看看吧:
---我在dephi的tools菜单里的library中设定好了指向pngsrc的路径.
然后在unit里uses那个PngImage,编译提示 File not found:"tree.obj"

coolfire729 2004-01-11
  • 打赏
  • 举报
回复
呵呵,好,我马上试试:)
稍后回复:)
多谢~
ehom 2004-01-11
  • 打赏
  • 举报
回复
pngsrc,这种东西和JPEG的性质一样~~~

JPEG是封装libjpeg,pngsrc是封装了pnglib,你直接uses相关单元就可以了,注册后所有基于TPicture的控件组件都可以获得对png格式的支持,这点和JPEG,TGifImage等一样...
coolfire729 2004-01-11
  • 打赏
  • 举报
回复
晕~ 用photoshop这样不行哦,理由:

1,效果不好达不到要求,因为转换成bmp后随然可以有办法透明,但没有那种半透明效果了!!!达不到要求白搭啊:( 况且丧失了png透明 半透明的意义拉.

2,太烦杂.
youcheng1 2004-01-11
  • 打赏
  • 举报
回复
用图形处理软件转换,比如Photoshop。

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧