2011-04-19 15 views
0

私は単純なFXGをSVGに変換しようとしています。 変換はかなり簡単ですが、私は色の操作の問題に直面しています。colorTransform同等のカラーマトリックス

FXGの灰色のパスは基本シェードで、このパスを他のシェイプに使用すると、別の色変換が適用されます。ここで
colorTransformに相当)FXG色変換:

<ColorTransform redOffset="-255" blueOffset="25" greenOffset="56"/> 

がどのように私はこの色変換を変換することができます(オフセットにも負の)何かのSVGには理解できますか?私は色オフセットの変更、倍率やアルファの必要はありません。
<feColorMatrix>(これはAS3 ColorMatrixFilterのようなSVGフィルタのように見えます)で実現できたと思いますが、どうやって見つけることができません。

実際の一般的な質問は、これらのカラーオフセットの変更をカラーマトリックスフィルタにどのように変換できるかということです。

答えて

1
var matrix : Array = new Array(); 
matrix = matrix.concat([1,0,0,0,-255]);// red 
matrix = matrix.concat([0,1,0,0, 56]);// green 
matrix = matrix.concat([0,0,1,0, 25]);// blue 
matrix = matrix.concat([0,0,0,1, 0]);// alpha 
var colorFilter : ColorMatrixFilter = new ColorMatrixFilter(matrix); 

最後の列はオフセットされています。

+0

感謝を。副次的に、私はこの行列をSVGのように使うことはできません。-1と1の間の値しか理解できません。したがって、SVGの同じ行列: Planplan

1

Actionscript ColorTransformには、rOffset、gOffset、bOffset、aOffset以外のredMultipler、greenMultiplier、blueMultiplier、alphaMultiplierの各プロパティもあります。

SVG feColorMatrixは次のようになります。明確化のため

[ 
rMult/256, 0, 0, 0, rOffset/256, 
0, gMult/256, 0, 0, gOffset/256, 
0, 0, bMult/256, 0, bOffset/256, 
0, 0, 0, aMult/256, aOffset/256 
]