blob: 7afa24ca8bbee0465fb8daf15408b29143659578 [file] [log] [blame]
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
#ifndef __gnu_java_awt_font_autofit_Latin__
#define __gnu_java_awt_font_autofit_Latin__
#pragma interface
#include <java/lang/Object.h>
#include <gcj/array.h>
extern "Java"
{
namespace gnu
{
namespace java
{
namespace awt
{
namespace font
{
namespace autofit
{
class Edge;
class GlyphHints;
class HintScaler;
class Latin;
class LatinMetrics;
class ScriptMetrics;
class Width;
}
namespace opentype
{
class OpenTypeFont;
namespace truetype
{
class Zone;
}
}
}
}
}
}
namespace java
{
namespace awt
{
namespace geom
{
class AffineTransform;
}
}
}
}
class gnu::java::awt::font::autofit::Latin : public ::java::lang::Object
{
public: // actually package-private
Latin();
public:
virtual void applyHints(::gnu::java::awt::font::autofit::GlyphHints *, ::gnu::java::awt::font::opentype::truetype::Zone *, ::gnu::java::awt::font::autofit::ScriptMetrics *);
private:
void hintEdges(::gnu::java::awt::font::autofit::GlyphHints *, jint);
void alignSerifEdge(::gnu::java::awt::font::autofit::GlyphHints *, ::gnu::java::awt::font::autofit::Edge *, ::gnu::java::awt::font::autofit::Edge *);
jint computeStemWidth(::gnu::java::awt::font::autofit::GlyphHints *, jint, jint, jint, jint);
jboolean doMono(::gnu::java::awt::font::autofit::GlyphHints *);
jint snapWidth(JArray< ::gnu::java::awt::font::autofit::Width * > *, jint, jint);
jint doneWidth(jint, jint);
jboolean doVertSnap(::gnu::java::awt::font::autofit::GlyphHints *);
jboolean doHorzSnap(::gnu::java::awt::font::autofit::GlyphHints *);
jboolean doStemAdjust(::gnu::java::awt::font::autofit::GlyphHints *);
void alignLinkedEdge(::gnu::java::awt::font::autofit::GlyphHints *, jint, ::gnu::java::awt::font::autofit::Edge *, ::gnu::java::awt::font::autofit::Edge *);
public:
virtual void doneMetrics(::gnu::java::awt::font::autofit::ScriptMetrics *);
virtual void initHints(::gnu::java::awt::font::autofit::GlyphHints *, ::gnu::java::awt::font::autofit::ScriptMetrics *);
virtual void initMetrics(::gnu::java::awt::font::autofit::ScriptMetrics *, ::gnu::java::awt::font::opentype::OpenTypeFont *);
virtual void scaleMetrics(::gnu::java::awt::font::autofit::ScriptMetrics *, ::gnu::java::awt::font::autofit::HintScaler *);
private:
void scaleMetricsDim(::gnu::java::awt::font::autofit::LatinMetrics *, ::gnu::java::awt::font::autofit::HintScaler *, jint);
void initWidths(::gnu::java::awt::font::autofit::LatinMetrics *, ::gnu::java::awt::font::opentype::OpenTypeFont *, jchar);
public: // actually package-private
virtual void linkSegments(::gnu::java::awt::font::autofit::GlyphHints *, jint);
private:
void initBlues(::gnu::java::awt::font::autofit::LatinMetrics *, ::gnu::java::awt::font::opentype::OpenTypeFont *);
jint constant(::gnu::java::awt::font::autofit::LatinMetrics *, jint);
void computeSegments(::gnu::java::awt::font::autofit::GlyphHints *, jint);
jboolean isTopBlue(jint);
void detectFeatures(::gnu::java::awt::font::autofit::GlyphHints *, jint);
void computeEdges(::gnu::java::awt::font::autofit::GlyphHints *, jint);
void computeBlueEdges(::gnu::java::awt::font::autofit::GlyphHints *, ::gnu::java::awt::font::autofit::LatinMetrics *);
public: // actually package-private
static const jint MAX_WIDTHS = 16;
private:
static const jint MAX_TEST_CHARS = 12;
static const jint CAPITAL_TOP = 0;
static const jint CAPITAL_BOTTOM = 1;
static const jint SMALL_F_TOP = 2;
static const jint SMALL_TOP = 3;
static const jint SMALL_BOTTOM = 4;
static const jint SMALL_MINOR = 5;
public: // actually package-private
static const jint BLUE_MAX = 6;
private:
static JArray< ::java::lang::String * > * TEST_CHARS;
static ::java::awt::geom::AffineTransform * IDENTITY;
public: // actually package-private
static jboolean $assertionsDisabled;
public:
static ::java::lang::Class class$;
};
#endif // __gnu_java_awt_font_autofit_Latin__