annotate libass/ass_bitmap.h @ 19974:b71fdb42f9dc

nit: Subversion revision numbers are referenced as r12345.
author diego
date Mon, 25 Sep 2006 16:56:26 +0000
parents 27187c1ac20b
children fa122b7c71c6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19846
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
1 #ifndef __ASS_BITMAP_H__
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
2 #define __ASS_BITMAP_H__
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
3
19848
07be98a5dd5f Add \be (blur edges) support to libass.
eugeni
parents: 19846
diff changeset
4 typedef struct ass_synth_priv_s ass_synth_priv_t;
07be98a5dd5f Add \be (blur edges) support to libass.
eugeni
parents: 19846
diff changeset
5
07be98a5dd5f Add \be (blur edges) support to libass.
eugeni
parents: 19846
diff changeset
6 ass_synth_priv_t* ass_synth_init();
07be98a5dd5f Add \be (blur edges) support to libass.
eugeni
parents: 19846
diff changeset
7 void ass_synth_done(ass_synth_priv_t* priv);
07be98a5dd5f Add \be (blur edges) support to libass.
eugeni
parents: 19846
diff changeset
8
19846
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
9 typedef struct bitmap_s {
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
10 int left, top;
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
11 int w, h; // width, height
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
12 unsigned char* buffer; // w x h buffer
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
13 } bitmap_t;
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
14
19966
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
15 /**
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
16 * \brief perform glyph rendering
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
17 * \param glyph original glyph
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
18 * \param outline_glyph "border" glyph, produced from original by FreeType's glyph stroker
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
19 * \param bm_g out: pointer to the bitmap of original glyph is returned here
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
20 * \param bm_o out: pointer to the bitmap of outline (border) glyph is returned here
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
21 * \param bm_g out: pointer to the bitmap of glyph shadow is returned here
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
22 * \param be 1 = produces blurred bitmaps, 0 = normal bitmaps
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
23 */
19965
70352570e9ae Shadow support in libass.
eugeni
parents: 19848
diff changeset
24 int glyph_to_bitmap(ass_synth_priv_t* priv, FT_Glyph glyph, FT_Glyph outline_glyph, bitmap_t** bm_g, bitmap_t** bm_o, bitmap_t** bm_s, int be);
19966
27187c1ac20b Cosmetics: add some comments.
eugeni
parents: 19965
diff changeset
25
19846
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
26 void ass_free_bitmap(bitmap_t* bm);
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
27
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
28 #endif
bcc792bfa431 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
eugeni
parents:
diff changeset
29