关于 TImage 中位图透明的问题,应该很简单吧?(100分)

  • 主题发起人 主题发起人 szchengyu
  • 开始时间 开始时间
S

szchengyu

Unregistered / Unconfirmed
GUEST, unregistred user!
TImage 是以左下角点的颜色作为透明色,
但我发现这个透明色并不只是代表一个颜色,好像代表了一个范围,
如果我以 RGB(255, 255, 255) 为透明色,图象内许多并不等于而是与此颜色相近的部分
都会被透明掉,

这是怎么回事?该如何让这个图象那些只是与透明色相近而不相等的部分不透明?
 
左上角还是左下角? 应该可以去不透过吧!
 
你的图片分辨率太高了吧?
如果 <= 256 应该会没问题的。
最佳最佳是 16 色。
 
不是分辨率,是颜色。
 
ddev:
可我一定得用 24 位图呀
 
我试了一下.结果如下.
1. 透明色是取左下角颜色点.
2.TImage是严格按照颜色来透明的.但是szchengyu说的情况也存在.
原因是因为机器显示的色彩深度不够. 如果设定为16位色就会出现问题.
相近的颜色系统都用仿色来混合的. 结果Timage就把它也透明掉了.
我做了一个试验. 放上几个色块. 其颜色分别为 255,0,0 253,0,0 251,0,0 249,0,0
透明色是255,0,0 如果显卡色深为 24位色或者32位色的话, 只有一个色块是透明的.
如果调整显卡为16位时,则全部透明.
我把16位色下的Timage抓下来用ps查看.发现 几个色块都是一样的了.
由此我想Timage的透明算法可能是显示出来的时候才计算的.不是内部算好的.

3.透明和颜色深度无关.
 
谢谢 xwings
 
后退
顶部