#!/usr/bin/perl -w
my
(
$direction
,
$proceedFlag
);
my
(
$plugin
) =
"plug_in_alpha_fade"
;
my
@arr
= (
[
"24 24 66 1"
,
" c None"
,
". c #A0A0A0"
,
"+ c #A2A2A2"
,
"X c #787878"
,
"# c #7B7B7B"
,
"Z c #A8A8A8"
,
"% c #AAAAAA"
,
"& c #848484"
,
"* c #868686"
,
"= c #B0B0B0"
,
"- c #B2B2B2"
,
"; c #8F8F8F"
,
"> c #929292"
,
", c #B8B8B8"
,
"' c #BABABA"
,
") c #9B9B9B"
,
"! c #9E9E9E"
,
"~ c #C0C0C0"
,
"{ c #C2C2C2"
,
"] c #A7A7A7"
,
"^ c #C7C7C7"
,
"/ c #C9C9C9"
,
"( c #B3B3B3"
,
"_ c #B5B5B5"
,
": c #A4A4A4"
,
"< c #7E7E7E"
,
"[ c #ACACAC"
,
"} c #898989"
,
"| c #B4B4B4"
,
"1 c #959595"
,
"2 c #BCBCBC"
,
"3 c #A1A1A1"
,
"4 c #C3C3C3"
,
"5 c #ADADAD"
,
"6 c #CCCCCC"
,
"7 c #CFCFCF"
,
"8 c #D2D2D2"
,
"9 c #D3D3D3"
,
"0 c #BEBEBE"
,
"a c #C1C1C1"
,
"b c #C4C4C4"
,
"c c #D8D8D8"
,
"d c #D9D9D9"
,
"e c #DBDBDB"
,
"f c #CACACA"
,
"g c #CDCDCD"
,
"h c #D0D0D0"
,
"i c #DFDFDF"
,
"j c #E1E1E1"
,
"k c #E3E3E3"
,
"l c #D6D6D6"
,
"m c #DCDCDC"
,
"n c #E7E7E7"
,
"o c #E9E9E9"
,
"p c #EBEBEB"
,
"q c #E2E2E2"
,
"r c #E4E4E4"
,
"s c #EFEFEF"
,
"t c #F1F1F1"
,
"u c #F3F3F3"
,
"v c #EDEDED"
,
"w c #F0F0F0"
,
"x c #F7F7F7"
,
"y c #F9F9F9"
,
"z c #FBFBFB"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W:#<%[*}-|>1'2!3{4%5/6_W"
,
"W#Z%&*=-;>,')!~{]%^/(_7W"
,
"W<%[*}-|>1'2!3{4%5/6_,8W"
,
"W%&*=-;>,')!~{]%^/(_780W"
,
"W[*}-|>1'2!3{4%5/6_,89aW"
,
"W*=-;>,')!~{]%^/(_780acW"
,
"W}-|>1'2!3{4%5/6_,89abdW"
,
"W-;>,')!~{]%^/(_780acdfW"
,
"W|>1'2!3{4%5/6_,89abdegW"
,
"W>,')!~{]%^/(_780acdfgiW"
,
"W1'2!3{4%5/6_,89abdeghjW"
,
"W')!~{]%^/(_780acdfgijlW"
,
"W2!3{4%5/6_,89abdeghjkdW"
,
"W!~{]%^/(_780acdfgijldnW"
,
"W3{4%5/6_,89abdeghjkdmoW"
,
"W{]%^/(_780acdfgijldnoqW"
,
"W4%5/6_,89abdeghjkdmoprW"
,
"W%^/(_780acdfgijldnoqrsW"
,
"W5/6_,89abdeghjkdmoprntW"
,
"W/(_780acdfgijldnoqrstvW"
,
"W6_,89abdeghjkdmoprntuwW"
,
"W_780acdfgijldnoqrstvwxW"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 47 1"
,
" c None"
,
". c #A0A0A0"
,
"+ c #A4A4A4"
,
"X c #7E7E7E"
,
"# c #848484"
,
"Z c #B0B0B0"
,
"% c #B4B4B4"
,
"& c #959595"
,
"* c #9B9B9B"
,
"= c #C0C0C0"
,
"- c #C3C3C3"
,
"; c #ADADAD"
,
"> c #B3B3B3"
,
", c #CFCFCF"
,
"' c #D3D3D3"
,
") c #C4C4C4"
,
"! c #CACACA"
,
"~ c #DFDFDF"
,
"{ c #E3E3E3"
,
"] c #DCDCDC"
,
"^ c #E2E2E2"
,
"/ c #EFEFEF"
,
"( c #F3F3F3"
,
"_ c #F9F9F9"
,
": c #727272"
,
"< c #787878"
,
"[ c #A8A8A8"
,
"} c #ACACAC"
,
"| c #898989"
,
"1 c #8F8F8F"
,
"2 c #B8B8B8"
,
"3 c #BCBCBC"
,
"4 c #A1A1A1"
,
"5 c #A7A7A7"
,
"6 c #C7C7C7"
,
"7 c #CCCCCC"
,
"8 c #BEBEBE"
,
"9 c #D8D8D8"
,
"0 c #DBDBDB"
,
"a c #D0D0D0"
,
"b c #D6D6D6"
,
"c c #E7E7E7"
,
"d c #EBEBEB"
,
"e c #EDEDED"
,
"f c #F7F7F7"
,
"g c #FBFBFB"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W<[}|12345672890abcdcefW"
,
"W<[}|12345672890abcdcefW"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W<[}|12345672890abcdcefW"
,
"W<[}|12345672890abcdcefW"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W<[}|12345672890abcdcefW"
,
"W<[}|12345672890abcdcefW"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W<[}|12345672890abcdcefW"
,
"W<[}|12345672890abcdcefW"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W<[}|12345672890abcdcefW"
,
"W<[}|12345672890abcdcefW"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W+X#Z%&*=-;>,')!~{]^/((W"
,
"W<[}|12345672890abcdcefW"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 65 1"
,
" c None"
,
". c #CFCFCF"
,
"+ c #D2D2D2"
,
"X c #BEBEBE"
,
"# c #C1C1C1"
,
"Z c #D8D8D8"
,
"% c #D9D9D9"
,
"& c #CACACA"
,
"* c #CDCDCD"
,
"= c #DFDFDF"
,
"- c #E1E1E1"
,
"; c #D6D6D6"
,
"> c #E7E7E7"
,
", c #E9E9E9"
,
"' c #E2E2E2"
,
") c #E4E4E4"
,
"! c #EFEFEF"
,
"~ c #F1F1F1"
,
"{ c #EDEDED"
,
"] c #F0F0F0"
,
"^ c #F7F7F7"
,
"/ c #F9F9F9"
,
"( c #FCFCFC"
,
"_ c #BCBCBC"
,
": c #D5D5D5"
,
"< c #C7C7C7"
,
"[ c #DDDDDD"
,
"} c #D3D3D3"
,
"| c #E5E5E5"
,
"1 c #DEDEDE"
,
"2 c #EBEBEB"
,
"3 c #F5F5F5"
,
"4 c #F6F6F6"
,
"5 c #B3B3B3"
,
"6 c #B5B5B5"
,
"7 c #AFAFAF"
,
"8 c #C9C9C9"
,
"9 c #C6C6C6"
,
"0 c #A7A7A7"
,
"a c #AAAAAA"
,
"b c #A4A4A4"
,
"c c #C0C0C0"
,
"d c #C2C2C2"
,
"e c #BDBDBD"
,
"f c #9B9B9B"
,
"g c #9E9E9E"
,
"h c #989898"
,
"i c #B8B8B8"
,
"j c #BABABA"
,
"k c #B6B6B6"
,
"l c #8F8F8F"
,
"m c #929292"
,
"n c #8D8D8D"
,
"o c #B0B0B0"
,
"p c #B2B2B2"
,
"q c #AEAEAE"
,
"r c #848484"
,
"s c #868686"
,
"t c #808080"
,
"u c #A8A8A8"
,
"v c #A6A6A6"
,
"w c #787878"
,
"x c #7B7B7B"
,
"y c #757575"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W._X:Z<&[=};|>1'{!2{3^4W"
,
"W6.+X#Z%&*=-;%>,')!~{]^W"
,
"W5*._X:Z<&[=};|>1'{!2{3W"
,
"W856.+X#Z%&*=-;%>,')!~{W"
,
"W<75*._X:Z<&[=};|>1'{!2W"
,
"Wa<856.+X#Z%&*=-;%>,')!W"
,
"W09<75*._X:Z<&[=};|>1'{W"
,
"Wd0a<856.+X#Z%&*=-;%>,'W"
,
"Wcb09<75*._X:Z<&[=};|>1W"
,
"Wgcd0a<856.+X#Z%&*=-;%>W"
,
"Wfecb09<75*._X:Z<&[=};|W"
,
"Wjfgcd0a<856.+X#Z%&*=-;W"
,
"Wihfecb09<75*._X:Z<&[=}W"
,
"Wmijfgcd0a<856.+X#Z%&*=W"
,
"Wlkihfecb09<75*._X:Z<&[W"
,
"Wplmijfgcd0a<856.+X#Z%&W"
,
"Wonlkihfecb09<75*._X:Z<W"
,
"Wsoplmijfgcd0a<856.+X#ZW"
,
"Wrqonlkihfecb09<75*._X:W"
,
"Warsoplmijfgcd0a<856.+XW"
,
"Wutrqonlkihfecb09<75*._W"
,
"Wxuarsoplmijfgcd0a<856.W"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 47 1"
,
" c None"
,
". c #A0A0A0"
,
"+ c #727272"
,
"X c #A4A4A4"
,
"# c #787878"
,
"Z c #7E7E7E"
,
"% c #A8A8A8"
,
"& c #848484"
,
"* c #ACACAC"
,
"= c #B0B0B0"
,
"- c #898989"
,
"; c #B4B4B4"
,
"> c #8F8F8F"
,
", c #959595"
,
"' c #B8B8B8"
,
") c #9B9B9B"
,
"! c #BCBCBC"
,
"~ c #C0C0C0"
,
"{ c #A1A1A1"
,
"] c #C3C3C3"
,
"^ c #A7A7A7"
,
"/ c #ADADAD"
,
"( c #C7C7C7"
,
"_ c #B3B3B3"
,
": c #CCCCCC"
,
"< c #CFCFCF"
,
"[ c #D3D3D3"
,
"} c #BEBEBE"
,
"| c #C4C4C4"
,
"1 c #D8D8D8"
,
"2 c #CACACA"
,
"3 c #DBDBDB"
,
"4 c #DFDFDF"
,
"5 c #D0D0D0"
,
"6 c #E3E3E3"
,
"7 c #D6D6D6"
,
"8 c #DCDCDC"
,
"9 c #E7E7E7"
,
"0 c #E2E2E2"
,
"a c #EBEBEB"
,
"b c #EFEFEF"
,
"c c #F3F3F3"
,
"d c #EDEDED"
,
"e c #F7F7F7"
,
"f c #F9F9F9"
,
"g c #FBFBFB"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"WX##XX##XX##XX##XX##XX#W"
,
"WZ%%ZZ%%ZZ%%ZZ%%ZZ%%ZZ%W"
,
"W&**&&**&&**&&**&&**&&*W"
,
"W=--==--==--==--==--==-W"
,
"W;>>;;>>;;>>;;>>;;>>;;>W"
,
"W,'',,'',,'',,'',,'',,'W"
,
"W)!!))!!))!!))!!))!!))!W"
,
"W~{{~~{{~~{{~~{{~~{{~~{W"
,
"W]^^]]^^]]^^]]^^]]^^]]^W"
,
"W/((//((//((//((//((//(W"
,
"W_::__::__::__::__::__:W"
,
"W<''<<''<<''<<''<<''<<'W"
,
"W[}}[[}}[[}}[[}}[[}}[[}W"
,
"W|11||11||11||11||11||1W"
,
"W2332233223322332233223W"
,
"W4554455445544554455445W"
,
"W6776677667766776677667W"
,
"W8998899889988998899889W"
,
"W0aa00aa00aa00aa00aa00aW"
,
"Wb99bb99bb99bb99bb99bb9W"
,
"WcddccddccddccddccddccdW"
,
"WceecceecceecceecceecceW"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 79 1"
,
" c None"
,
". c #A0A0A0"
,
"+ c #727272"
,
"X c #A2A2A2"
,
"# c #A4A4A4"
,
"Z c #7B7B7B"
,
"% c #7D7D7D"
,
"& c #A8A8A8"
,
"* c #A7A7A7"
,
"= c #797979"
,
"- c #A3A3A3"
,
"; c #A6A6A6"
,
"> c #808080"
,
", c #848484"
,
"' c #AEAEAE"
,
") c #AFAFAF"
,
"! c #898989"
,
"~ c #ACACAC"
,
"{ c #A9A9A9"
,
"] c #ADADAD"
,
"^ c #8B8B8B"
,
"/ c #8F8F8F"
,
"( c #B6B6B6"
,
"_ c #B7B7B7"
,
": c #959595"
,
"< c #949494"
,
"[ c #B4B4B4"
,
"} c #868686"
,
"| c #A5A5A5"
,
"1 c #ABABAB"
,
"2 c #909090"
,
"3 c #B8B8B8"
,
"4 c #BBBBBB"
,
"5 c #9E9E9E"
,
"6 c #C0C0C0"
,
"7 c #BFBFBF"
,
"8 c #9A9A9A"
,
"9 c #828282"
,
"0 c #B0B0B0"
,
"a c #939393"
,
"b c #C3C3C3"
,
"c c #C7C7C7"
,
"d c #8A8A8A"
,
"e c #BCBCBC"
,
"f c #C1C1C1"
,
"g c #AAAAAA"
,
"h c #CDCDCD"
,
"i c #CFCFCF"
,
"j c #CACACA"
,
"k c #BABABA"
,
"l c #D4D4D4"
,
"m c #D6D6D6"
,
"n c #C4C4C4"
,
"o c #D1D1D1"
,
"p c #D2D2D2"
,
"q c #D8D8D8"
,
"r c #CECECE"
,
"s c #DFDFDF"
,
"t c #DEDEDE"
,
"u c #CCCCCC"
,
"v c #B1B1B1"
,
"w c #757575"
,
"x c #DDDDDD"
,
"y c #DADADA"
,
"z c #E7E7E7"
,
"A c #E6E6E6"
,
"B c #E9E9E9"
,
"C c #EDEDED"
,
"D c #E4E4E4"
,
"E c #E2E2E2"
,
"F c #C5C5C5"
,
"G c #F4F4F4"
,
"H c #F3F3F3"
,
"I c #EEEEEE"
,
"J c #FFFFFF"
,
"K c #F7F7F7"
,
"L c #DCDCDC"
,
"M c #7E7E7E"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W.++..++X#Z%&*Z=X.++..+W"
,
"W+..++-;>,')!!'~>Z-.++.W"
,
"W+..+={]^/(_:<([^}{#++.W"
,
"W.++|1!2345.67583[!9|.+W"
,
"W.+=10a87b{~cc{|74ad1#+W"
,
"W+-{!aefg0hi3_hjg-e(!>-W"
,
"W+;]28fc[klmnblo[~f42};W"
,
"WX>^37g[pqjrstjnpug.3v>W"
,
"W#,/4b0kqxlyzAlhqo0|4[,W"
,
"WZ'(5{hljlBCzDBEj7hF5a'W"
,
"W%)_.~imryCGHICArbic.<)W"
,
"W&!:6c3nszzHJKzLsq3]63!W"
,
"W*!<7c_btADIKGDytm_~7_!W"
,
"WZ'(5{hljlBCzDBEj7hF5a'W"
,
"W=~[8|jonhEALyExnkjb8/~W"
,
"WX>^37g[pqjrstjnpug.3v>W"
,
"W.Z}[4-~uo7bqm7kuc-8[]ZW"
,
"W+-{!aefg0hi3_hjg-e(!>-W"
,
"W+.#9d(4.|Fc]~Fb.8(09=.W"
,
"W.++|1!2345.67583[!9|.+W"
,
"W.++.#>}v[a<3_a/v]>=..+W"
,
"W+..++-;>,')!!'~>Z-.++.W"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 46 1"
,
" c None"
,
". c #FFFFFF"
,
"+ c #FBFBFB"
,
"X c #F9F9F9"
,
"# c #F3F3F3"
,
"Z c #F7F7F7"
,
"% c #EDEDED"
,
"& c #EFEFEF"
,
"* c #E7E7E7"
,
"= c #EBEBEB"
,
"- c #E2E2E2"
,
"; c #DCDCDC"
,
"> c #D6D6D6"
,
", c #E3E3E3"
,
"' c #DFDFDF"
,
") c #D0D0D0"
,
"! c #DBDBDB"
,
"~ c #CACACA"
,
"{ c #C4C4C4"
,
"] c #D8D8D8"
,
"^ c #BEBEBE"
,
"/ c #D3D3D3"
,
"( c #CFCFCF"
,
"_ c #B8B8B8"
,
": c #CCCCCC"
,
"< c #B3B3B3"
,
"[ c #ADADAD"
,
"} c #C7C7C7"
,
"| c #A7A7A7"
,
"1 c #C3C3C3"
,
"2 c #C0C0C0"
,
"3 c #A1A1A1"
,
"4 c #BCBCBC"
,
"5 c #9B9B9B"
,
"6 c #959595"
,
"7 c #8F8F8F"
,
"8 c #B4B4B4"
,
"9 c #B0B0B0"
,
"0 c #898989"
,
"a c #ACACAC"
,
"b c #848484"
,
"c c #7E7E7E"
,
"d c #A8A8A8"
,
"e c #787878"
,
"f c #A4A4A4"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W+XX++XX++XX++XX++XX++XW"
,
"W#ZZ##ZZ##ZZ##ZZ##ZZ##ZW"
,
"W%##%%##%%##%%##%%##%%#W"
,
"W&**&&**&&**&&**&&**&&*W"
,
"W=--==--==--==--==--==-W"
,
"W;**;;**;;**;;**;;**;;*W"
,
"W>,,>>,,>>,,>>,,>>,,>>,W"
,
"W'))''))''))''))''))'')W"
,
"W!~~!!~~!!~~!!~~!!~~!!~W"
,
"W{]]{{]]{{]]{{]]{{]]{{]W"
,
"W^//^^//^^//^^//^^//^^/W"
,
"W(__((__((__((__((__((_W"
,
"W:<<::<<::<<::<<::<<::<W"
,
"W[}}[[}}[[}}[[}}[[}}[[}W"
,
"W|11||11||11||11||11||1W"
,
"W2332233223322332233223W"
,
"W4554455445544554455445W"
,
"W6__66__66__66__66__66_W"
,
"W7887788778877887788778W"
,
"W9009900990099009900990W"
,
"WabbaabbaabbaabbaabbaabW"
,
"WcddccddccddccddccddccdW"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 65 1"
,
" c None"
,
". c #CFCFCF"
,
"+ c #CDCDCD"
,
"X c #B3B3B3"
,
"# c #AFAFAF"
,
"Z c #C7C7C7"
,
"% c #C6C6C6"
,
"& c #A7A7A7"
,
"* c #A4A4A4"
,
"= c #C0C0C0"
,
"- c #BDBDBD"
,
"; c #9B9B9B"
,
"> c #989898"
,
", c #B8B8B8"
,
"' c #B6B6B6"
,
") c #8F8F8F"
,
"! c #8D8D8D"
,
"~ c #B0B0B0"
,
"{ c #AEAEAE"
,
"] c #848484"
,
"^ c #808080"
,
"/ c #A8A8A8"
,
"( c #A6A6A6"
,
"_ c #787878"
,
": c #757575"
,
"< c #D2D2D2"
,
"[ c #B5B5B5"
,
"} c #C9C9C9"
,
"| c #AAAAAA"
,
"1 c #C2C2C2"
,
"2 c #9E9E9E"
,
"3 c #BABABA"
,
"4 c #929292"
,
"5 c #B2B2B2"
,
"6 c #868686"
,
"7 c #7B7B7B"
,
"8 c #BEBEBE"
,
"9 c #BCBCBC"
,
"0 c #C1C1C1"
,
"a c #D8D8D8"
,
"b c #D5D5D5"
,
"c c #D9D9D9"
,
"d c #CACACA"
,
"e c #DFDFDF"
,
"f c #DDDDDD"
,
"g c #E1E1E1"
,
"h c #D6D6D6"
,
"i c #D3D3D3"
,
"j c #E7E7E7"
,
"k c #E5E5E5"
,
"l c #E9E9E9"
,
"m c #E2E2E2"
,
"n c #DEDEDE"
,
"o c #E4E4E4"
,
"p c #EFEFEF"
,
"q c #EDEDED"
,
"r c #F1F1F1"
,
"s c #EBEBEB"
,
"t c #F0F0F0"
,
"u c #F7F7F7"
,
"v c #F5F5F5"
,
"w c #F9F9F9"
,
"x c #F6F6F6"
,
"y c #FCFCFC"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W.[X}Z|&1=2;3,4)5~6]|/7W"
,
"W9.+X#Z%&*=-;>,')!~{]^/W"
,
"W8<.[X}Z|&1=2;3,4)5~6]|W"
,
"Wb89.+X#Z%&*=-;>,')!~{]W"
,
"Wa08<.[X}Z|&1=2;3,4)5~6W"
,
"WZab89.+X#Z%&*=-;>,')!~W"
,
"Wdca08<.[X}Z|&1=2;3,4)5W"
,
"WfdZab89.+X#Z%&*=-;>,')W"
,
"We+dca08<.[X}Z|&1=2;3,4W"
,
"WiefdZab89.+X#Z%&*=-;>,W"
,
"Whge+dca08<.[X}Z|&1=2;3W"
,
"WkhiefdZab89.+X#Z%&*=-;W"
,
"Wjchge+dca08<.[X}Z|&1=2W"
,
"WnjkhiefdZab89.+X#Z%&*=W"
,
"Wmljchge+dca08<.[X}Z|&1W"
,
"WqmnjkhiefdZab89.+X#Z%&W"
,
"Wpomljchge+dca08<.[X}Z|W"
,
"WspqmnjkhiefdZab89.+X#ZW"
,
"Wqrpomljchge+dca08<.[X}W"
,
"WvqspqmnjkhiefdZab89.+XW"
,
"Wutqrpomljchge+dca08<.[W"
,
"WxuvqspqmnjkhiefdZab89.W"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 46 1"
,
" c None"
,
". c #FFFFFF"
,
"+ c #FBFBFB"
,
"X c #F3F3F3"
,
"# c #EDEDED"
,
"Z c #EFEFEF"
,
"% c #EBEBEB"
,
"& c #DCDCDC"
,
"* c #D6D6D6"
,
"= c #DFDFDF"
,
"- c #DBDBDB"
,
"; c #C4C4C4"
,
"> c #BEBEBE"
,
", c #CFCFCF"
,
"' c #CCCCCC"
,
") c #ADADAD"
,
"! c #A7A7A7"
,
"~ c #C0C0C0"
,
"{ c #BCBCBC"
,
"] c #959595"
,
"^ c #8F8F8F"
,
"/ c #B0B0B0"
,
"( c #ACACAC"
,
"_ c #7E7E7E"
,
": c #787878"
,
"< c #F9F9F9"
,
"[ c #F7F7F7"
,
"} c #E7E7E7"
,
"| c #E2E2E2"
,
"1 c #E3E3E3"
,
"2 c #D0D0D0"
,
"3 c #CACACA"
,
"4 c #D8D8D8"
,
"5 c #D3D3D3"
,
"6 c #B8B8B8"
,
"7 c #B3B3B3"
,
"8 c #C7C7C7"
,
"9 c #C3C3C3"
,
"0 c #A1A1A1"
,
"a c #9B9B9B"
,
"b c #B4B4B4"
,
"c c #898989"
,
"d c #848484"
,
"e c #A8A8A8"
,
"f c #A4A4A4"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W<[X}|}1234567890a6bcdeW"
,
"W<[X}|}1234567890a6bcdeW"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W<[X}|}1234567890a6bcdeW"
,
"W<[X}|}1234567890a6bcdeW"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W<[X}|}1234567890a6bcdeW"
,
"W<[X}|}1234567890a6bcdeW"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W<[X}|}1234567890a6bcdeW"
,
"W<[X}|}1234567890a6bcdeW"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W<[X}|}1234567890a6bcdeW"
,
"W<[X}|}1234567890a6bcdeW"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W+X#Z%&*=-;>,')!~{]^/(_W"
,
"W<[X}|}1234567890a6bcdeW"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
],
[
"24 24 62 1"
,
" c None"
,
". c #FFFFFF"
,
"+ c #FDFDFD"
,
"X c #F9F9F9"
,
"# c #F6F6F6"
,
"Z c #F7F7F7"
,
"% c #F5F5F5"
,
"& c #EDEDED"
,
"* c #EBEBEB"
,
"= c #EFEFEF"
,
"- c #E2E2E2"
,
"; c #DEDEDE"
,
"> c #E7E7E7"
,
", c #E5E5E5"
,
"' c #D6D6D6"
,
") c #D3D3D3"
,
"! c #DFDFDF"
,
"~ c #DDDDDD"
,
"{ c #CACACA"
,
"] c #C7C7C7"
,
"^ c #D8D8D8"
,
"/ c #D5D5D5"
,
"( c #BEBEBE"
,
"_ c #BCBCBC"
,
": c #FBFBFB"
,
"< c #F3F3F3"
,
"[ c #DCDCDC"
,
"} c #E3E3E3"
,
"| c #D0D0D0"
,
"1 c #DBDBDB"
,
"2 c #C4C4C4"
,
"3 c #B8B8B8"
,
"4 c #CFCFCF"
,
"5 c #CDCDCD"
,
"6 c #CCCCCC"
,
"7 c #B3B3B3"
,
"8 c #AFAFAF"
,
"9 c #ADADAD"
,
"0 c #C6C6C6"
,
"a c #C3C3C3"
,
"b c #A7A7A7"
,
"c c #A4A4A4"
,
"d c #A1A1A1"
,
"e c #C0C0C0"
,
"f c #BDBDBD"
,
"g c #9B9B9B"
,
"h c #989898"
,
"i c #959595"
,
"j c #B6B6B6"
,
"k c #B4B4B4"
,
"l c #8F8F8F"
,
"m c #8D8D8D"
,
"n c #898989"
,
"o c #B0B0B0"
,
"p c #AEAEAE"
,
"q c #ACACAC"
,
"r c #848484"
,
"s c #808080"
,
"t c #7E7E7E"
,
"u c #A8A8A8"
,
"v c #A6A6A6"
,
"W c #000000"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
,
"W:#<%<*>&*;[,})|~1]2/)_W"
,
"W#Z%&*=&-;>,')!~{]^/(_4W"
,
"W<%<*>&*;[,})|~1]2/)_35W"
,
"W%&*=&-;>,')!~{]^/(_457W"
,
"W<*>&*;[,})|~1]2/)_3568W"
,
"W*=&-;>,')!~{]^/(_4578]W"
,
"W>&*;[,})|~1]2/)_356890W"
,
"W&-;>,')!~{]^/(_4578]0bW"
,
"W*;[,})|~1]2/)_356890acW"
,
"W;>,')!~{]^/(_4578]0bceW"
,
"W[,})|~1]2/)_356890acdfW"
,
"W,')!~{]^/(_4578]0bcefgW"
,
"W})|~1]2/)_356890acdf_hW"
,
"W)!~{]^/(_4578]0bcefgh3W"
,
"W|~1]2/)_356890acdf_hijW"
,
"W~{]^/(_4578]0bcefgh3jlW"
,
"W1]2/)_356890acdf_hijkmW"
,
"W]^/(_4578]0bcefgh3jlmoW"
,
"W2/)_356890acdf_hijkmnpW"
,
"W/(_4578]0bcefgh3jlmoprW"
,
"W)_356890acdf_hijkmnpqsW"
,
"W_4578]0bcefgh3jlmoprsuW"
,
"WWWWWWWWWWWWWWWWWWWWWWWW"
]);
sub
avg { (
$_
[0] +
$_
[1]) / 2 }
sub
do_fade {
my
(
$image
,
$drawable
) =
@_
;
$drawable
->become(
'Gimp::Layer'
);
$image
->undo_group_start;
my
@bounds
=
$image
->selection_bounds;
$drawable
->add_alpha
unless
$drawable
->has_alpha;
my
$mask
;
unless
(
$mask
=
$drawable
->get_mask) {
$mask
=
$drawable
->create_mask(ADD_MASK_ALPHA);
$drawable
->add_mask(
$mask
);
}
Gimp::Context->
push
;
Gimp::Context->set_background([0.0,0.0,0.0,1.0]);
Gimp::Context->set_foreground([1.0,1.0,1.0,1.0]);
my
@blend_args
= (
BLEND_FG_BG_RGB, LAYER_MODE_NORMAL_LEGACY,
(
$direction
== 4 ? GRADIENT_RADIAL : GRADIENT_LINEAR),
100.0,
0.0,
REPEAT_NONE,
0,
0,
1,
0.1,
0,
);
my
%dir2argfunc
= (
0
=>
sub
{
@_
[3, 4, 1, 2] },
1
=>
sub
{ (
$_
[3], avg(
@_
[2,4]),
$_
[1], avg(
@_
[2,4])) },
2
=>
sub
{
@_
[3, 2, 1, 4] },
3
=>
sub
{ (avg(
@_
[1,3]),
$_
[4], avg(
@_
[1,3]),
$_
[2]) },
4
=>
sub
{ (avg(
@_
[1,3]), avg(
@_
[2,4]), avg(
@_
[1,3]),
$_
[4]) },
5
=>
sub
{ (avg(
@_
[1,3]),
$_
[2], avg(
@_
[1,3]),
$_
[4]) },
6
=>
sub
{
@_
[1, 4, 3, 2] },
7
=>
sub
{ (
$_
[1], avg(
@_
[2,4]),
$_
[3], avg(
@_
[2,4])) },
8
=>
sub
{
@_
[1, 2, 3, 4] },
);
$mask
->edit_blend(
@blend_args
,
$dir2argfunc
{
$direction
}->(
@bounds
));
$drawable
->remove_mask(MASK_APPLY)
if
$direction
>=0 &&
$direction
<9;
Gimp::Context->
pop
;
$image
->undo_group_end;
}
sub
add_pixmap {
my
(
$window
,
$but
,
$num
) =
@_
;
my
(
$pixmap
,
$mask
) = Gtk2::Gdk::Pixmap->colormap_create_from_xpm_d(
undef
,
$but
->get_colormap,
$but
->style->bg(
'normal'
),
@{
$arr
[
$num
]});
my
(
$pixmapId
) = new_from_pixmap Gtk2::Image(
$pixmap
,
$mask
);
$pixmapId
->show;
$but
->add(
$pixmapId
);
}
sub
create_window {
my
$window
= new Gtk2::Window(
'toplevel'
);
$window
->set_name(
"Alpha Fader"
);
$window
->set_wmclass(
"Gimp"
,
"AlphaFader"
);
$window
->signal_connect(
"destroy"
=> \
&Gtk2::main_quit
);
$window
->signal_connect(
"delete_event"
=> \
&Gtk2::false
);
my
$box1
= new Gtk2::VBox(0, 0);
$box1
->set_spacing(2);
$window
->add(
$box1
);
my
$frm
= new Gtk2::Frame
"Fade Type"
;
$frm
->set_border_width(6);
$frm
->show;
$box1
->pack_start(
$frm
, 1, 1, 0);
my
$btnTable
= new Gtk2::Table(3,3,1);
$btnTable
->set_border_width(6);
$frm
->add(
$btnTable
);
my
$btn
= new Gtk2::RadioButton;
for
(
my
$i
=0;
$i
<3;
$i
++) {
for
(
my
$j
=0;
$j
<3;
$j
++) {
$btn
= Gtk2::RadioButton->new_from_widget(
$btn
);
$btn
->set_mode(0);
$btn
->signal_connect(
"clicked"
,
sub
{
$direction
=
$_
[1]; },
$i
*3+
$j
);
$btn
->show;
$btnTable
->attach_defaults(
$btn
,
$i
,
$i
+1,
$j
,
$j
+1);
add_pixmap(
$window
,
$btn
,
$i
*3+
$j
);
if
(Gimp->get_data(
$plugin
) ne
""
) {
$btn
->clicked
if
Gimp->get_data(
$plugin
) ==
$i
*3+
$j
;
}
else
{
$btn
->clicked
if
$i
==0 &&
$j
==0;
}
}
}
my
$hsep
= new Gtk2::HSeparator;
$box1
->pack_start(
$hsep
, 0, 0, 0);
$hsep
->show;
my
$hbox
= new Gtk2::HButtonBox;
$hbox
->set_border_width(2);
$hbox
->set_spacing(4);
$box1
->pack_start(
$hbox
, 0, 0, 0);
$hbox
->show;
$btn
= Gtk2::Button->new_from_stock(
'gtk-ok'
);
addbutton(
$btn
,
sub
{
$proceedFlag
= 1; Gtk2->main_quit; },
$hbox
);
$btn
->grab_default;
$btn
= Gtk2::Button->new_from_stock(
'gtk-cancel'
);
addbutton(
$btn
, \
&Gtk2::main_quit
,
$hbox
);
$btnTable
->show;
$box1
->show;
$window
->show;
}
sub
addbutton {
my
(
$btn
,
$click
,
$hbox
) =
@_
;
$btn
->can_default(1);
$btn
->signal_connect(
"clicked"
=>
$click
);
$btn
->show;
$hbox
->pack_start(
$btn
, 0, 0, 0);
}
Gimp::on_run {
(
my
(
$interactive
,
$img
,
$drw
),
$direction
) =
@_
;
$proceedFlag
= 1;
if
(
$interactive
== 2) {
$direction
= Gimp->get_data(
$plugin
);
}
elsif
(
$interactive
!= 1) {
$proceedFlag
= 0;
Gimp::gtk_init;
create_window;
Gtk2->main;
}
if
(
$proceedFlag
) {
do_fade(
$img
,
$drw
);
Gimp->displays_flush;
Gimp->set_data(
$plugin
,
$direction
);
}
();
};
Gimp::on_query {
Gimp->install_procedure(
$plugin
,
"Fade the alpha channel of a layer from one side to another"
,
<<EOF,
This was written as a slightly useful exercise, mostly to learn Gtk's
excellent perl interface. It was inspired by a mailing list question
that asked how to do exactly what this does, which is fade the alpha
from one side to another.
EOF
"Seth Burgess"
,
"Seth Burgess"
,
"2000"
,
"<Image>/Layer/Transparency/Fade..."
,
"*"
,
PLUGIN,
[
[PDB_INT32,
"run_mode"
,
"Interactive, [non-interactive"
],
[PDB_IMAGE,
"image"
,
"Input image (unused)"
],
[PDB_DRAWABLE,
"drawable"
,
"Input drawable"
],
[PDB_INT32,
"direction"
,
"Direction to fade(0-8)"
]
],
[]
);
};
exit
Gimp::main;