SVG 필터를 사용하여 복잡한 경로에 흐린 "드롭 섀도우"유형 효과를 만듭니다. 두 개의 SVG feColorMatrix 필터 효과를 하나의 행렬에 통합합니까?
<defs>
<filter id="dropshadow" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feColorMatrix result="hueOut" in="SourceAlpha" type="hueRotate" values="340"/>
<feColorMatrix result="satOut" in="hueOut" type="saturate" values="3"/>
<feGaussianBlur in="satOut" stdDeviation="8"/>
<feMerge>
<feMergeNode/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
</defs>
나는 순전히 시행 착오를 통해 위의
feColorMatrix
값에 도착했다. (행렬 수학만으로 작업한다면 어둠에서 빛에 이르기까지 특이하게 아름다운 색조 변화가 생깁니다.) 기본적으로 저는 컬러 휠을 340도 회전시키고 있습니다. 색상은 값을 3으로 사용하여 흐리게하기 직전에 (. 스펙이에 다소 불분명로 사용하지만, 시행 착오가
type="saturate"
1 이상 값이 한 채도 빼기 아래의 이미지를 이미지와 값을 포화 것으로 나타났습니다) 여기
문제이다 : 나는 대규모 반복 해요 경로의 양과 이중 행렬 연산은 기계를 멈추게합니다. 너무 자주 충돌합니다.
위의 두 개의 feColorMatrix 필터를 하나의 더 효율적인 feColorMatrix
= "matrix"필터 프리미티브로 결합하기 위해 일부 매트릭스 수학 전문가가 나를 도와 드릴까요? 나는 spec의 요지를 얻지 만, 나는 수학의 측면에서 내 머리 위로 들어간다.
고마워요. 마이클 - 정말 당신이하고있는 일을 알게되면 간단합니다. 이것은 수학적 관점에서 다소 보수적 인 것으로 알고 있습니다. 성능 향상 또한 무시할 수 있을지 모르겠지만, 처음으로 견인력을 가진 5x5 행렬을 얻었고 처음부터 가치를 가졌는지 어떻게 설명 할 수 있습니까? – Ben