29 #define NORMAL_X_HEIGHT (0.5) 30 #define NORMAL_BASELINE (0.0) 48 unsigned Padding : 20;
50 bool ExtremityMark :
true;
62 #define AverageOf(A, B) (((A) + (B)) / 2) 65 #define MF_SCALE_FACTOR (NORMAL_X_HEIGHT / kBlnXHeight) 68 #define DegenerateOutline(O) (((O) == NIL_LIST) || ((O) == list_rest(O))) 69 #define PointAt(O) ((MFEDGEPT*)first_node(O)) 70 #define NextPointAfter(E) (list_rest(E)) 71 #define MakeOutlineCircular(O) (set_rest(last(O), (O))) 74 #define ClearMark(P) ((P)->ExtremityMark = false) 75 #define MarkPoint(P) ((P)->ExtremityMark = true) LIST ConvertBlob(TBLOB *Blob)
void FreeOutlines(LIST Outlines)
void ComputeBlobCenter(TBLOB *Blob, TPOINT *BlobCenter)
void FindDirectionChanges(MFOUTLINE Outline, float MinSlope, float MaxSlope)
void MarkDirectionChanges(MFOUTLINE Outline)
void FilterEdgeNoise(MFOUTLINE Outline, float NoiseSegmentLength)
void FreeMFOutline(void *agr)
MFOUTLINE NextExtremity(MFOUTLINE EdgePoint)
MFOUTLINE ConvertOutline(TESSLINE *Outline)
void ChangeDirection(MFOUTLINE Start, MFOUTLINE End, DIRECTION Direction)
void ComputeDirection(MFEDGEPT *Start, MFEDGEPT *Finish, float MinSlope, float MaxSlope)
MFEDGEPT * NewEdgePoint()
void NormalizeOutline(MFOUTLINE Outline, float XOrigin)
LIST ConvertOutlines(TESSLINE *Outline, LIST ConvertedOutlines, OUTLINETYPE OutlineType)
MFOUTLINE NextDirectionChange(MFOUTLINE EdgePoint)
void CharNormalizeOutline(MFOUTLINE Outline, const DENORM &cn_denorm)