Libraries.Game.Graphics.Fonts.MacStyleFlags Documentation
The MacStyleFlags class maintains information about the font when being rendered on Mac operating systems. These flags are found in the "head" table, and more information can be found on these flags on the Apple TrueType documenation website.
Example Code
use Libraries.Game.Graphics.Fonts.all
use Libraries.Game.Game
use Libraries.System.File
use Libraries.Containers.ByteArray
use Libraries.Containers.Support.ByteReader
use Libraries.System.BinaryFileReader
class Main is Game
action Main
StartGame()
end
action CreateGame
File file
ByteArray byteArray = undefined
ByteReader byteReader = undefined
FontFileReader reader
// This is the directory for fonts on Mac
file:SetWorkingDirectory("/Library/Fonts")
file:SetPath("Arial.ttf")
reader:Load(file)
TrueTypeFileInformation fileInformation = reader:GetFileInformation()
BinaryFileReader binaryReader
binaryReader:OpenForRead(file)
byteArray = binaryReader:ReadBytes()
byteArray:SetBigEndian(true)
byteReader = byteArray:GetByteReader()
// This is assuming the current position of the byteReader is at the
// right location. By default, it will not be.
integer flags = byteReader:NextTwoByteUnsignedInteger()
MacStyleFlags macFlags
macFlags:Set(flags)
end
end
Inherits from: Libraries.Language.Object
Summary
Actions Summary Table
Actions | Description |
---|---|
Compare(Libraries.Language.Object object) | This action compares two object hash codes and returns an integer. |
Equals(Libraries.Language.Object object) | This action determines if two objects are equal based on their hash code values. |
GetHashCode() | This action gets the hash code for an object. |
Set(integer flags) | This action sets the Mac Style flags of the font. |
Actions Documentation
Compare(Libraries.Language.Object object)
This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.
Example Code
Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)
Parameters
- Libraries.Language.Object: The object to compare to.
Return
integer: The Compare result, Smaller, Equal, or Larger.
Equals(Libraries.Language.Object object)
This action determines if two objects are equal based on their hash code values.
Example Code
use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)
Parameters
- Libraries.Language.Object: The to be compared.
Return
boolean: True if the hash codes are equal and false if they are not equal.
GetHashCode()
This action gets the hash code for an object.
Example Code
Object o
integer hash = o:GetHashCode()
Return
integer: The integer hash code of the object.
Set(integer flags)
This action sets the Mac Style flags of the font.
Example Code
use Libraries.Game.Graphics.Fonts.all
use Libraries.Game.Game
use Libraries.System.File
use Libraries.Containers.ByteArray
use Libraries.Containers.Support.ByteReader
use Libraries.System.BinaryFileReader
class Main is Game
action Main
StartGame()
end
action CreateGame
File file
ByteArray byteArray = undefined
ByteReader byteReader = undefined
FontFileReader reader
// This is the directory for fonts on Mac
file:SetWorkingDirectory("/Library/Fonts")
file:SetPath("Arial.ttf")
reader:Load(file)
TrueTypeFileInformation fileInformation = reader:GetFileInformation()
BinaryFileReader binaryReader
binaryReader:OpenForRead(file)
byteArray = binaryReader:ReadBytes()
byteArray:SetBigEndian(true)
byteReader = byteArray:GetByteReader()
// This is assuming the current position of the byteReader is at the
// right location. By default, it will not be.
integer flags = byteReader:NextTwoByteUnsignedInteger()
MacStyleFlags macFlags
macFlags:Set(flags)
end
end
Parameters
- integer flags: The flags of the font.