font.java

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· Java 代码 · 共 1,329 行 · 第 1/3 页

JAVA
1,329
字号
  *  * @return A string containing the font family name.  *  * @since 1.2  *  * @see getName()  * @see getFontName()  * @see GraphicsEnvironment.getAvailableFontFamilyNames()  */  public String getFamily (){    return peer.getFamily (this);}/**  * Returns integer code representing the sum of style flags of this font, a  * combination of either {@link PLAIN}, {@link BOLD}, or {@link ITALIC}.  *  * @return code representing the style of this font.  *  * @see isPlain()  * @see isBold()  * @see isItalic()  */  public int getStyle (){    return peer.getStyle (this);}/**  * Checks if specified character maps to a glyph in this font.  *  * @param c The character to check.  *  * @return Whether the character has a corresponding glyph in this font.  *  * @since 1.2  */  public boolean canDisplay (char c){    return peer.canDisplay (this, c);    }/**  * Checks how much of a given string can be mapped to glyphs in   * this font.  *  * @param s The string to check.  *  * @return The index of the first character in <code>s</code> which cannot  * be converted to a glyph by this font, or <code>-1</code> if all  * characters can be mapped to glyphs.  *  * @since 1.2  */  public int canDisplayUpTo (String s){    return peer.canDisplayUpTo (this, new StringCharacterIterator (s),                                 0, s.length () - 1);}/**  * Checks how much of a given sequence of text can be mapped to glyphs in  * this font.  *  * @param text Array containing the text to check.  * @param start Position of first character to check in <code>text</code>.  * @param limit Position of last character to check in <code>text</code>.  *  * @return The index of the first character in the indicated range which  * cannot be converted to a glyph by this font, or <code>-1</code> if all  * characters can be mapped to glyphs.  *  * @since 1.2  *  * @throws IndexOutOfBoundsException if the range [start, limit] is  * invalid in <code>text</code>.  */  public int canDisplayUpTo (char[] text, int start, int limit){    return peer.canDisplayUpTo       (this, new StringCharacterIterator (new String (text)), start, limit);}/**  * Checks how much of a given sequence of text can be mapped to glyphs in  * this font.  *  * @param i Iterator over the text to check.  * @param start Position of first character to check in <code>i</code>.  * @param limit Position of last character to check in <code>i</code>.  *  * @return The index of the first character in the indicated range which  * cannot be converted to a glyph by this font, or <code>-1</code> if all  * characters can be mapped to glyphs.  *  * @since 1.2  *  * @throws IndexOutOfBoundsException if the range [start, limit] is  * invalid in <code>i</code>.  */  public int canDisplayUpTo (CharacterIterator i, int start, int limit){    return peer.canDisplayUpTo (this, i, start, limit);    }/**  * Creates a new font with point size 1 and {@link PLAIN} style,  * reading font data from the provided input stream. The resulting font  * can have further fonts derived from it using its  * <code>deriveFont</code> method.  *  * @param fontFormat Integer code indicating the format the font data is  * in.Currently this can only be {@link TRUETYPE_FONT}.  * @param is {@link InputStream} from which font data will be read. This  * stream is not closed after font data is extracted.  *  * @return A new {@link Font} of the format indicated.  *  * @throws IllegalArgumentException if <code>fontType</code> is not  * recognized.  * @throws FontFormatException if data in InputStream is not of format  * indicated.  * @throws IOException if insufficient data is present on InputStream.  *  * @since 1.3  */  public static Font createFont (int fontFormat, InputStream is)   throws FontFormatException, IOException{    return tk().createFont (fontFormat, is);}/**  * Maps characters to glyphs in a one-to-one relationship, returning a new  * {@link GlyphVector} with a mapped glyph for each input character. This  * sort of mapping is often sufficient for some scripts such as Roman, but  * is inappropriate for scripts with special shaping or contextual layout  * requirements such as Arabic, Indic, Hebrew or Thai.  *  * @param ctx The rendering context used for precise glyph placement.  * @param str The string to convert to Glyphs.  *  * @return A new {@link GlyphVector} containing glyphs mapped from str,  * through the font's cmap table.  *  * @see layoutGlyphVector()  */  public GlyphVector createGlyphVector (FontRenderContext ctx, String str){    return peer.createGlyphVector (this, ctx, new StringCharacterIterator (str));}/**  * Maps characters to glyphs in a one-to-one relationship, returning a new  * {@link GlyphVector} with a mapped glyph for each input character. This  * sort of mapping is often sufficient for some scripts such as Roman, but  * is inappropriate for scripts with special shaping or contextual layout  * requirements such as Arabic, Indic, Hebrew or Thai.  *  * @param ctx The rendering context used for precise glyph placement.  * @param i Iterator over the text to convert to glyphs.  *  * @return A new {@link GlyphVector} containing glyphs mapped from str,  * through the font's cmap table.  *  * @see layoutGlyphVector()  */  public GlyphVector createGlyphVector (FontRenderContext ctx, CharacterIterator i){    return peer.createGlyphVector (this, ctx, i);}/**  * Maps characters to glyphs in a one-to-one relationship, returning a new  * {@link GlyphVector} with a mapped glyph for each input character. This  * sort of mapping is often sufficient for some scripts such as Roman, but  * is inappropriate for scripts with special shaping or contextual layout  * requirements such as Arabic, Indic, Hebrew or Thai.  *  * @param ctx The rendering context used for precise glyph placement.  * @param chars Array of characters to convert to glyphs.  *  * @return A new {@link GlyphVector} containing glyphs mapped from str,  * through the font's cmap table.  *  * @see layoutGlyphVector()  */  public GlyphVector createGlyphVector (FontRenderContext ctx, char[] chars){    return peer.createGlyphVector       (this, ctx, new StringCharacterIterator (new String (chars)));}/**  * Extracts a sequence of glyphs from a font, returning a new {@link  * GlyphVector} with a mapped glyph for each input glyph code.   *  * @param ctx The rendering context used for precise glyph placement.  * @param glyphCodes Array of characters to convert to glyphs.  *  * @return A new {@link GlyphVector} containing glyphs mapped from str,  * through the font's cmap table.  *  * @see layoutGlyphVector()  *  * @specnote This method is documented to perform character-to-glyph  * conversions, in the Sun documentation, but its second parameter name is  * "glyphCodes" and it is not clear to me why it would exist if its  * purpose was to transport character codes inside integers. I assume it  * is mis-documented in the Sun documentation.  */  public GlyphVector createGlyphVector (FontRenderContext ctx, int[] glyphCodes){    return peer.createGlyphVector (this, ctx, glyphCodes);}/**  * Produces a new {@link Font} based on the current font, adjusted to a  * new size and style.  *  * @param style The style of the newly created font.  * @param size The size of the newly created font.  *  * @return A clone of the current font, with the specified size and style.  *  * @since 1.2  */  public Font deriveFont (int style, float size){    return peer.deriveFont (this, style, size);}/**  * Produces a new {@link Font} based on the current font, adjusted to a  * new size.  *  * @param size The size of the newly created font.  *  * @return A clone of the current font, with the specified size.  *  * @since 1.2  */  public Font deriveFont (float size){    return peer.deriveFont (this, size);}/**  * Produces a new {@link Font} based on the current font, adjusted to a  * new style.  *  * @param style The style of the newly created font.  *  * @return A clone of the current font, with the specified style.  *  * @since 1.2  */  public Font deriveFont (int style){    return peer.deriveFont (this, style);}/**  * Produces a new {@link Font} based on the current font, adjusted to a  * new style and subjected to a new affine transformation.  *  * @param style The style of the newly created font.  * @param a The transformation to apply.  *  * @return A clone of the current font, with the specified style and  * transform.  *  * @throws IllegalArgumentException If transformation is  * <code>null</code>.  *  * @since 1.2  */  public Font deriveFont (int style, AffineTransform a){    if (a == null)      throw new IllegalArgumentException ("Affine transformation is null");    return peer.deriveFont (this, style, a);}/**  * Produces a new {@link Font} based on the current font, subjected  * to a new affine transformation.  *  * @param a The transformation to apply.  *  * @return A clone of the current font, with the specified transform.  *  * @throws IllegalArgumentException If transformation is  * <code>null</code>.  *  * @since 1.2  */  public Font deriveFont (AffineTransform a){    if (a == null)      throw new IllegalArgumentException ("Affine transformation is null");    return peer.deriveFont (this, a);}/**  * Produces a new {@link Font} based on the current font, adjusted to a  * new set of attributes.  *  * @param attributes Attributes of the newly created font.  *  * @return A clone of the current font, with the specified attributes.  *  * @since 1.2  */  public Font deriveFont (Map attributes){    return peer.deriveFont (this, attributes);}/**  * Returns a map of chracter attributes which this font currently has set.  *  * @return A map of chracter attributes which this font currently has set.  *  * @see getAvailableAttributes()  * @see java.text.AttributedCharacterIterator.Attribute  * @see java.awt.font.TextAttribute  */  public Map getAttributes (){    return peer.getAttributes (this);}/**  * Returns an array of chracter attribute keys which this font understands.   *  * @return An array of chracter attribute keys which this font understands.  *  * @see getAttributes()  * @see java.text.AttributedCharacterIterator.Attribute  * @see java.awt.font.TextAttribute  */  public AttributedCharacterIterator.Attribute[] getAvailableAttributes(){    return peer.getAvailableAttributes (this);}/**  * Returns a baseline code (one of {@link ROMAN_BASELINE}, {@link  * CENTER_BASELINE} or {@link HANGING_BASELINE}) indicating which baseline  * this font will measure baseline offsets for, when presenting glyph  * metrics for a given character.  *  * Baseline offsets describe the position of a glyph relative to an  * invisible line drawn under, through the center of, or over a line of  * rendered text, respectively. Different scripts use different baseline  * modes, so clients should not assume all baseline offsets in a glyph  * vector are from a common baseline.  *  * @param c The character code to select a baseline mode for.  *  * @return The baseline mode which would be used in a glyph associated  * with the provided character.  *  * @since 1.2  *  * @see LineMetrics.getBaselineOffsets()  */  public byte getBaselineFor (char c){    return peer.getBaselineFor (this, c);}/**  * Returns the family name of this font. A family name describes a  * typographic style (such as Helvetica or Palatino). It is more specific  * than a logical font name (such as Sans Serif) but less specific than a  * font face name (such as Helvetica Bold).  *  * @param lc The locale in which to describe the name of the font family.  *  * @return A string containing the font family name, localized for the  * provided locale.  *  * @since 1.2  *  * @see getName()  * @see getFontName()  * @see GraphicsEnvironment.getAvailableFontFamilyNames()  * @see Locale  */  public String getFamily (Locale lc){    return peer.getFamily (this, lc); }/**  * Returns a font appropriate for the given attribute set.  *  * @param attributes The attributes required for the new font.  *  * @return A new Font with the given attributes.  *  * @since 1.2  *  * @see TextAttribure    */  public static Font getFont (Map attributes){    return getFontFromToolkit (null, attributes);}/**  * Returns the font face name of the font.  A font face name describes a  * specific variant of a font family (such as Helvetica Bold). It is more  * specific than both a font family name (such as Helvetica) and a logical  * font name (such as Sans Serif).  *  * @return The font face name of the font.  *  * @since 1.2  *  * @see getName()  * @see getFamily()  */  public String getFontName (){    return peer.getFontName (this);}/**  * Returns the font face name of the font.  A font face name describes a  * specific variant of a font family (such as Helvetica Bold). It is more   * specific than both a font family name (such as Helvetica).  *  * @param lc The locale in which to describe the name of the font face.  *  * @return A string containing the font face name, localized for the  * provided locale.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?