    FOREIGN MODULE java_awt_font;

    IMPORT
        java_awt_geom,
        java_lang,
        java_awt,
        java_text,
        java_util,
        java_io,
        sun_awt_font;

    TYPE

      FontRenderContext* = POINTER TO EXTENSIBLE RECORD (java_lang.Object)
                           STATIC
                             PROCEDURE Init!() : FontRenderContext,CONSTRUCTOR;
                             PROCEDURE Init*(p0 : java_awt_geom.AffineTransform;
                                             p1 : BOOLEAN;
                                             p2 : BOOLEAN) : FontRenderContext,CONSTRUCTOR;
                           END;

      GlyphJustificationInfo* = POINTER TO RECORD (java_lang.Object)
                                  weight* : SHORTREAL;
                                  growPriority* : INTEGER;
                                  growAbsorb* : BOOLEAN;
                                  growLeftLimit* : SHORTREAL;
                                  growRightLimit* : SHORTREAL;
                                  shrinkPriority* : INTEGER;
                                  shrinkAbsorb* : BOOLEAN;
                                  shrinkLeftLimit* : SHORTREAL;
                                  shrinkRightLimit* : SHORTREAL;
                                STATIC
                                  PRIORITY_KASHIDA* = 0;
                                  PRIORITY_WHITESPACE* = 1;
                                  PRIORITY_INTERCHAR* = 2;
                                  PRIORITY_NONE* = 3;
                                  PROCEDURE Init*(p0 : SHORTREAL;
                                                  p1 : BOOLEAN;
                                                  p2 : INTEGER;
                                                  p3 : SHORTREAL;
                                                  p4 : SHORTREAL;
                                                  p5 : BOOLEAN;
                                                  p6 : INTEGER;
                                                  p7 : SHORTREAL;
                                                  p8 : SHORTREAL) : GlyphJustificationInfo,CONSTRUCTOR;
                                END;

      GlyphMetrics* = POINTER TO RECORD (java_lang.Object)
                      STATIC
                        STANDARD* = 0;
                        LIGATURE* = 1;
                        COMBINING* = 2;
                        COMPONENT* = 3;
                        WHITESPACE* = 4;
                        PROCEDURE Init*(p0 : SHORTREAL;
                                        p1 : java_awt_geom.Rectangle2D;
                                        p2 : BYTE) : GlyphMetrics,CONSTRUCTOR;
                      END;

      GlyphVector* = POINTER TO ABSTRACT RECORD (java_lang.Object + java_lang.Cloneable)
                     STATIC
                       PROCEDURE Init*() : GlyphVector,CONSTRUCTOR;
                     END;

      GraphicAttribute* = POINTER TO ABSTRACT RECORD (java_lang.Object)
                          STATIC
                            TOP_ALIGNMENT* = -1;
                            BOTTOM_ALIGNMENT* = -2;
                            ROMAN_BASELINE* = 0;
                            CENTER_BASELINE* = 1;
                            HANGING_BASELINE* = 2;
                            PROCEDURE Init!(p0 : INTEGER) : GraphicAttribute,CONSTRUCTOR;
                          END;

      ImageGraphicAttribute* = POINTER TO RECORD (GraphicAttribute)
                               STATIC
                                 PROCEDURE Init*(p0 : java_awt.Image;
                                                 p1 : INTEGER) : ImageGraphicAttribute,CONSTRUCTOR;
                                 PROCEDURE Init*(p0 : java_awt.Image;
                                                 p1 : INTEGER;
                                                 p2 : SHORTREAL;
                                                 p3 : SHORTREAL) : ImageGraphicAttribute,CONSTRUCTOR;
                               END;

      LineBreakMeasurer* = POINTER TO RECORD (java_lang.Object)
                           STATIC
                             PROCEDURE Init*(p0 : java_text.AttributedCharacterIterator;
                                             p1 : FontRenderContext) : LineBreakMeasurer,CONSTRUCTOR;
                             PROCEDURE Init*(p0 : java_text.AttributedCharacterIterator;
                                             p1 : java_text.BreakIterator;
                                             p2 : FontRenderContext) : LineBreakMeasurer,CONSTRUCTOR;
                           END;

      LineMetrics* = POINTER TO ABSTRACT RECORD (java_lang.Object)
                     STATIC
                       PROCEDURE Init*() : LineMetrics,CONSTRUCTOR;
                     END;

      MultipleMaster* = POINTER TO INTERFACE RECORD (java_lang.Object)
                        END;

      OpenType* = POINTER TO INTERFACE RECORD (java_lang.Object)
                  STATIC
                    TAG_CMAP* = 1668112752;
                    TAG_HEAD* = 1751474532;
                    TAG_NAME* = 1851878757;
                    TAG_GLYF* = 1735162214;
                    TAG_MAXP* = 1835104368;
                    TAG_PREP* = 1886545264;
                    TAG_HMTX* = 1752003704;
                    TAG_KERN* = 1801810542;
                    TAG_HDMX* = 1751412088;
                    TAG_LOCA* = 1819239265;
                    TAG_POST* = 1886352244;
                    TAG_OS2* = 1330851634;
                    TAG_CVT* = 1668707360;
                    TAG_GASP* = 1734439792;
                    TAG_VDMX* = 1447316824;
                    TAG_VMTX* = 1986884728;
                    TAG_VHEA* = 1986553185;
                    TAG_HHEA* = 1751672161;
                    TAG_TYP1* = 1954115633;
                    TAG_BSLN* = 1651731566;
                    TAG_GSUB* = 1196643650;
                    TAG_DSIG* = 1146308935;
                    TAG_FPGM* = 1718642541;
                    TAG_FVAR* = 1719034226;
                    TAG_GVAR* = 1735811442;
                    TAG_CFF* = 1128678944;
                    TAG_MMSD* = 1296913220;
                    TAG_MMFX* = 1296909912;
                    TAG_BASE* = 1111577413;
                    TAG_GDEF* = 1195656518;
                    TAG_GPOS* = 1196445523;
                    TAG_JSTF* = 1246975046;
                    TAG_EBDT* = 1161970772;
                    TAG_EBLC* = 1161972803;
                    TAG_EBSC* = 1161974595;
                    TAG_LTSH* = 1280594760;
                    TAG_PCLT* = 1346587732;
                    TAG_ACNT* = 1633906292;
                    TAG_AVAR* = 1635148146;
                    TAG_BDAT* = 1650745716;
                    TAG_BLOC* = 1651273571;
                    TAG_CVAR* = 1668702578;
                    TAG_FEAT* = 1717920116;
                    TAG_FDSC* = 1717859171;
                    TAG_FMTX* = 1718449272;
                    TAG_JUST* = 1786082164;
                    TAG_LCAR* = 1818452338;
                    TAG_MORT* = 1836020340;
                    TAG_OPBD* = 1836020340;
                    TAG_PROP* = 1886547824;
                    TAG_TRAK* = 1953653099;
                  END;

      ShapeGraphicAttribute* = POINTER TO RECORD (GraphicAttribute)
                               STATIC
                                 STROKE* = 1;
                                 FILL* = 0;
                                 PROCEDURE Init*(p0 : java_awt.Shape;
                                                 p1 : INTEGER;
                                                 p2 : BOOLEAN) : ShapeGraphicAttribute,CONSTRUCTOR;
                               END;

      TextAttribute* = POINTER TO RECORD (java_text.AttributedCharacterIterator$Attribute)
                       STATIC
                         FAMILY* : TextAttribute;
                         WEIGHT* : TextAttribute;
                         WEIGHT_EXTRA_LIGHT* : java_lang.Float;
                         WEIGHT_LIGHT* : java_lang.Float;
                         WEIGHT_DEMILIGHT* : java_lang.Float;
                         WEIGHT_REGULAR* : java_lang.Float;
                         WEIGHT_SEMIBOLD* : java_lang.Float;
                         WEIGHT_MEDIUM* : java_lang.Float;
                         WEIGHT_DEMIBOLD* : java_lang.Float;
                         WEIGHT_BOLD* : java_lang.Float;
                         WEIGHT_HEAVY* : java_lang.Float;
                         WEIGHT_EXTRABOLD* : java_lang.Float;
                         WEIGHT_ULTRABOLD* : java_lang.Float;
                         WIDTH* : TextAttribute;
                         WIDTH_CONDENSED* : java_lang.Float;
                         WIDTH_SEMI_CONDENSED* : java_lang.Float;
                         WIDTH_REGULAR* : java_lang.Float;
                         WIDTH_SEMI_EXTENDED* : java_lang.Float;
                         WIDTH_EXTENDED* : java_lang.Float;
                         POSTURE* : TextAttribute;
                         POSTURE_REGULAR* : java_lang.Float;
                         POSTURE_OBLIQUE* : java_lang.Float;
                         SIZE* : TextAttribute;
                         TRANSFORM* : TextAttribute;
                         SUPERSCRIPT* : TextAttribute;
                         SUPERSCRIPT_SUPER* : java_lang.Integer;
                         SUPERSCRIPT_SUB* : java_lang.Integer;
                         FONT* : TextAttribute;
                         CHAR_REPLACEMENT* : TextAttribute;
                         FOREGROUND* : TextAttribute;
                         BACKGROUND* : TextAttribute;
                         UNDERLINE* : TextAttribute;
                         UNDERLINE_ON* : java_lang.Integer;
                         STRIKETHROUGH* : TextAttribute;
                         STRIKETHROUGH_ON* : java_lang.Boolean;
                         RUN_DIRECTION* : TextAttribute;
                         RUN_DIRECTION_LTR* : java_lang.Boolean;
                         RUN_DIRECTION_RTL* : java_lang.Boolean;
                         BIDI_EMBEDDING* : TextAttribute;
                         JUSTIFICATION* : TextAttribute;
                         JUSTIFICATION_FULL* : java_lang.Float;
                         JUSTIFICATION_NONE* : java_lang.Float;
                         INPUT_METHOD_HIGHLIGHT* : TextAttribute;
                         SWAP_COLORS* : TextAttribute;
                         SWAP_COLORS_ON* : java_lang.Boolean;
                         PROCEDURE Init!(p0 : java_lang.String) : TextAttribute,CONSTRUCTOR;
                       END;

      TextHitInfo* = POINTER TO RECORD (java_lang.Object)
                     STATIC
                       PROCEDURE afterOffset*(p0 : INTEGER) : TextHitInfo;
                       PROCEDURE beforeOffset*(p0 : INTEGER) : TextHitInfo;
                       PROCEDURE leading*(p0 : INTEGER) : TextHitInfo;
                       PROCEDURE trailing*(p0 : INTEGER) : TextHitInfo;
                     END;

      TextLayout$CaretPolicy* = POINTER TO EXTENSIBLE RECORD (java_lang.Object)
                                STATIC
                                  PROCEDURE Init*() : TextLayout$CaretPolicy,CONSTRUCTOR;
                                END;

      TextLayout* = POINTER TO RECORD (java_lang.Object + java_lang.Cloneable)
                    STATIC
                      DEFAULT_CARET_POLICY* : TextLayout$CaretPolicy;
                      PROCEDURE Init*(p0 : java_lang.String;
                                      p1 : java_awt.Font;
                                      p2 : FontRenderContext) : TextLayout,CONSTRUCTOR;
                      PROCEDURE Init*(p0 : java_lang.String;
                                      p1 : java_util.Map;
                                      p2 : FontRenderContext) : TextLayout,CONSTRUCTOR;
                      PROCEDURE Init*(p0 : java_text.AttributedCharacterIterator;
                                      p1 : FontRenderContext) : TextLayout,CONSTRUCTOR;
                    END;

      TextLine$TextLineMetrics* = POINTER TO RECORD (java_lang.Object)
                                    ascent* : SHORTREAL;
                                    descent* : SHORTREAL;
                                    leading* : SHORTREAL;
                                    advance* : SHORTREAL;
                                  STATIC
                                    PROCEDURE Init*(p0 : SHORTREAL;
                                                    p1 : SHORTREAL;
                                                    p2 : SHORTREAL;
                                                    p3 : SHORTREAL) : TextLine$TextLineMetrics,CONSTRUCTOR;
                                  END;

      TransformAttribute* = POINTER TO RECORD (java_lang.Object + java_io.Serializable)
                            STATIC
                              PROCEDURE Init*(p0 : java_awt_geom.AffineTransform) : TransformAttribute,CONSTRUCTOR;
                            END;

    PROCEDURE (self:FontRenderContext) getTransform*() : java_awt_geom.AffineTransform,NEW,EXTENSIBLE;

    PROCEDURE (self:FontRenderContext) isAntiAliased*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:FontRenderContext) usesFractionalMetrics*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) getAdvance*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) getBounds2D*() : java_awt_geom.Rectangle2D,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) getLSB*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) getRSB*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) getType*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) isCombining*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) isComponent*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) isLigature*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) isStandard*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphMetrics) isWhitespace*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:GlyphVector) equals*(p0 : GlyphVector) : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getFont*() : java_awt.Font,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getFontRenderContext*() : FontRenderContext,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphCode*(p0 : INTEGER) : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphCodes*(    p0 : INTEGER;
                                                    p1 : INTEGER;
                                                IN  p2 : ARRAY OF INTEGER) : POINTER TO ARRAY OF INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphJustificationInfo*(p0 : INTEGER) : GlyphJustificationInfo,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphLogicalBounds*(p0 : INTEGER) : java_awt.Shape,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphMetrics*(p0 : INTEGER) : GlyphMetrics,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphOutline*(p0 : INTEGER) : java_awt.Shape,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphPosition*(p0 : INTEGER) : java_awt_geom.Point2D,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphPositions*(    p0 : INTEGER;
                                                        p1 : INTEGER;
                                                    IN  p2 : ARRAY OF SHORTREAL) : POINTER TO ARRAY OF SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphTransform*(p0 : INTEGER) : java_awt_geom.AffineTransform,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getGlyphVisualBounds*(p0 : INTEGER) : java_awt.Shape,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getLogicalBounds*() : java_awt_geom.Rectangle2D,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getNumGlyphs*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getOutline*() : java_awt.Shape,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getOutline*(p0 : SHORTREAL;
                                             p1 : SHORTREAL) : java_awt.Shape,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) getVisualBounds*() : java_awt_geom.Rectangle2D,NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) performDefaultLayout*(),NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) setGlyphPosition*(p0 : INTEGER;
                                                   p1 : java_awt_geom.Point2D),NEW,ABSTRACT;

    PROCEDURE (self:GlyphVector) setGlyphTransform*(p0 : INTEGER;
                                                    p1 : java_awt_geom.AffineTransform),NEW,ABSTRACT;

    PROCEDURE (self:GraphicAttribute) draw*(p0 : java_awt.Graphics2D;
                                            p1 : SHORTREAL;
                                            p2 : SHORTREAL),NEW,ABSTRACT;

    PROCEDURE (self:GraphicAttribute) getAdvance*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:GraphicAttribute) getAlignment*() : INTEGER,NEW;

    PROCEDURE (self:GraphicAttribute) getAscent*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:GraphicAttribute) getBounds*() : java_awt_geom.Rectangle2D,NEW,EXTENSIBLE;

    PROCEDURE (self:GraphicAttribute) getDescent*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:GraphicAttribute) getJustificationInfo*() : GlyphJustificationInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) draw*(p0 : java_awt.Graphics2D;
                                                 p1 : SHORTREAL;
                                                 p2 : SHORTREAL),EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) equals*(p0 : ImageGraphicAttribute) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) getAdvance*() : SHORTREAL,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) getAscent*() : SHORTREAL,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) getBounds*() : java_awt_geom.Rectangle2D,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) getDescent*() : SHORTREAL,EXTENSIBLE;

    PROCEDURE (self:ImageGraphicAttribute) hashCode*() : INTEGER,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) deleteChar*(p0 : java_text.AttributedCharacterIterator;
                                                   p1 : INTEGER),NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) getPosition*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) insertChar*(p0 : java_text.AttributedCharacterIterator;
                                                   p1 : INTEGER),NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) nextLayout*(p0 : SHORTREAL) : TextLayout,NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) nextLayout*(p0 : SHORTREAL;
                                                   p1 : INTEGER;
                                                   p2 : BOOLEAN) : TextLayout,NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) nextOffset*(p0 : SHORTREAL) : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) nextOffset*(p0 : SHORTREAL;
                                                   p1 : INTEGER;
                                                   p2 : BOOLEAN) : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:LineBreakMeasurer) setPosition*(p0 : INTEGER),NEW,EXTENSIBLE;

    PROCEDURE (self:LineMetrics) getAscent*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getBaselineIndex*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getBaselineOffsets*() : POINTER TO ARRAY OF SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getDescent*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getHeight*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getLeading*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getNumChars*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getStrikethroughOffset*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getStrikethroughThickness*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getUnderlineOffset*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:LineMetrics) getUnderlineThickness*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:MultipleMaster) deriveMMFont*(IN  p0 : ARRAY OF SHORTREAL) : java_awt.Font,NEW,ABSTRACT;

    PROCEDURE (self:MultipleMaster) deriveMMFont*(IN  p0 : ARRAY OF SHORTREAL;
                                                      p1 : SHORTREAL;
                                                      p2 : SHORTREAL;
                                                      p3 : SHORTREAL;
                                                      p4 : SHORTREAL) : java_awt.Font,NEW,ABSTRACT;

    PROCEDURE (self:MultipleMaster) getDesignAxisDefaults*() : POINTER TO ARRAY OF SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:MultipleMaster) getDesignAxisNames*() : POINTER TO ARRAY OF java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:MultipleMaster) getDesignAxisRanges*() : POINTER TO ARRAY OF SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:MultipleMaster) getNumDesignAxes*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getFontTable*(p0 : INTEGER) : POINTER TO ARRAY OF BYTE,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getFontTable*(p0 : INTEGER;
                                            p1 : INTEGER;
                                            p2 : INTEGER) : POINTER TO ARRAY OF BYTE,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getFontTable*(p0 : java_lang.String) : POINTER TO ARRAY OF BYTE,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getFontTable*(p0 : java_lang.String;
                                            p1 : INTEGER;
                                            p2 : INTEGER) : POINTER TO ARRAY OF BYTE,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getFontTableSize*(p0 : INTEGER) : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getFontTableSize*(p0 : java_lang.String) : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:OpenType) getVersion*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:ShapeGraphicAttribute) draw*(p0 : java_awt.Graphics2D;
                                                 p1 : SHORTREAL;
                                                 p2 : SHORTREAL),EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) equals*(p0 : ShapeGraphicAttribute) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) getAdvance*() : SHORTREAL,EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) getAscent*() : SHORTREAL,EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) getBounds*() : java_awt_geom.Rectangle2D,EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) getDescent*() : SHORTREAL,EXTENSIBLE;

    PROCEDURE (self:ShapeGraphicAttribute) hashCode*() : INTEGER,EXTENSIBLE;

    PROCEDURE (self:TextAttribute) readResolve!() : java_lang.Object,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) equals*(p0 : TextHitInfo) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) getCharIndex*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) getInsertionIndex*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) getOffsetHit*(p0 : INTEGER) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) getOtherHit*() : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) hashCode*() : INTEGER,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) isLeadingEdge*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:TextHitInfo) toString*() : java_lang.String,EXTENSIBLE;

    PROCEDURE (self:TextLayout$CaretPolicy) getStrongCaret*(p0 : TextHitInfo;
                                                            p1 : TextHitInfo;
                                                            p2 : TextLayout) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) clone!() : java_lang.Object,EXTENSIBLE;

    PROCEDURE (self:TextLayout) draw*(p0 : java_awt.Graphics2D;
                                      p1 : SHORTREAL;
                                      p2 : SHORTREAL),NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) equals*(p0 : TextLayout) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getAdvance*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getAscent*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getBaseline*() : BYTE,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getBaselineOffsets*() : POINTER TO ARRAY OF SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getBlackBoxBounds*(p0 : INTEGER;
                                                   p1 : INTEGER) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getBounds*() : java_awt_geom.Rectangle2D,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretInfo*(p0 : TextHitInfo) : POINTER TO ARRAY OF SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretInfo*(p0 : TextHitInfo;
                                              p1 : java_awt_geom.Rectangle2D) : POINTER TO ARRAY OF SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretShape*(p0 : TextHitInfo) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretShape*(p0 : TextHitInfo;
                                               p1 : java_awt_geom.Rectangle2D) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretShapes*(p0 : INTEGER) : POINTER TO ARRAY OF java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretShapes*(p0 : INTEGER;
                                                p1 : java_awt_geom.Rectangle2D) : POINTER TO ARRAY OF java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCaretShapes*(p0 : INTEGER;
                                                p1 : java_awt_geom.Rectangle2D;
                                                p2 : TextLayout$CaretPolicy) : POINTER TO ARRAY OF java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCharacterCount*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getCharacterLevel*(p0 : INTEGER) : BYTE,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getDescent*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getJustifiedLayout*(p0 : SHORTREAL) : TextLayout,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getLeading*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getLogicalHighlightShape*(p0 : INTEGER;
                                                          p1 : INTEGER) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getLogicalHighlightShape*(p0 : INTEGER;
                                                          p1 : INTEGER;
                                                          p2 : java_awt_geom.Rectangle2D) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getLogicalRangesForVisualSelection*(p0 : TextHitInfo;
                                                                    p1 : TextHitInfo) : POINTER TO ARRAY OF INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getNextLeftHit*(p0 : INTEGER) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getNextLeftHit*(p0 : INTEGER;
                                                p1 : TextLayout$CaretPolicy) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getNextLeftHit*(p0 : TextHitInfo) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getNextRightHit*(p0 : INTEGER) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getNextRightHit*(p0 : INTEGER;
                                                 p1 : TextLayout$CaretPolicy) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getNextRightHit*(p0 : TextHitInfo) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getOutline*(p0 : java_awt_geom.AffineTransform) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getVisibleAdvance*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getVisualHighlightShape*(p0 : TextHitInfo;
                                                         p1 : TextHitInfo) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getVisualHighlightShape*(p0 : TextHitInfo;
                                                         p1 : TextHitInfo;
                                                         p2 : java_awt_geom.Rectangle2D) : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) getVisualOtherHit*(p0 : TextHitInfo) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) handleJustify!(p0 : SHORTREAL),NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) hashCode*() : INTEGER,EXTENSIBLE;

    PROCEDURE (self:TextLayout) hitTestChar*(p0 : SHORTREAL;
                                             p1 : SHORTREAL) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) hitTestChar*(p0 : SHORTREAL;
                                             p1 : SHORTREAL;
                                             p2 : java_awt_geom.Rectangle2D) : TextHitInfo,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) isLeftToRight*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) isVertical*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:TextLayout) toString*() : java_lang.String,EXTENSIBLE;

    PROCEDURE (self:TransformAttribute) getTransform*() : java_awt_geom.AffineTransform,NEW,EXTENSIBLE;

    END java_awt_font.