utils.glyph_available
Returns the glyph index of a glyph (character) in a font
Prototype
n = utils.glyph_available (font, glyph)
Description
This lets you test if a particular glyph can be rendered in the specified font. This lets a script writer see if a suitable Unicode font has been installed when using UTF-8 mode.
For example:
The number 31 might be returned which probably indicates that the glyph is not in that font.
Other numbers (other than nil, 0 or 31) would indicate that the glyph is available. The exact number represents the "glyph index" in the font table.
Note that it appears that even if 0 is returned that character might be rendered anyway because Windows uses a "fallback" font if a character is not available in the main font. However whether or not this works seems to depend on what main font is selected (for example, if it is a Unicode font or not).
The intention of this function is to let script (plugin) writers warn users if they are planning to use certain glyphs (for example, mapping symbols) which are not in the currently-selected font.
For example:
print (utils.glyph_available ("Arial Unicode MS", 0x2710) ) --> 4439
Zero will be returned if the glyph is not in the font. Nil will be returned if the gdi32 DLL cannot be loaded or if the function GetGlyphIndicesW is not available from Windows.The number 31 might be returned which probably indicates that the glyph is not in that font.
Other numbers (other than nil, 0 or 31) would indicate that the glyph is available. The exact number represents the "glyph index" in the font table.
Note that it appears that even if 0 is returned that character might be rendered anyway because Windows uses a "fallback" font if a character is not available in the main font. However whether or not this works seems to depend on what main font is selected (for example, if it is a Unicode font or not).
The intention of this function is to let script (plugin) writers warn users if they are planning to use certain glyphs (for example, mapping symbols) which are not in the currently-selected font.
Lua functions
- utils.activatenotepad - Actvitates the specified notepad window
- utils.appendtonotepad - Appends text to the specified notepad window
- utils.base64decode - Decode a string which was base-64 encoded
- utils.base64encode - Encode a string with base-64 encoding
- utils.callbackslist - Returns a table of plugin callback function names
- utils.choose - Display a combo box with choices in it
- utils.colourcube - Changes the colour cube used by 256-colour ANSI codes
- utils.compress - Compress a string
- utils.decompress - Decompress a string
- utils.directorypicker - Invokes the Windows standard "directory picker" dialog box
- utils.editbox - Display a large message box and get free-format reply
- utils.edit_distance - Returns the Levenshtein Edit Distance between two words
- utils.filepicker - Invokes the Windows standard "file picker" dialog box
- utils.filterpicker - Display a dialog box which filters its contents as you type
- utils.fontpicker - Invokes the Windows standard "font picker" dialog box
- utils.fromhex - Convert a string from hex
- utils.functionlist - Returns a table of MUSHclient world function names
- utils.getfontfamilies - Returns all fonts available to Windows
- utils.hash - Hash a string, returning the hex codes
- utils.info - Information about directories, locale, etc.
- utils.infotypes - Returns a table of all GetInfo type selectors
- utils.inputbox - Display a message box and get free-format reply
- utils.listbox - Display a dialog box with choices in it in a single selection list box
- utils.md5 - Hash a string using the 128-bit MD5 algorithm
- utils.menufontsize - Alters the size of the font used in menus
- utils.metaphone - Returns metaphones (sound-alike codes) for the supplied word
- utils.msgbox - Display a message box and get a response
- utils.multilistbox - Display a dialog box with choices in it in a multiple selection list box
- utils.readdir - Read a disk directory into a table
- utils.reload_global_prefs - Forces global preferences file to be reloaded
- utils.sendtofront - Bring a window to the front
- utils.sha256 - Hash a string using a 256-bit hash
- utils.shellexecute - Executes a Windows "shell" command
- utils.spellcheckdialog - Spell-checker dialog
- utils.split - Split a delimited string into a table
- utils.timer - Returns the high-resolution timer output
- utils.tohex - Convert a string into hex
- utils.umsgbox - Display a message box and get a response (Unicode)
- utils.utf8convert - Encodes a string into a UTF-8 string
- utils.utf8decode - Encodes a series of Unicode codes into a UTF-8 string
- utils.utf8encode - Encodes a series of Unicode codes into a UTF-8 string
- utils.utf8sub - Returns a substring of a UTF-8 string
- utils.utf8valid - Checks if a UTF-8 string is valid
- utils.xmlread - Parses an XML string into a nested table
Topics
- Lua LPEG library
- Lua PCRE regular expression functions
- Lua base functions
- Lua bc (big number) functions
- Lua bit manipulation functions
- Lua coroutine functions
- Lua debug functions
- Lua io functions
- Lua math functions
- Lua os functions
- Lua package functions
- Lua script extensions
- Lua string functions
- Lua syntax
- Lua table functions
- Lua utilities
- Scripting callbacks - plugins
- Scripting