3

RGBA から透明度を取得し、CSS 不透明度に変換しようとしています。

したがって、次を使用して画像ピクセルの RGBA を取得した後:

$rgb = imagecolorat($img, $j, $i);
$colors = imagecolorsforindex($img, $rgb);
// Printing colors, I get
// 255,255,255,127
// 249,161,66,126
//...

何らかの理由で、透明度は常に整数 (つまり 127) であり、10 進数ではありません。しかし、その 127 の数字を CSS で使用できるものに変換したいと思います。

opacity:0;filter:alpha(opacity=0)

ただし、RGBA のアルファと、それを CSS 不透明度に変換する方法との関連性を理解することはできません。

さまざまな種類の画像のあらゆる種類のピクセルに対してこれを行います。PNG、JPG、GIF

何か案は?

4

2 に答える 2

3

opacity = (127 - transparency) / 127.0

于 2012-07-09T11:07:54.453 に答える
1

不透明度は透明度の反対です。

透明度の範囲が0..255の場合:

opacity = (255 - transparency) / 255.0 

最大値が異なる場合は、255の両方のオカレンスをその値に置き換えてください。

于 2012-07-09T11:02:02.923 に答える