windows.uniscribe: support transparency in text color
parent
3d56183360
commit
4a7644e509
|
@ -85,11 +85,14 @@ CONSTANT: ssa-dwFlags flags{ SSA_GLYPHS SSA_FALLBACK SSA_TAB }
|
|||
! the entire image a rectangle of the given color with varying
|
||||
! transparency.
|
||||
:: color-to-alpha ( image color -- image' )
|
||||
color >rgba-components drop [ 255 * >integer ] tri@
|
||||
3byte-array uint32_t deref 24 bits :> rgb
|
||||
image bitmap>> uint32_t cast-array [
|
||||
0xff bitand 24 shift rgb bitor
|
||||
] map! drop image RGBA >>component-order ;
|
||||
color >rgba-components :> alpha
|
||||
[ 255 * >integer ] tri@ 3byte-array uint32_t deref 24 bits :> rgb
|
||||
image bitmap>> uint32_t cast-array
|
||||
alpha 1 <
|
||||
[ [ 0xff bitand alpha * >integer 24 shift rgb bitor ] map! ]
|
||||
[ [ 0xff bitand 24 shift rgb bitor ] map! ]
|
||||
if drop
|
||||
image RGBA >>component-order ;
|
||||
|
||||
:: render-image ( dc ssa script-string -- image )
|
||||
script-string size>> :> size
|
||||
|
|
Loading…
Reference in New Issue