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
-
#actualEncoding ⇒ Object
readonly
Actual encoding [Integer].
-
#actualName ⇒ Object
readonly
Actual font family name [String].
-
#actualSetWidth ⇒ Object
readonly
Actual set width [Integer].
-
#actualSize ⇒ Object
readonly
Actual size in deci-points [Integer].
-
#actualSlant ⇒ Object
readonly
Actual slant [Integer].
-
#actualWeight ⇒ Object
readonly
Actual font weight [Integer].
-
#angle ⇒ Object
Font angle [Integer].
-
#encoding ⇒ Object
readonly
Encoding [Integer].
-
#family ⇒ Object
readonly
Family part of name [String].
-
#fontAscent ⇒ Object
readonly
Ascent from baseline [Integer].
-
#fontDesc ⇒ Object
Font description FXFontDesc.
-
#fontDescent ⇒ Object
readonly
Descent from baseline [Integer].
-
#fontHeight ⇒ Object
readonly
Height of tallest character in font [Integer].
-
#fontLeading ⇒ Object
readonly
Font leading [Integer].
-
#fontSpacing ⇒ Object
readonly
Font line spacing [Integer].
-
#fontWidth ⇒ Object
readonly
Width of widest character in font [Integer].
-
#foundry ⇒ Object
readonly
Foundry part of name [String].
-
#hints ⇒ Object
readonly
Hints [Integer].
-
#maxChar ⇒ Object
readonly
Last character glyph in font [Integer].
-
#name ⇒ Object
readonly
Font family name [String].
-
#setWidth ⇒ Object
readonly
Set width [Integer].
-
#size ⇒ Object
readonly
Size in decipoints [Integer].
-
#slant ⇒ Object
readonly
Slant [Integer].
-
#weight ⇒ Object
readonly
Font weight [Integer].
Attributes inherited from FXId
Class Method Summary collapse
-
.listFonts(face, weight = 0, slant = 0, setWidth = 0, encoding = 0, hints = 0) ⇒ Object
List all fonts matching hints.
Instance Method Summary collapse
-
#fontMono? ⇒ Boolean
Return
true
if font is monospaced. -
#getCharWidth(ch) ⇒ Object
Calculate width of single wide character ch in this font.
-
#getFont ⇒ Object
Return the font description as a string suitable for parsing with #setFont, see above.
-
#getTextHeight(text) ⇒ Object
Returns the height of given text in this font.
-
#getTextWidth(text) ⇒ Object
Returns the width of given text in this font.
-
#hasChar?(ch) ⇒ Boolean
Return
true
if font has glyph for ch. -
#initialize(a, string) ⇒ FXFont
constructor
Construct a font with given font description of the form:.
-
#leftBearing(ch) ⇒ Object
Returns the left-side bearing (the distance from the origin to the leftmost pixel in the character) for ch.
-
#rightBearing(ch) ⇒ Object
Returns the right-side bearing (the distance from the origin to the rightmost pixel in the character) for ch.
-
#setFont(string) ⇒ Object
Change the font to the specified font description string.
Methods inherited from FXId
#create, #created?, #destroy, #detach, #runOnUiThread
Methods inherited from FXObject
#bind, #handle, #load, #save, subclasses
Constructor Details
#initialize(a, string) ⇒ FXFont
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, fontDesc) # :yields: theFont end |
Instance Attribute Details
#actualEncoding ⇒ Object (readonly)
Actual encoding [Integer]
206 207 208 |
# File 'rdoc-sources/FXFont.rb', line 206 def actualEncoding @actualEncoding end |
#actualName ⇒ Object (readonly)
Actual font family name [String]
182 183 184 |
# File 'rdoc-sources/FXFont.rb', line 182 def actualName @actualName end |
#actualSetWidth ⇒ Object (readonly)
Actual set width [Integer]
212 213 214 |
# File 'rdoc-sources/FXFont.rb', line 212 def actualSetWidth @actualSetWidth end |
#actualSize ⇒ Object (readonly)
Actual size in deci-points [Integer]
188 189 190 |
# File 'rdoc-sources/FXFont.rb', line 188 def actualSize @actualSize end |
#actualSlant ⇒ Object (readonly)
Actual slant [Integer]
200 201 202 |
# File 'rdoc-sources/FXFont.rb', line 200 def actualSlant @actualSlant end |
#actualWeight ⇒ Object (readonly)
Actual font weight [Integer]
194 195 196 |
# File 'rdoc-sources/FXFont.rb', line 194 def actualWeight @actualWeight end |
#angle ⇒ Object
Font angle [Integer]
221 222 223 |
# File 'rdoc-sources/FXFont.rb', line 221 def angle @angle end |
#encoding ⇒ Object (readonly)
Encoding [Integer]
203 204 205 |
# File 'rdoc-sources/FXFont.rb', line 203 def encoding @encoding end |
#family ⇒ Object (readonly)
Family part of name [String]
173 174 175 |
# File 'rdoc-sources/FXFont.rb', line 173 def family @family end |
#fontAscent ⇒ Object (readonly)
Ascent from baseline [Integer]
239 240 241 |
# File 'rdoc-sources/FXFont.rb', line 239 def fontAscent @fontAscent end |
#fontDesc ⇒ Object
Font description Fox::FXFontDesc
218 219 220 |
# File 'rdoc-sources/FXFont.rb', line 218 def fontDesc @fontDesc end |
#fontDescent ⇒ Object (readonly)
Descent from baseline [Integer]
242 243 244 |
# File 'rdoc-sources/FXFont.rb', line 242 def fontDescent @fontDescent end |
#fontHeight ⇒ Object (readonly)
Height of tallest character in font [Integer]
236 237 238 |
# File 'rdoc-sources/FXFont.rb', line 236 def fontHeight @fontHeight end |
#fontLeading ⇒ Object (readonly)
Font leading [Integer]
245 246 247 |
# File 'rdoc-sources/FXFont.rb', line 245 def fontLeading @fontLeading end |
#fontSpacing ⇒ Object (readonly)
Font line spacing [Integer]
248 249 250 |
# File 'rdoc-sources/FXFont.rb', line 248 def fontSpacing @fontSpacing end |
#fontWidth ⇒ Object (readonly)
Width of widest character in font [Integer]
233 234 235 |
# File 'rdoc-sources/FXFont.rb', line 233 def fontWidth @fontWidth end |
#foundry ⇒ Object (readonly)
Foundry part of name [String]
176 177 178 |
# File 'rdoc-sources/FXFont.rb', line 176 def foundry @foundry end |
#hints ⇒ Object (readonly)
Hints [Integer]
215 216 217 |
# File 'rdoc-sources/FXFont.rb', line 215 def hints @hints end |
#maxChar ⇒ Object (readonly)
Last character glyph in font [Integer]
230 231 232 |
# File 'rdoc-sources/FXFont.rb', line 230 def maxChar @maxChar end |
#name ⇒ Object (readonly)
Font family name [String]
179 180 181 |
# File 'rdoc-sources/FXFont.rb', line 179 def name @name end |
#setWidth ⇒ Object (readonly)
Set width [Integer]
209 210 211 |
# File 'rdoc-sources/FXFont.rb', line 209 def setWidth @setWidth end |
#size ⇒ Object (readonly)
Size in decipoints [Integer]
185 186 187 |
# File 'rdoc-sources/FXFont.rb', line 185 def size @size end |
#slant ⇒ Object (readonly)
Slant [Integer]
197 198 199 |
# File 'rdoc-sources/FXFont.rb', line 197 def slant @slant end |
#weight ⇒ Object (readonly)
Font weight [Integer]
191 192 193 |
# File 'rdoc-sources/FXFont.rb', line 191 def weight @weight end |
Class Method Details
.listFonts(face, weight = 0, slant = 0, setWidth = 0, encoding = 0, hints = 0) ⇒ Object
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
#fontMono? ⇒ Boolean
Return true
if font is monospaced.
315 |
# File 'rdoc-sources/FXFont.rb', line 315 def fontMono? ; end |
#getCharWidth(ch) ⇒ Object
Calculate width of single wide character ch in this font
342 |
# File 'rdoc-sources/FXFont.rb', line 342 def getCharWidth(ch); end |
#getFont ⇒ Object
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 |
#getTextHeight(text) ⇒ Object
Returns the height of given text in this font.
352 |
# File 'rdoc-sources/FXFont.rb', line 352 def getTextHeight(text) ; end |
#getTextWidth(text) ⇒ Object
Returns the width of given text in this font.
347 |
# File 'rdoc-sources/FXFont.rb', line 347 def getTextWidth(text) ; end |
#hasChar?(ch) ⇒ Boolean
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 |
#leftBearing(ch) ⇒ Object
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 |
#rightBearing(ch) ⇒ Object
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 |
#setFont(string) ⇒ Object
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 |