summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.c
Commit message (Collapse)AuthorAgeFilesLines
* With \t(\b) text becomes bold at the middle of time interval, not at the endeugeni2007-02-201-1/+2
| | | | | | | of it like before. The same for \t(\i). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22293 b3059339-0415-0410-9bf9-f77b7e298cf2
* Any style modifier followed by no recognizable parameter resets to the default.eugeni2007-02-201-7/+17
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22291 b3059339-0415-0410-9bf9-f77b7e298cf2
* \fn without an argument resets font family to the value from style.eugeni2007-02-201-3/+6
| | | | | | | Fixes bugzilla #762. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22287 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix display order of events.eugeni2007-02-201-4/+0
| | | | | | | Starting time does not matter, it depends on Layer and ReadOrder only. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22286 b3059339-0415-0410-9bf9-f77b7e298cf2
* Both (-1) and 1 mean bold font in SSA/ASS styles.eugeni2007-02-191-4/+4
| | | | | | | The same for italics and some other fields. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22281 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add \t(\b) support.eugeni2007-02-191-3/+4
| | | | | | | Contradicts the specification, but supported by all other renderers. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22280 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix bounding box calculation with \fscx/\fscy.eugeni2007-02-191-2/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22279 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix \fscx/\fscy animation.eugeni2007-02-191-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22278 b3059339-0415-0410-9bf9-f77b7e298cf2
* Correct implementation of text spacing.eugeni2007-02-191-7/+7
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22277 b3059339-0415-0410-9bf9-f77b7e298cf2
* Reallocate event_images_t, removing limit on simultanious events count.eugeni2007-02-191-23/+25
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22276 b3059339-0415-0410-9bf9-f77b7e298cf2
* Restore a minus sign that was lost in r22231.eugeni2007-02-161-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22239 b3059339-0415-0410-9bf9-f77b7e298cf2
* Implement \frx and \fry (and reimplement \frz) as 3d rotations.eugeni2007-02-161-22/+104
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22233 b3059339-0415-0410-9bf9-f77b7e298cf2
* Consistently name z-axis rotation angle "frz".eugeni2007-02-161-5/+5
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22232 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move conversions between 16.16, 26.6 fixed point and int, double to separateeugeni2007-02-161-17/+17
| | | | | | | functions. Some rounding errors are fixed along the way. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22231 b3059339-0415-0410-9bf9-f77b7e298cf2
* \r resets \frz to style value.eugeni2007-02-151-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22227 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix \t(\frz) handling.eugeni2007-02-151-4/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22226 b3059339-0415-0410-9bf9-f77b7e298cf2
* \org(0,0) is different from no \org at all.eugeni2007-02-151-1/+4
| | | | | | | Use render_context.have_origin to tell them apart. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22225 b3059339-0415-0410-9bf9-f77b7e298cf2
* Bugfix: glyph and bitmap pointers could be left uninitialized aftereugeni2007-01-291-4/+3
| | | | | | | | get_glyph(). Based on a patch by Stanislav Maslovski (stanislav d maslovski a gmail d com). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22063 b3059339-0415-0410-9bf9-f77b7e298cf2
* Keep reselected fonts in an array, adding new ones to the end. Glypheugeni2006-12-161-1/+1
| | | | | | | | | | | | lookup prefers earlier opened fonts. This way glyph lookup is stable, which means that: - cache cleanup is never required after font reselecting; - a single unrecognized char won't change the appearance of all the others. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21635 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove a mistakenly committed debug printf.eugeni2006-12-161-2/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21633 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move ascender, descender, and kerning computation to ass_font.c.eugeni2006-12-161-33/+9
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21630 b3059339-0415-0410-9bf9-f77b7e298cf2
* Speed up ASS subtitles display by detecting changes between two consecutiveeugeni2006-12-061-10/+84
| | | | | | | rendering results. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21522 b3059339-0415-0410-9bf9-f77b7e298cf2
* Open embedded fonts directly from memory.eugeni2006-12-031-2/+2
| | | | | | | | | FontConfig 2.4.2 (released yesterday) supports scanning fonts with FcFreeTypeQueryFace without writing them to disk. With earlier FontConfig versions, the old mechanism is used. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21476 b3059339-0415-0410-9bf9-f77b7e298cf2
* Keep embedded fonts in ass_library_t and perform actual disk writeeugeni2006-12-031-1/+1
| | | | | | | | in fontconfig initialization. This is required for some fontconfig-related improvements. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21474 b3059339-0415-0410-9bf9-f77b7e298cf2
* Use (ass_font_t, char code) instead of (FT_Face, glyph index) to identifyeugeni2006-11-281-4/+4
| | | | | | | glyphs in cache. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21364 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix compilation broken in previous commit.eugeni2006-11-271-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21338 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move ass_font_t allocation to ass_font.h.eugeni2006-11-271-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21333 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove obsolete "no_more_font_messages" hack.eugeni2006-11-261-2/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21295 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move fonts-related code to a separate file.eugeni2006-11-261-28/+9
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21293 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make ass_new_font return ass_font_t struct (instead of just FT_Face).eugeni2006-11-261-24/+20
| | | | | | | Use it to access the font face. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21283 b3059339-0415-0410-9bf9-f77b7e298cf2
* Rename:eugeni2006-11-261-4/+4
| | | | | | | | | face_desc_t -> ass_font_desc_t face_cache_item_t -> ass_font_t *face* -> *font* git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21281 b3059339-0415-0410-9bf9-f77b7e298cf2
* Cosmetics: remove unneeded curly brackets.eugeni2006-11-201-3/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21114 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix collision detection. The old method tried to avoid gaps between subtitleseugeni2006-11-201-21/+12
| | | | | | | | by moving the upper subtitle down. This is wrong. With this fix, a subtitle will be moved only if it overlaps with another one. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21113 b3059339-0415-0410-9bf9-f77b7e298cf2
* MSGTRs for libasskraymer2006-11-191-16/+16
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21082 b3059339-0415-0410-9bf9-f77b7e298cf2
* Collect all includes of mplayer headers in libass in a single file (mputils.h).eugeni2006-11-191-4/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21042 b3059339-0415-0410-9bf9-f77b7e298cf2
* Support \t with acceleration.eugeni2006-11-131-1/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20891 b3059339-0415-0410-9bf9-f77b7e298cf2
* s/break/continue/. A crazy mistake, somehow unnoticed for more that 2 months.eugeni2006-11-081-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20795 b3059339-0415-0410-9bf9-f77b7e298cf2
* Calculate text bounding box in a way that does not depend on actual glypheugeni2006-11-061-36/+15
| | | | | | | | bitmaps. Each glyph is considered to be bounded by (origin, origin + advance) horizontally, and (max font ascender, max font descender) vertically. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20734 b3059339-0415-0410-9bf9-f77b7e298cf2
* More precise bounding box calculation for karaoke effects.eugeni2006-11-041-2/+7
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20669 b3059339-0415-0410-9bf9-f77b7e298cf2
* Introduce MSGT_ASS, use it for all libass messages.eugeni2006-11-031-42/+42
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20645 b3059339-0415-0410-9bf9-f77b7e298cf2
* Revert r20517.eugeni2006-10-291-1/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20519 b3059339-0415-0410-9bf9-f77b7e298cf2
* Copy the following functions to libass to avoid dependency on the rest of ↵eugeni2006-10-291-3/+1
| | | | | | | | | | | | mplayer: guess_buffer_cp utf8_get_char blur git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20517 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix width -> orig_width typo.eugeni2006-10-291-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20513 b3059339-0415-0410-9bf9-f77b7e298cf2
* Libass interface reworked:eugeni2006-10-281-33/+33
| | | | | | | | | - ass_instance_t renamed to ass_renderer_t - ass_library_t introduced - use of mplayer-specific global variables limited to ass_mp.c git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20493 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add missing fontconfig_done() call.eugeni2006-10-271-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20467 b3059339-0415-0410-9bf9-f77b7e298cf2
* Split ass_configure() into several smaller functions.eugeni2006-10-261-44/+83
| | | | | | | FontConfig initialization moved from ass_init() to ass_set_fonts(). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20462 b3059339-0415-0410-9bf9-f77b7e298cf2
* Don't forget to apply scaling coefficients to kerning values.eugeni2006-10-201-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20326 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix center of rotation calculation. It was overly complex andeugeni2006-10-191-9/+3
| | | | | | | incorrect for right- and center-aligned text. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20308 b3059339-0415-0410-9bf9-f77b7e298cf2
* Center of rotation depends on alignment.eugeni2006-10-181-2/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20302 b3059339-0415-0410-9bf9-f77b7e298cf2
* Support separate rotation angle for each glyph.eugeni2006-10-181-10/+17
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20301 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move base point calculation to a separate function. Will be reused soon.eugeni2006-10-181-26/+41
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20300 b3059339-0415-0410-9bf9-f77b7e298cf2
* Cosmetics: remove commented code.eugeni2006-10-181-5/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20299 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix a typo in collision detection code.eugeni2006-10-181-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20297 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove an outdated debug message.eugeni2006-10-161-1/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20275 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix crash because of last_glyph < first_glyph, probably caused by first linereimar2006-10-151-1/+1
| | | | | | | only consisting of '\n' git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20232 b3059339-0415-0410-9bf9-f77b7e298cf2
* Zerofill libass static variables during initialization.eugeni2006-10-141-0/+4
| | | | | | | Patch by Jindrich Makovicka <makovick a gmail d com>. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20208 b3059339-0415-0410-9bf9-f77b7e298cf2
* Free FT_Stroker during libass deinitialization.eugeni2006-10-141-0/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20207 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add copyright notice and vim/emacs comments to libass and vf_ass.c.eugeni2006-10-011-0/+20
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20014 b3059339-0415-0410-9bf9-f77b7e298cf2
* Shadow support in libass.eugeni2006-09-241-4/+30
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19971 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix width -> orig_width typo causing subtitles to be too far to the rightreimar2006-09-221-1/+1
| | | | | | | for movies with vertical black bars (aspect < monitoraspect). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19946 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move calculation of text parameters (number of lines, height, etc.) fromeugeni2006-09-221-21/+36
| | | | | | | | | | wrap_lines_smart() into a separate function. Call it for every event, even those that do not require line wrapping. This fixes randomly wrong positioning of 'Banner' events. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19938 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move variable declaration to a more deeply nested block. It is not used ↵eugeni2006-09-221-1/+2
| | | | | | outside of it. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19937 b3059339-0415-0410-9bf9-f77b7e298cf2
* Cosmetics: fix indentation after last commit.eugeni2006-09-211-18/+18
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19925 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix FT_Stroker use in libass. The previous variant ended up with 0-widtheugeni2006-09-211-28/+18
| | | | | | | outline in some cases. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19924 b3059339-0415-0410-9bf9-f77b7e298cf2
* In r19831, font size multiplier was mistakenly applied to border width.eugeni2006-09-211-1/+3
| | | | | | | Fixed. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19923 b3059339-0415-0410-9bf9-f77b7e298cf2
* Sort events by ReadOrder (if both layer and start time are equal).eugeni2006-09-191-0/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19912 b3059339-0415-0410-9bf9-f77b7e298cf2
* Calculate text bounding box in such way that it does not depend on the heighteugeni2006-09-191-0/+2
| | | | | | | of individual glyphs. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19910 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix a stupid bug in list concatenation.eugeni2006-09-181-18/+9
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19897 b3059339-0415-0410-9bf9-f77b7e298cf2
* Reduce code duplication in init_render_context().eugeni2006-09-171-77/+84
| | | | | | | Don't use glyph stroker for borderless glyphs. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19879 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add \be (blur edges) support to libass.eugeni2006-09-161-3/+16
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19854 b3059339-0415-0410-9bf9-f77b7e298cf2
* Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.eugeni2006-09-161-60/+44
| | | | | | | This is required for various bitmap modifications (like blur, outline and shadow). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19852 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make font outline width proportional to movie resolution.eugeni2006-09-131-4/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19831 b3059339-0415-0410-9bf9-f77b7e298cf2
* Bugfix: timing for empty karaoke words was lost, resultingeugeni2006-09-061-5/+21
| | | | | | | in faster than normal karaoke playback. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19722 b3059339-0415-0410-9bf9-f77b7e298cf2
* Workaround for broken fonts with bad ascender/descender.eugeni2006-09-051-7/+11
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19699 b3059339-0415-0410-9bf9-f77b7e298cf2
* Change \fad behaviour so that it does not get cancelled by \r.eugeni2006-09-051-9/+10
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19698 b3059339-0415-0410-9bf9-f77b7e298cf2
*