GdiGraphics
Classes
Methods
-
CalcTextHeight(str, font) → {number}
-
Calculates text height for GdiGraphics#GdiDrawText.
Note: this will only calculate the text height of one line.Parameters:
Name Type Description str
string font
GdiFont Returns:
number -
CalcTextWidth(str, font, use_exactopt) → {number}
-
Calculates text width for GdiGraphics#GdiDrawText. Note: When the str contains a kerning pair that is found in the specified font, the return value will be larger than the actual drawn width of the text. If accurate values are required, set use_exact to true.
Parameters:
Name Type Attributes Default Description str
string font
GdiFont use_exact
boolean <optional>
false Uses a slower, but more accurate method of calculating text width which accounts for kerning pairs. Returns:
number -
DrawEllipse(x, y, w, h, line_width, colour)
-
Parameters:
Name Type Description x
number y
number w
number h
number line_width
number colour
number -
DrawImage(img, dstX, dstY, dstW, dstH, srcX, srcY, srcW, srcH, angleopt, alphaopt)
-
Parameters:
Name Type Attributes Default Description img
GdiBitmap dstX
number dstY
number dstW
number dstH
number srcX
number srcY
number srcW
number srcH
number angle
float <optional>
0 alpha
number <optional>
255 Valid values 0-255. -
DrawLine(x1, y1, x2, y2, line_width, colour)
-
Parameters:
Name Type Description x1
number y1
number x2
number y2
number line_width
number colour
number -
DrawPolygon(colour, line_width, points)
-
Parameters:
Name Type Description colour
number line_width
number points
Array.<Array.<number>> -
DrawRect(x, y, w, h, line_width, colour)
-
Parameters:
Name Type Description x
number y
number w
number h
number line_width
number colour
number -
DrawRoundRect(x, y, w, h, arc_width, arc_height, line_width, colour)
-
Parameters:
Name Type Description x
number y
number w
number h
number arc_width
number arc_height
number line_width
number colour
number -
DrawString(str, font, colour, x, y, w, h, flagsopt)
-
Should be only used when GdiGraphics#GdiDrawText is not applicable.
Parameters:
Name Type Attributes Default Description str
string font
GdiFont colour
number x
number y
number w
number h
number flags
number <optional>
0 See Flags.js > StringFormatFlags -
EstimateLineWrap(str, font, max_width) → {Array.<Array>}
-
Parameters:
Name Type Description str
string font
GdiFont max_width
number Returns:
Array.<Array> - index | meaning
[0] text line 1
[1] width of text line 1 (in pixel)
[2] text line 2
[3] width of text line 2 (in pixel)
...
[2n + 2] text line n
[2n + 3] width of text line n (px) -
FillEllipse(x, y, w, h, colour)
-
Parameters:
Name Type Description x
number y
number w
number h
number colour
number -
FillGradRect(x, y, w, h, angle, colour1, colour2, focusopt)
-
Note: this may appear buggy depending on rectangle size. The easiest fix is to adjust the "angle" by a degree or two.
Parameters:
Name Type Attributes Default Description x
number y
number w
number h
number angle
float colour1
number colour2
number focus
float <optional>
1.0 Specify where the centred colour will be at its highest intensity. Valid values between 0 and 1. -
FillPolygon(colour, fillmode, points)
-
Parameters:
Name Type Description colour
number fillmode
number 0 alternate, 1 winding. points
Array.<Array.<number>> -
FillRoundRect(x, y, w, h, arc_width, arc_height, colour)
-
Parameters:
Name Type Description x
number y
number w
number h
number arc_width
number arc_height
number colour
number -
FillSolidRect(x, y, w, h, colour)
-
Parameters:
Name Type Description x
number y
number w
number h
number colour
number -
GdiAlphaBlend(img, dstX, dstY, dstW, dstH, srcX, srcY, srcW, srcH, alphaopt)
-
Parameters:
Name Type Attributes Default Description img
GdiRawBitmap dstX
number dstY
number dstW
number dstH
number srcX
number srcY
number srcW
number srcH
number alpha
number <optional>
255 Valid values 0-255. -
GdiDrawBitmap(img, dstX, dstY, dstW, dstH, srcX, srcY, srcW, srcH)
-
Always faster than GdiGraphics#DrawImage, does not support alpha channel.
Parameters:
Name Type Description img
GdiRawBitmap dstX
number dstY
number dstW
number dstH
number srcX
number srcY
number srcW
number srcH
number -
GdiDrawText(str, font, colour, x, y, w, h, formatopt)
-
Provides faster and better rendering than GdiGraphics#DrawString.
Do not use this to draw text on transparent background or with GdiGraphics other than the one passed in on_paint callback: this will result in visual artifacts caused by ClearType hinting.
Use GdiGraphics#DrawString instead in such cases.
To calculate text dimensions use GdiGraphics#CalcTextHeight, GdiGraphics#CalcTextWidth.
Note: uses special rules for `&` character by default, which consumes the `&` and causes the next character to be underscored. This behaviour can be changed (or disabled) via `format` parameter.Parameters:
Name Type Attributes Default Description str
string font
GdiFont colour
number x
number y
number w
number h
number format
number <optional>
0 See Flags.js > DT_* -
MeasureString(str, font, x, y, w, h, flagsopt) → {MeasureStringInfo}
-
Calculates text dimensions for GdiGraphics#DrawString.
Parameters:
Name Type Attributes Default Description str
string font
GdiFont x
number y
number w
number h
number flags
number <optional>
0 See Flags.js > StringFormatFlags Returns:
MeasureStringInfo -
SetInterpolationMode(modeopt)
-
Parameters:
Name Type Attributes Default Description mode
number <optional>
0 See Flags.js > InterpolationMode -
SetSmoothingMode(modeopt)
-
Parameters:
Name Type Attributes Default Description mode
number <optional>
0 See Flags.js > SmoothingMode -
SetTextRenderingHint(modeopt)
-
Parameters:
Name Type Attributes Default Description mode
number <optional>
0 See Flags.js > TextRenderingHint