From 305463c29a402298911f812b222f54a9f9457920 Mon Sep 17 00:00:00 2001 From: "Dr.Smile" Date: Mon, 31 Jul 2017 05:33:00 +0300 Subject: stroker: implement fast two-outline stroker --- libass/ass_outline.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'libass/ass_outline.h') diff --git a/libass/ass_outline.h b/libass/ass_outline.h index a03f082..86c6b3e 100644 --- a/libass/ass_outline.h +++ b/libass/ass_outline.h @@ -35,15 +35,20 @@ typedef struct ass_outline { #define EFFICIENT_CONTOUR_COUNT 8 bool outline_alloc(ASS_Outline *outline, size_t n_points, size_t n_contours); +ASS_Outline *outline_create(size_t n_points, size_t n_contours); ASS_Outline *outline_convert(const FT_Outline *source); ASS_Outline *outline_copy(const ASS_Outline *source); void outline_free(ASS_Outline *outline); +bool outline_add_point(ASS_Outline *outline, FT_Vector pt, char tag); +bool outline_close_contour(ASS_Outline *outline); + void outline_translate(const ASS_Outline *outline, FT_Pos dx, FT_Pos dy); void outline_transform(const ASS_Outline *outline, const FT_Matrix *matrix); void outline_get_cbox(const ASS_Outline *outline, FT_BBox *cbox); -void fix_freetype_stroker(ASS_Outline *outline, int border_x, int border_y); +bool outline_stroke(ASS_Outline *result, ASS_Outline *result1, + const ASS_Outline *path, int xbord, int ybord, int eps); #endif /* LIBASS_OUTLINE_H */ -- cgit v1.2.3