| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The parsing code allowed override tags after \p0 to affect the drawing.
This is incorrect. Finish the drawing object as soon as \p0 is
encountered instead.
This requires moving the code executing the style overrides from
get_next_char() in ass_parse.c to the main render loop in
ass_renderer.c, because we have to re-enter the rendering loop
inside of a tag. The old code was simply executing all tags until
a new character could be returned to the renderer loop, mutating up
the state (RenderContext fields) for the drawing after the drawing
was closed, but before it was rendered.
This fixes libass issue #47.
|
|
|
|
|
| |
Make sure to update the border appropriately in the second pass, after
parsing.
|
|
|
|
|
|
| |
Split up the combined event parsing and layout loop into two passes.
State information needed for layout are duplicated in GlyphInfo
structures.
|
| |
|
|
|
|
|
| |
Move the function apply_transition_effects, which parses event-global
effects and adjusts a few state variables, into ass_parse.c.
|
| |
|
|
Move all code related to parsing event lines and processing override
tags into a separate file (ass_parse.c).
|