Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function ng_bighalo(
- \ clip clp,
- \ string text,
- \ float "x",
- \ float "y",
- \ int "first_frame",
- \ int "last_frame",
- \ string "font",
- \ float "size",
- \ int "text_color",
- \ int "halo_color",
- \ int "align",
- \ int "spc",
- \ int "lsp",
- \ float "font_width",
- \ float "font_angle",
- \ int "halo_radius",
- \ string "memo"
- \){
- #Version 7
- x = default( x, -1)
- first_frame = default(first_frame, 0)
- last_frame = default( last_frame, first_frame + 299)
- font = default( font, "Ariel")
- size = default( size, 18)
- y = default( y, size)
- text_color = default( text_color, $20FFFFFF)
- halo_color = default( halo_color, $20000000)
- align = default( align, 5)
- spc = default( spc, 0)
- lsp = default( lsp, 1)
- font_width = default( font_width, 0)
- font_angle = default( font_angle, 0)
- halo_radius = default(halo_radius, 8)
- invis=BlankClip(clp, length=1, pixel_type="YV12")
- text_mask=Subtitle(invis, text, x, y, 0, 0, font, size, $00FFFFFF,
- \ $80808080, align, spc, lsp, font_width, font_angle)
- halo_mask=mt_logic(text_mask,
- \ text_mask.mt_expand(mode=mt_circle(halo_radius)),
- \ mode="xor")
- hc=BlankClip(clp, length=1, color=halo_color)
- tc=Subtitle(hc, text, x, y, 0, 0, font, size, text_color,
- \ $FF000000, align, spc, lsp, font_width, font_angle)
- h_alpha=(halo_color >= 0) ? 255 - halo_color/$01000000
- \ : -(halo_color+1)/$01000000
- t_alpha=(text_color >= 0) ? 255 - text_color/$01000000
- \ : -(text_color+1)/$01000000
- lut_str=string(h_alpha)+" x * 255 / "+string(t_alpha)+" y * 255 / max"
- mm3=tc.Mask(mt_lutxy(halo_mask, text_mask, lut_str).ConvertToRGB32())
- mm4=Defined(memo) ? (
- \ Exist(memo+"0.bmp") ? ImageSource(memo+"0.bmp")
- \ : mm3.ImageWriter(memo+"%d.bmp")
- \ ) : mm3
- clp.ApplyRange(first_frame, last_frame, "Layer", mm4)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement