Class: Fox::FXFont
Overview
Font class
Font pitch hints
Fixed |
Fixed pitch, mono-spaced |
Variable |
Variable pitch, proportional spacing |
Font style hints
Decorative |
Fancy fonts |
Modern |
Monospace typewriter font |
Roman |
Variable width times-like font, serif |
Script |
Script or cursive |
Swiss |
Helvetica/swiss type font, sans-serif |
System |
System font |
X11 |
Raw X11 font string |
Scalable |
Scalable fonts |
Polymorphic |
Polymorphic fonts, e.g. parametric weight, slant, etc. |
Rotatable |
Rotatable fonts |
Font slant options
ReverseOblique |
Reversed oblique |
ReverseItalic |
Reversed italic |
Straight |
Straight, not slanted |
Italic |
Italics |
Oblique |
Oblique slant |
Font weight options
Thin |
Thin |
ExtraLight |
Extra light |
Light |
Light |
Normal |
Normal or regular weight |
Medium |
Medium bold face |
DemiBold |
Demi bold face |
Bold |
Bold face |
ExtraBold |
Extra |
Black |
Black |
Condensed or expanded options
UltraCondensed |
Ultra condensed printing |
ExtraCondensed |
Extra condensed |
Condensed |
Condensed |
SemiCondensed |
Semi-condensed |
NonExpanded |
Regular printing |
SemiExpanded |
Semi expanded |
Expanded:; Expanded
ExtraExpanded |
Extra expanded |
UltraExpanded |
Ultra expanded |
Font character set encoding
FONTENCODING_DEFAULT |
Don't care character encoding |
FONTENCODING_ISO_8859_1 |
West European (Latin1) |
FONTENCODING_ISO_8859_2 |
Central and East European (Latin2) |
FONTENCODING_ISO_8859_3 |
Esperanto (Latin3) |
FONTENCODING_ISO_8859_4 |
ISO-8859-4 character encoding |
FONTENCODING_ISO_8859_5 |
Cyrillic (almost obsolete) |
FONTENCODING_ISO_8859_6 |
Arabic |
FONTENCODING_ISO_8859_7 |
Greek |
FONTENCODING_ISO_8859_8 |
Hebrew |
FONTENCODING_ISO_8859_9 |
Turkish (Latin5) |
FONTENCODING_ISO_8859_10 |
ISO-8859-10 character encoding |
FONTENCODING_ISO_8859_11 |
Thai |
FONTENCODING_ISO_8859_13 |
Baltic |
FONTENCODING_ISO_8859_14 |
ISO-8859-14 character encoding |
FONTENCODING_ISO_8859_15 |
ISO-8859-15 character encoding |
FONTENCODING_ISO_8859_16 |
ISO-8859-16 character encoding |
FONTENCODING_KOI8 |
KOI-8 character encoding |
FONTENCODING_KOI8_R |
Russian |
FONTENCODING_KOI8_U |
Ukrainian |
FONTENCODING_KOI8_UNIFIED |
x |
FONTENCODING_CP437 |
IBM-PC code page |
FONTENCODING_CP850 |
IBM-PC Multilingual |
FONTENCODING_CP851 |
IBM-PC Greek |
FONTENCODING_CP852 |
IBM-PC Latin2 |
FONTENCODING_CP855 |
IBM-PC Cyrillic |
FONTENCODING_CP856 |
IBM-PC Hebrew |
FONTENCODING_CP857 |
IBM-PC Turkish |
FONTENCODING_CP860 |
IBM-PC Portugese |
FONTENCODING_CP861 |
IBM-PC Iceland |
FONTENCODING_CP862 |
IBM-PC Israel |
FONTENCODING_CP863 |
IBM-PC Canadian/French |
FONTENCODING_CP864 |
IBM-PC Arabic |
FONTENCODING_CP865 |
IBM-PC Nordic |
FONTENCODING_CP866 |
IBM-PC Cyrillic #2 |
FONTENCODING_CP869 |
IBM-PC Greek #2 |
FONTENCODING_CP870 |
Latin-2 Multilingual |
FONTENCODING_CP1250 |
Windows Central European |
FONTENCODING_CP1251 |
Windows Russian |
FONTENCODING_CP1252 |
Windows Latin1 |
FONTENCODING_CP1253 |
Windows Greek |
FONTENCODING_CP1254 |
Windows Turkish |
FONTENCODING_CP1255 |
Windows Hebrew |
FONTENCODING_CP1256 |
Windows Arabic |
FONTENCODING_CP1257 |
Windows Baltic |
FONTENCODING_CP1258 |
Windows Vietnam |
FONTENCODING_CP874 |
Windows Thai |
FONTENCODING_UNICODE |
Unicode |
FONTENCODING_LATIN1 |
same as FONTENCODING_ISO_8859_1, Latin 1 (West European) |
FONTENCODING_LATIN2 |
same as FONTENCODING_ISO_8859_2, Latin 2 (East European) |
FONTENCODING_LATIN3 |
same as FONTENCODING_ISO_8859_3, Latin 3 (South European) |
FONTENCODING_LATIN4 |
same as FONTENCODING_ISO_8859_4, Latin 4 (North European) |
FONTENCODING_LATIN5 |
same as FONTENCODING_ISO_8859_9, Latin 5 (Turkish) |
FONTENCODING_LATIN6 |
same as FONTENCODING_ISO_8859_10, Latin 6 (Nordic) |
FONTENCODING_LATIN7 |
same as FONTENCODING_ISO_8859_13, Latin 7 (Baltic Rim) |
FONTENCODING_LATIN8 |
same as FONTENCODING_ISO_8859_14, Latin 8 (Celtic) |
FONTENCODING_LATIN9 |
same as FONTENCODING_ISO_8859_15, Latin 9 (a.k.a. Latin 0) |
FONTENCODING_LATIN10 |
same as FONTENCODING_ISO_8859_16, Latin 10 |
FONTENCODING_USASCII |
same as FONTENCODING_ISO_8859_1, Latin 1 |
FONTENCODING_WESTEUROPE |
same as FONTENCODING_ISO_8859_1, Latin 1 (West European) |
FONTENCODING_EASTEUROPE |
same as FONTENCODING_ISO_8859_2, Latin 2 (East European) |
FONTENCODING_SOUTHEUROPE |
same as FONTENCODING_ISO_8859_3, Latin 3 (South European) |
FONTENCODING_NORTHEUROPE |
same as FONTENCODING_ISO_8859_4, Latin 4 (North European) |
FONTENCODING_CYRILLIC |
same as FONTENCODING_ISO_8859_5, Cyrillic |
FONTENCODING_RUSSIAN |
same as FONTENCODING_KOI8, Cyrillic |
FONTENCODING_ARABIC |
same as FONTENCODING_ISO_8859_6, Arabic |
FONTENCODING_GREEK |
same as FONTENCODING_ISO_8859_7, Greek |
FONTENCODING_HEBREW |
same as FONTENCODING_ISO_8859_8, Hebrew |
FONTENCODING_TURKISH |
same as FONTENCODING_ISO_8859_9, Latin 5 (Turkish) |
FONTENCODING_NORDIC |
same as FONTENCODING_ISO_8859_10, Latin 6 (Nordic) |
FONTENCODING_THAI |
same as FONTENCODING_ISO_8859_11, Thai |
FONTENCODING_BALTIC |
same as FONTENCODING_ISO_8859_13, Latin 7 (Baltic Rim) |
FONTENCODING_CELTIC |
same as <tt>FONTENCODING_ISO_8859_14, Latin 8 (Celtic) |
Instance Attribute Summary (collapse)
-
- (Object) actualEncoding
readonly
Actual encoding [Integer].
-
- (Object) actualName
readonly
Actual font family name [String].
-
- (Object) actualSetWidth
readonly
Actual set width [Integer].
-
- (Object) actualSize
readonly
Actual size in deci-points [Integer].
-
- (Object) actualSlant
readonly
Actual slant [Integer].
-
- (Object) actualWeight
readonly
Actual font weight [Integer].
-
- (Object) angle
Font angle [Integer].
-
- (Object) encoding
readonly
Encoding [Integer].
-
- (Object) family
readonly
Family part of name [String].
-
- (Object) fontAscent
readonly
Ascent from baseline [Integer].
-
- (Object) fontDesc
Font description FXFontDesc.
-
- (Object) fontDescent
readonly
Descent from baseline [Integer].
-
- (Object) fontHeight
readonly
Height of tallest character in font [Integer].
-
- (Object) fontLeading
readonly
Font leading [Integer].
-
- (Object) fontSpacing
readonly
Font line spacing [Integer].
-
- (Object) fontWidth
readonly
Width of widest character in font [Integer].
-
- (Object) foundry
readonly
Foundry part of name [String].
-
- (Object) hints
readonly
Hints [Integer].
-
- (Object) maxChar
readonly
Last character glyph in font [Integer].
-
- (Object) name
readonly
Font family name [String].
-
- (Object) setWidth
readonly
Set width [Integer].
-
- (Object) size
readonly
Size in decipoints [Integer].
-
- (Object) slant
readonly
Slant [Integer].
-
- (Object) weight
readonly
Font weight [Integer].
Attributes inherited from FXId
Class Method Summary (collapse)
-
+ (Object) listFonts(face, weight = 0, slant = 0, setWidth = 0, encoding = 0, hints = 0)
List all fonts matching hints.
Instance Method Summary (collapse)
-
- (Boolean) fontMono?
Return true if font is monospaced.
-
- (Object) getCharWidth(ch)
Calculate width of single wide character ch in this font.
-
- (Object) getFont
Return the font description as a string suitable for parsing with #setFont, see above.
-
- (Object) getTextHeight(text)
Returns the height of given text in this font.
-
- (Object) getTextWidth(text)
Returns the width of given text in this font.
-
- (Boolean) hasChar?(ch)
Return true if font has glyph for ch.
-
- (FXFont) initialize(a, string)
constructor
Construct a font with given font description of the form:.
-
- (Object) leftBearing(ch)
Returns the left-side bearing (the distance from the origin to the leftmost pixel in the character) for ch.
-
- (Object) rightBearing(ch)
Returns the right-side bearing (the distance from the origin to the rightmost pixel in the character) for ch.
-
- (Object) setFont(string)
Change the font to the specified font description string.
Methods inherited from FXId
#create, #created?, #destroy, #detach
Methods inherited from FXObject
#bind, #handle, #load, #save, subclasses
Constructor Details
- (FXFont) initialize(a, string)
Construct a font with given font description of the form:
fontname [ "[" foundry "]" ] ["," size ["," weight ["," slant ["," setwidth ["," encoding ["," hints]]]]]]
For example:
"helvetica [bitstream],120,bold,italic,normal,iso8859-1,0"
Typically, at least the font name, and size must be given for
normal font matching. As a special case, raw X11 fonts can also be
passed, for example:
"9x15bold"
Note: use of the raw X11 fonts is stronly discouraged.
258 259 |
# File 'rdoc-sources/FXFont.rb', line 258 def initialize(a, string) # :yields: theFont end |
Instance Attribute Details
- (Object) actualEncoding (readonly)
Actual encoding [Integer]
206 207 208 |
# File 'rdoc-sources/FXFont.rb', line 206 def actualEncoding @actualEncoding end |
- (Object) actualName (readonly)
Actual font family name [String]
182 183 184 |
# File 'rdoc-sources/FXFont.rb', line 182 def actualName @actualName end |
- (Object) actualSetWidth (readonly)
Actual set width [Integer]
212 213 214 |
# File 'rdoc-sources/FXFont.rb', line 212 def actualSetWidth @actualSetWidth end |
- (Object) actualSize (readonly)
Actual size in deci-points [Integer]
188 189 190 |
# File 'rdoc-sources/FXFont.rb', line 188 def actualSize @actualSize end |
- (Object) actualSlant (readonly)
Actual slant [Integer]
200 201 202 |
# File 'rdoc-sources/FXFont.rb', line 200 def actualSlant @actualSlant end |
- (Object) actualWeight (readonly)
Actual font weight [Integer]
194 195 196 |
# File 'rdoc-sources/FXFont.rb', line 194 def actualWeight @actualWeight end |
- (Object) angle
Font angle [Integer]
221 222 223 |
# File 'rdoc-sources/FXFont.rb', line 221 def angle @angle end |
- (Object) encoding (readonly)
Encoding [Integer]
203 204 205 |
# File 'rdoc-sources/FXFont.rb', line 203 def encoding @encoding end |
- (Object) family (readonly)
Family part of name [String]
173 174 175 |
# File 'rdoc-sources/FXFont.rb', line 173 def family @family end |
- (Object) fontAscent (readonly)
Ascent from baseline [Integer]
239 240 241 |
# File 'rdoc-sources/FXFont.rb', line 239 def fontAscent @fontAscent end |
- (Object) fontDesc
Font description Fox::FXFontDesc
218 219 220 |
# File 'rdoc-sources/FXFont.rb', line 218 def fontDesc @fontDesc end |
- (Object) fontDescent (readonly)
Descent from baseline [Integer]
242 243 244 |
# File 'rdoc-sources/FXFont.rb', line 242 def fontDescent @fontDescent end |
- (Object) fontHeight (readonly)
Height of tallest character in font [Integer]
236 237 238 |
# File 'rdoc-sources/FXFont.rb', line 236 def fontHeight @fontHeight end |
- (Object) fontLeading (readonly)
Font leading [Integer]
245 246 247 |
# File 'rdoc-sources/FXFont.rb', line 245 def fontLeading @fontLeading end |
- (Object) fontSpacing (readonly)
Font line spacing [Integer]
248 249 250 |
# File 'rdoc-sources/FXFont.rb', line 248 def fontSpacing @fontSpacing end |
- (Object) fontWidth (readonly)
Width of widest character in font [Integer]
233 234 235 |
# File 'rdoc-sources/FXFont.rb', line 233 def fontWidth @fontWidth end |
- (Object) foundry (readonly)
Foundry part of name [String]
176 177 178 |
# File 'rdoc-sources/FXFont.rb', line 176 def foundry @foundry end |
- (Object) hints (readonly)
Hints [Integer]
215 216 217 |
# File 'rdoc-sources/FXFont.rb', line 215 def hints @hints end |
- (Object) maxChar (readonly)
Last character glyph in font [Integer]
230 231 232 |
# File 'rdoc-sources/FXFont.rb', line 230 def maxChar @maxChar end |
- (Object) name (readonly)
Font family name [String]
179 180 181 |
# File 'rdoc-sources/FXFont.rb', line 179 def name @name end |
- (Object) setWidth (readonly)
Set width [Integer]
209 210 211 |
# File 'rdoc-sources/FXFont.rb', line 209 def setWidth @setWidth end |
- (Object) size (readonly)
Size in decipoints [Integer]
185 186 187 |
# File 'rdoc-sources/FXFont.rb', line 185 def size @size end |
- (Object) slant (readonly)
Slant [Integer]
197 198 199 |
# File 'rdoc-sources/FXFont.rb', line 197 def slant @slant end |
- (Object) weight (readonly)
Font weight [Integer]
191 192 193 |
# File 'rdoc-sources/FXFont.rb', line 191 def weight @weight end |
Class Method Details
+ (Object) listFonts(face, weight = 0, slant = 0, setWidth = 0, encoding = 0, hints = 0)
List all fonts matching hints. Returns an array of FXFontDesc objects.
357 358 |
# File 'rdoc-sources/FXFont.rb', line 357 def FXFont.listFonts(face, weight=0, slant=0, setWidth=0, encoding=0, hints=0) end |
Instance Method Details
- (Boolean) fontMono?
Return true if font is monospaced.
315 |
# File 'rdoc-sources/FXFont.rb', line 315 def fontMono? ; end |
- (Object) getCharWidth(ch)
Calculate width of single wide character ch in this font
342 |
# File 'rdoc-sources/FXFont.rb', line 342 def getCharWidth(ch); end |
- (Object) getFont
Return the font description as a string suitable for parsing with #setFont, see above.
310 |
# File 'rdoc-sources/FXFont.rb', line 310 def getFont(); end |
- (Object) getTextHeight(text)
Returns the height of given text in this font.
352 |
# File 'rdoc-sources/FXFont.rb', line 352 def getTextHeight(text) ; end |
- (Object) getTextWidth(text)
Returns the width of given text in this font.
347 |
# File 'rdoc-sources/FXFont.rb', line 347 def getTextWidth(text) ; end |
- (Boolean) hasChar?(ch)
Return true if font has glyph for ch. Here, ch can either be an ordinal value, e.g.
aFont.hasChar?(?a)
or a string of length one (i.e. a single character), e.g.
aFont.hasChar?('a')
327 |
# File 'rdoc-sources/FXFont.rb', line 327 def hasChar?(ch) ; end |
- (Object) leftBearing(ch)
Returns the left-side bearing (the distance from the origin to the leftmost pixel in the character) for ch.
332 |
# File 'rdoc-sources/FXFont.rb', line 332 def leftBearing(ch) ; end |
- (Object) rightBearing(ch)
Returns the right-side bearing (the distance from the origin to the rightmost pixel in the character) for ch.
337 |
# File 'rdoc-sources/FXFont.rb', line 337 def rightBearing(ch) ; end |
- (Object) setFont(string)
Change the font to the specified font description string. Returns true on success.
304 |
# File 'rdoc-sources/FXFont.rb', line 304 def setFont(string); end |