2013-10-20 3 views
3

저는 캔버스에 수천 개의 점을 그려 둡니다. 각 점은 작은 알파 값을 가진 호이며 기본적으로 밀도 플롯입니다. 처음에는 알파에 0.1을 사용했지만 0.05를 사용하면 더 나은 결과를 얻을 수있었습니다. 모든 코드에서 1보다 큰 십진 정밀도를 본 적이 없기 때문에 0.05가 작동한다는 것에 놀랐습니다 (Chrome).rgba에서 알파 값의 정밀도

알파 값에 대한 공식적인 정밀도가 있습니까? 아니면 브라우저의 구현에 달려 있습니까?

답변

4

정밀도는 1/256과 값이 외부 1

범위이다 (~ 0.004 또는 약 "0.5 % 불투명도 씩") [1 0]에는 이해되지 않아야 - 범위는 완전히 투명 (0 % 불투명) 및 100 % 불투명합니다. 이 범위에 맞게 값이 잘립니다.

값 0.05는 두 계정에서 모두 완벽하며 (0.1과 구별됩니다) 시각적 변화 (또는 시각적 호소)의 실제 양은 디스플레이 하드웨어 과 인간의 인식에 달려 있습니다. 어떤 경우에도 0.05는 "95 % 투명"이고 0.1은 "90 % 투명"이라고 예상 할 수 있습니다.


1이 8 알파 채널 및 하부 32bpp의 캔버스 가정된다 (I을 찾을 수 있지만, 모든 서류를!). 현재 채널 당 8 비트가 #AARRGGBB 표기법을 통해 제공 될 수 있으므로 더 높은 내부 색 깊이가 지원 될 수 있습니다 (즉, 48 비트 이미지에서로드 할 때 12 비트/채널) 현재 노출되지 않습니다. 디스플레이 하드웨어가 낮은 (예를 들어 16 비트 칼라 또는 24bpp)이면

2 다음 내장 정밀도의 일부 손실이을 표시 할 때 발생한다. 저품질 디스플레이는 편향이나 보정 불량이 발생하기 쉽습니다. 또한 환경에서의 조명은 이미지가 인식되는 방식에 큰 요인이 될 수 있습니다.

+0

감사합니다. 매우 도움이됩니다. 또한 캔버스 비트 깊이에 대한 문서를 찾을 수 없습니다. – Fiver