1 #ifndef FONTFORGE_SCSTYLES_H 2 #define FONTFORGE_SCSTYLES_H 3 4 #include "baseviews.h" 5 #include "splinefont.h" 6 7 // TODO: move structsmallcaps here from baseviews.h 8 9 struct xheightinfo { 10 double xheight_current, xheight_desired; 11 double serif_height; 12 }; 13 14 extern double SFSerifHeight(SplineFont *sf); 15 extern double SFStdVW(SplineFont *sf); 16 extern SplineSet *SSControlStems(SplineSet *ss, double stemwidthscale, double stemheightscale, double hscale, double vscale, double xheight); 17 extern void ChangeXHeight(FontViewBase *fv, CharViewBase *cv, struct xheightinfo *xi); 18 extern void CI_Init(struct counterinfo *ci, SplineFont *sf); 19 extern void CVEmbolden(CharViewBase *cv, enum embolden_type type, struct lcg_zones *zones); 20 extern void ChangeGlyph(SplineChar *sc_sc, SplineChar *orig_sc, int layer, 21 struct genericchange *genchange); 22 extern void CVGenericChange(CharViewBase *cv, struct genericchange *genchange); 23 extern void FVAddSmallCaps(FontViewBase *fv, struct genericchange *genchange); 24 extern void FVCondenseExtend(FontViewBase *fv, struct counterinfo *ci); 25 extern void FVEmbolden(FontViewBase *fv, enum embolden_type type, struct lcg_zones *zones); 26 extern void FVGenericChange(FontViewBase *fv, struct genericchange *genchange); 27 extern void InitXHeightInfo(SplineFont *sf, int layer, struct xheightinfo *xi); 28 extern void MakeItalic(FontViewBase *fv, CharViewBase *cv, ItalicInfo *ii); 29 extern void SCCondenseExtend(struct counterinfo *ci, SplineChar *sc, int layer, int do_undoes); 30 extern void ScriptSCCondenseExtend(SplineChar *sc, struct counterinfo *ci); 31 extern void ScriptSCEmbolden(SplineChar *sc, int layer, enum embolden_type type, struct lcg_zones *zones); 32 extern void SmallCapsFindConstants(struct smallcaps *small, SplineFont *sf, int layer); 33 34 #endif /* FONTFORGE_SCSTYLES_H */ 35