#include "aflatin.h"
#include "aflatin2.h"
#include "aferrors.h"
Go to the source code of this file.
#define AF_LATIN_MAX_TEST_CHARACTERS 12 |
Definition at line 156 of file aflatin2.c.
#define SORT_SEGMENTS |
Definition at line 657 of file aflatin2.c.
static void af_latin2_align_linked_edge | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim, | |||
AF_Edge | base_edge, | |||
AF_Edge | stem_edge | |||
) | [static] |
Definition at line 1740 of file aflatin2.c.
References af_latin2_compute_stem_width(), AF_LOG, AF_GlyphHintsRec_::axis, ROOT::Math::gv_detail::dist(), AF_AxisHintsRec_::edges, AF_EdgeRec_::flags, FT_Pos, AF_EdgeRec_::opos, and AF_EdgeRec_::pos.
Referenced by af_latin2_hint_edges().
static void af_latin2_align_serif_edge | ( | AF_GlyphHints | hints, | |
AF_Edge | base, | |||
AF_Edge | serif | |||
) | [static] |
Definition at line 1763 of file aflatin2.c.
References FT_UNUSED, AF_EdgeRec_::opos, and AF_EdgeRec_::pos.
static FT_Pos af_latin2_compute_stem_width | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim, | |||
FT_Pos | width, | |||
AF_Edge_Flags | base_flags, | |||
AF_Edge_Flags | stem_flags | |||
) | [static] |
Definition at line 1572 of file aflatin2.c.
References AF_DIMENSION_VERT, AF_EDGE_ROUND, AF_EDGE_SERIF, af_latin2_snap_width(), AF_LATIN_HINTS_DO_HORZ_SNAP, AF_LATIN_HINTS_DO_MONO, AF_LATIN_HINTS_DO_STEM_ADJUST, AF_LATIN_HINTS_DO_VERT_SNAP, axis, ROOT::Math::gv_detail::dist(), FT_Pos, FT_UNUSED, AF_GlyphHintsRec_::metrics, metrics(), and RootCsg::sign().
Referenced by af_latin2_align_linked_edge().
af_latin2_hint_edges | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim | |||
) |
Definition at line 1785 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIMENSION_VERT, AF_EDGE_DONE, AF_HINTS_DO_BLUES, af_latin2_align_linked_edge(), AF_LOG, axis, blue, AF_EdgeRec_::blue_edge, AF_EdgeRec_::flags, FT_Pos, if(), AF_EdgeRec_::link, NULL, AF_EdgeRec_::opos, and AF_EdgeRec_::pos.
Referenced by af_latin2_hints_apply().
static FT_Error af_latin2_hints_apply | ( | AF_GlyphHints | hints, | |
FT_Outline * | outline, | |||
AF_LatinMetrics | metrics | |||
) | [static] |
Definition at line 2244 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIMENSION_MAX, AF_DIMENSION_VERT, af_glyph_hints_align_edge_points(), af_glyph_hints_align_strong_points(), af_glyph_hints_align_weak_points(), af_glyph_hints_reload(), AF_HINTS_DO_HORIZONTAL, AF_HINTS_DO_VERTICAL, af_latin2_hint_edges(), af_latin2_hints_compute_blue_edges(), af_latin2_hints_detect_features(), af_warper_compute(), error, FT_Pos, FT_RENDER_MODE_LIGHT, and metrics().
af_latin2_hints_compute_blue_edges | ( | AF_GlyphHints | hints, | |
AF_LatinMetrics | metrics | |||
) |
Definition at line 1337 of file aflatin2.c.
References AF_DIMENSION_VERT, AF_EDGE_ROUND, AF_LATIN_BLUE_ACTIVE, AF_LATIN_BLUE_MAX, AF_LATIN_BLUE_TOP, axis, blue, AF_EdgeRec_::blue_edge, AF_LatinAxisRec_::blues, compare(), AF_EdgeRec_::dir, ROOT::Math::gv_detail::dist(), AF_EdgeRec_::flags, AF_EdgeRec_::fpos, FT_Bool, FT_BOOL, FT_MulFix(), FT_Pos, if(), NULL, and AF_LatinAxisRec_::scale.
Referenced by af_latin2_hints_apply().
af_latin2_hints_compute_edges | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim | |||
) |
Definition at line 1018 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIR_RIGHT, AF_DIR_UP, axis, ROOT::Math::gv_detail::dist(), AF_LatinAxisRec_::edge_distance_threshold, error, FT_DivFix(), FT_MulFix(), FT_Pos, AF_SegmentRec_::height, if(), NULL, AF_SegmentRec_::pos, AF_SegmentRec_::serif, AF_LatinAxisRec_::standard_width, and AF_LatinAxisRec_::width_count.
Referenced by af_latin2_hints_detect_features().
af_latin2_hints_compute_segments | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim | |||
) |
Definition at line 660 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_EDGE_NORMAL, axis, error, AF_SegmentRec_::flags, FT_ABS, FT_ZERO, if(), NULL, AF_SegmentRec_::score, and start.
Referenced by af_latin2_hints_detect_features(), and af_latin2_metrics_init_widths().
af_latin2_hints_detect_features | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim | |||
) |
Definition at line 1319 of file aflatin2.c.
References af_latin2_hints_compute_edges(), af_latin2_hints_compute_segments(), af_latin2_hints_link_segments(), and error.
Referenced by af_latin2_hints_apply().
static FT_Error af_latin2_hints_init | ( | AF_GlyphHints | hints, | |
AF_LatinMetrics | metrics | |||
) | [static] |
Definition at line 1443 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIMENSION_VERT, af_glyph_hints_rescale(), AF_LATIN_HINTS_HORZ_SNAP, AF_LATIN_HINTS_MONO, AF_LATIN_HINTS_STEM_ADJUST, AF_LATIN_HINTS_VERT_SNAP, AF_SCALER_FLAG_NO_HORIZONTAL, FT_RENDER_MODE_LCD, FT_RENDER_MODE_LCD_V, FT_RENDER_MODE_LIGHT, FT_RENDER_MODE_MONO, FT_RENDER_MODE_NORMAL, FT_STYLE_FLAG_ITALIC, metrics(), AF_GlyphHintsRec_::other_flags, AF_GlyphHintsRec_::scaler_flags, AF_GlyphHintsRec_::x_delta, AF_GlyphHintsRec_::x_scale, AF_GlyphHintsRec_::y_delta, and AF_GlyphHintsRec_::y_scale.
af_latin2_hints_link_segments | ( | AF_GlyphHints | hints, | |
AF_Dimension | dim | |||
) |
Definition at line 918 of file aflatin2.c.
References AF_LATIN_CONSTANT, axis, AF_SegmentRec_::dir, ROOT::Math::gv_detail::dist(), AF_SegmentRec_::first, for(), FT_Pos, if(), AF_SegmentRec_::last, len, AF_SegmentRec_::link, max, AF_SegmentRec_::max_coord, min, AF_SegmentRec_::min_coord, AF_SegmentRec_::pos, and AF_SegmentRec_::score.
Referenced by af_latin2_hints_detect_features(), and af_latin2_metrics_init_widths().
af_latin2_metrics_check_digits | ( | AF_LatinMetrics | metrics, | |
FT_Face | face | |||
) |
Definition at line 407 of file aflatin2.c.
References FT_Bool, FT_Get_Advance(), FT_Get_Char_Index(), FT_LOAD_IGNORE_TRANSFORM, FT_LOAD_NO_HINTING, FT_LOAD_NO_SCALE, and i.
Referenced by af_latin2_metrics_init().
af_latin2_metrics_init | ( | AF_LatinMetrics | metrics, | |
FT_Face | face | |||
) |
Definition at line 453 of file aflatin2.c.
References af_latin2_metrics_check_digits(), af_latin2_metrics_init_blues(), af_latin2_metrics_init_widths(), error, FT_ENCODING_ADOBE_LATIN_1, FT_ENCODING_ADOBE_STANDARD, FT_ENCODING_NONE, FT_ENCODING_UNICODE, FT_Select_Charmap(), and FT_Set_Charmap().
static void af_latin2_metrics_init_blues | ( | AF_LatinMetrics | metrics, | |
FT_Face | face | |||
) | [static] |
Definition at line 171 of file aflatin2.c.
References AF_DIMENSION_VERT, af_latin2_blue_chars, AF_LATIN_BLUE_ADJUSTMENT, AF_LATIN_BLUE_MAX, AF_LATIN_BLUE_SMALL_TOP, AF_LATIN_BLUE_TOP, AF_LATIN_IS_TOP_BLUE, AF_LATIN_MAX_TEST_CHARACTERS, AF_LOG, af_sort_pos(), axis, blue, FT_Outline_::contours, ROOT::Math::gv_detail::dist(), error, FT_Bool, FT_BOOL, FT_CURVE_TAG, FT_CURVE_TAG_ON, FT_Get_Char_Index(), FT_Load_Glyph(), FT_LOAD_NO_SCALE, FT_Pos, metrics(), FT_Outline_::n_contours, FT_Outline_::n_points, FT_GlyphSlotRec_::outline, p, FT_Outline_::points, points, start, FT_Outline_::tags, POINT::y, and y.
Referenced by af_latin2_metrics_init().
af_latin2_metrics_init_widths | ( | AF_LatinMetrics | metrics, | |
FT_Face | face, | |||
FT_ULong | charcode | |||
) |
Definition at line 47 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIMENSION_MAX, AF_DIMENSION_VERT, af_glyph_hints_init(), af_glyph_hints_reload(), af_glyph_hints_rescale(), af_latin2_hints_compute_segments(), af_latin2_hints_link_segments(), AF_LATIN_CONSTANT, AF_LATIN_MAX_WIDTHS, af_sort_widths(), axis, AF_GlyphHintsRec_::axis, ROOT::Math::gv_detail::dist(), dummy, error, AF_ScalerRec_::face, AF_ScalerRec_::flags, FT_Get_Char_Index(), FT_Load_Glyph(), FT_LOAD_NO_SCALE, FT_Pos, FT_RENDER_MODE_NORMAL, FT_ZERO, if(), RooFitShortHand::L(), AF_GlyphHintsRec_::memory, AF_ScalerRec_::render_mode, AF_ScalerRec_::x_delta, AF_ScalerRec_::x_scale, AF_ScalerRec_::y_delta, and AF_ScalerRec_::y_scale.
Referenced by af_latin2_metrics_init().
af_latin2_metrics_scale | ( | AF_LatinMetrics | metrics, | |
AF_Scaler | scaler | |||
) |
Definition at line 638 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIMENSION_VERT, and af_latin2_metrics_scale_dim().
static void af_latin2_metrics_scale_dim | ( | AF_LatinMetrics | metrics, | |
AF_Scaler | scaler, | |||
AF_Dimension | dim | |||
) | [static] |
Definition at line 494 of file aflatin2.c.
References AF_DIMENSION_HORZ, AF_DIMENSION_VERT, AF_LATIN_BLUE_ADJUSTMENT, AF_LOG, axis, blue, AF_LatinAxisRec_::blue_count, AF_LatinAxisRec_::blues, AF_LatinBlueRec_::flags, FT_MulDiv(), FT_MulFix(), FT_Pos, if(), metrics(), NULL, AF_ScalerRec_::x_delta, AF_ScalerRec_::x_scale, AF_ScalerRec_::y_delta, and AF_ScalerRec_::y_scale.
Referenced by af_latin2_metrics_scale().
Definition at line 1525 of file aflatin2.c.
References AF_WidthRec_::cur, ROOT::Math::gv_detail::dist(), FT_PIX_ROUND, FT_Pos, n, and w.
Referenced by af_latin2_compute_stem_width().
const char af_latin2_blue_chars[AF_LATIN_MAX_BLUES][AF_LATIN_MAX_TEST_CHARACTERS+1] [static] |
Initial value:
{ "THEZOCQS", "HEZLOCUS", "fijkdbh", "xzroesc", "xzroesc", "pqgjy" }
Definition at line 159 of file aflatin2.c.
Referenced by af_latin2_metrics_init_blues().
const AF_Script_UniRangeRec af_latin2_uniranges[] [static] |
Initial value:
{ AF_UNIRANGE_REC( 32UL, 127UL ), AF_UNIRANGE_REC( 160UL, 255UL ), }
Definition at line 2321 of file aflatin2.c.