com.google.gwt.canvas.dom.client

## Class Context2d

- java.lang.Object
- - com.google.gwt.core.client.JavaScriptObject
  - - com.google.gwt.canvas.dom.client.Context2d

All Implemented Interfaces:
  Context

    public class Context2d
    extends JavaScriptObject
    implements Context

Rendering interface used to draw on a `CanvasElement`.

See Also:
  W3C HTML 5 Specification

### Nested Class Summary

Nested Classes
`static class` `Context2d.Composite` Enum for composite style.
`static class` `Context2d.LineCap` Enum for line-cap style.
`static class` `Context2d.LineJoin` Enum for line-join style.
`static class` `Context2d.Repetition` Enum for the repetition values.
`static class` `Context2d.TextAlign` Enum for text align style.
`static class` `Context2d.TextBaseline` Enum for text baseline style.

### Field Summary

Fields
`static java.lang.String` `CONTEXT_ID` Specifies the context id property used in creating a Context.

### Constructor Summary

Constructors
`protected` `Context2d()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `arc(double x, double y, double radius, double startAngle, double endAngle)` Draws an arc.
`void` `arc(double x, double y, double radius, double startAngle, double endAngle, boolean anticlockwise)` Draws an arc.
`void` `arcTo(double x1, double y1, double x2, double y2, double radius)` Adds an arc to the current subpath, connecting it to the current point with a line segment.
`void` `beginPath()` Begins a new path.
`void` `bezierCurveTo(double cp1x, double cp1y, double cp2x, double cp2y, double x, double y)` Draws a cubic Bézier curve from the current point to the point (x, y), with control points (cp1x, cp1y) and (cp2x, cp2y).
`void` `clearRect(double x, double y, double w, double h)` Clears a rectangle.
`void` `clip()` Creates a new clipping region from the current path.
`void` `closePath()` Closes the current path.
`ImageData` `createImageData(ImageData imagedata)` Creates an image data object of the same size as the given object.
`ImageData` `createImageData(int w, int h)` Creates an image data object of the given size.
`CanvasGradient` `createLinearGradient(double x0, double y0, double x1, double y1)` Creates a linear gradient.
`CanvasPattern` `createPattern(CanvasElement image, Context2d.Repetition repetition)` Creates a pattern from another canvas.
`CanvasPattern` `createPattern(CanvasElement image, java.lang.String repetition)` Creates a pattern from another canvas.
`CanvasPattern` `createPattern(ImageElement image, Context2d.Repetition repetition)` Creates a pattern from an image.
`CanvasPattern` `createPattern(ImageElement image, java.lang.String repetition)` Creates a pattern from an image.
`CanvasGradient` `createRadialGradient(double x0, double y0, double r0, double x1, double y1, double r1)` Creates a radial gradient.
`void` `drawImage(CanvasElement image, double dx, double dy)` Draws an image.
`void` `drawImage(CanvasElement image, double dx, double dy, double dw, double dh)` Draws a scaled image.
`void` `drawImage(CanvasElement image, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh)` Draws a scaled subset of an image.
`void` `drawImage(ImageElement image, double dx, double dy)` Draws an image.
`void` `drawImage(ImageElement image, double dx, double dy, double dw, double dh)` Draws a scaled image.
`void` `drawImage(ImageElement image, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh)` Draws a scaled subset of an image.
`void` `drawImage(VideoElement image, double dx, double dy)` Draws a video's current frame.
`void` `drawImage(VideoElement image, double dx, double dy, double dw, double dh)` Draws a scaled video's current frame.
`void` `drawImage(VideoElement image, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh)` Draws a scaled subset of a video's current frame.
`void` `fill()` Fills the current path.
`void` `fillRect(double x, double y, double w, double h)` Fills a rectangle.
`void` `fillText(java.lang.String text, double x, double y)` Draws filled text.
`void` `fillText(java.lang.String text, double x, double y, double maxWidth)` Draws filled text squeezed into the given max width.
`CanvasElement` `getCanvas()` Gets this context's canvas.
`FillStrokeStyle` `getFillStyle()` Returns the context's fillStyle.
`java.lang.String` `getFont()` Gets this context's font.
`double` `getGlobalAlpha()` Gets the global alpha value.
`java.lang.String` `getGlobalCompositeOperation()` Gets the global composite operation.
`ImageData` `getImageData(double sx, double sy, double sw, double sh)` Returns an image data object for the screen area denoted by sx, sy, sw and sh.
`java.lang.String` `getLineCap()` Gets the current line-cap style.
`java.lang.String` `getLineJoin()` Gets the current line-join style.
`double` `getLineWidth()` Gets the current line-width.
`double` `getMiterLimit()` Gets the current miter-limit.
`double` `getShadowBlur()` Gets the current shadow-blur.
`java.lang.String` `getShadowColor()` Gets the current shadow color.
`double` `getShadowOffsetX()` Gets the current x-shadow-offset.
`double` `getShadowOffsetY()` Gets the current y-shadow-offset.
`FillStrokeStyle` `getStrokeStyle()` Returns the context's strokeStyle.
`java.lang.String` `getTextAlign()` Gets the current text align.
`java.lang.String` `getTextBaseline()` Gets the current text baseline.
`boolean` `isPointInPath(double x, double y)` Returns true if the given point is in the current path.
`void` `lineTo(double x, double y)` Adds a line from the current point to the point (x, y) to the current path.
`TextMetrics` `measureText(java.lang.String text)` Returns the metrics for the given text.
`void` `moveTo(double x, double y)` Terminates the current path and sets the current path position to the point (x, y).
`void` `putImageData(ImageData imagedata, double x, double y)` Draws the given image data at the given screen position.
`void` `quadraticCurveTo(double cpx, double cpy, double x, double y)` Draws a quadratic Bézier curve from the current point to the point (x, y), with control point (cpx, cpy).
`void` `rect(double x, double y, double w, double h)` Creates a new rectangular path.
`void` `restore()` Restores the context's state.
`void` `rotate(double angle)` Applies rotation to the current transform.
`void` `save()` Saves the context's state.
`void` `scale(double x, double y)` Applies scale to the current transform.
`void` `setFillStyle(FillStrokeStyle fillStyle)` Sets the context's fillStyle.
`void` `setFillStyle(java.lang.String fillStyleColor)` Convenience method to set the context's fillStyle to a `CssColor`, specified in String form.
`void` `setFont(java.lang.String f)` Sets the font.
`void` `setGlobalAlpha(double alpha)` Sets the global alpha value.
`void` `setGlobalCompositeOperation(Context2d.Composite composite)` Sets the global composite operation.
`void` `setGlobalCompositeOperation(java.lang.String globalCompositeOperation)` Sets the global composite operation.
`void` `setLineCap(Context2d.LineCap lineCap)` Sets the line-cap style.
`void` `setLineCap(java.lang.String lineCap)` Sets the line-cap style.
`void` `setLineJoin(Context2d.LineJoin lineJoin)` Sets the line-join style.
`void` `setLineJoin(java.lang.String lineJoin)` Sets the line-join style.
`void` `setLineWidth(double lineWidth)` Sets the line-width.
`void` `setMiterLimit(double miterLimit)` Sets the miter-limit.
`void` `setShadowBlur(double shadowBlur)` Sets the shadow-blur.
`void` `setShadowColor(java.lang.String shadowColor)` Sets the shadow-color.
`void` `setShadowOffsetX(double shadowOffsetX)` Sets the x-shadow-offset.
`void` `setShadowOffsetY(double shadowOffsetY)` Sets the y-shadow-offset.
`void` `setStrokeStyle(FillStrokeStyle strokeStyle)` Sets the context's stroke style.
`void` `setStrokeStyle(java.lang.String strokeStyleColor)` Convenience method to set the context's strokeStyle to a `CssColor`.
`void` `setTextAlign(Context2d.TextAlign align)` Sets the text alignment.
`void` `setTextAlign(java.lang.String align)` Sets the text alignment.
`void` `setTextBaseline(Context2d.TextBaseline baseline)` Sets the text baseline.
`void` `setTextBaseline(java.lang.String baseline)` Sets the text baseline.
`void` `setTransform(double m11, double m12, double m21, double m22, double dx, double dy)` Sets the 2D transformation matrix.
`void` `stroke()` Draws the current path with the current stroke style.
`void` `strokeRect(double x, double y, double w, double h)` Draws the outline of a rectangle with the current stroke style.
`void` `strokeText(java.lang.String text, double x, double y)` Draws the text outline.
`void` `strokeText(java.lang.String text, double x, double y, double maxWidth)` Draws the text outline, squeezing the text into the given max width by compressing the font.
`void` `transform(double m11, double m12, double m21, double m22, double dx, double dy)` Multiplies the current transform by the given matrix.
`void` `translate(double x, double y)` Applies a translation to the current transform.

### Methods inherited from class com.google.gwt.core.client.JavaScriptObject

`cast, createArray, createArray, createFunction, createObject, equals, hashCode, toSource, toString`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### CONTEXT_ID

    public static final java.lang.String CONTEXT_ID

Specifies the context id property used in creating a Context.

See Also:
  Constant Field Values

### Constructor Detail

#### Context2d

    protected Context2d()

### Method Detail

#### arc

    public final void arc(double x,
                          double y,
                          double radius,
                          double startAngle,
                          double endAngle)

Draws an arc. If a current subpath exists, a line segment is added from the current point to the starting point of the arc. If `endAngle - startAngle` is equal to or greater than `2 * Math.Pi`, the arc is the whole circumference of the circle.

Parameters:
  `x` - the x coordinate of the center of the arc
  `y` - the y coordinate of the center of the arc
  `radius` - the radius of the arc
  `startAngle` - the start angle, measured in radians clockwise from the positive x-axis
  `endAngle` - the end angle, measured in radians clockwise from the positive x-axis

#### arc

    public final void arc(double x,
                          double y,
                          double radius,
                          double startAngle,
                          double endAngle,
                          boolean anticlockwise)

Draws an arc. If a current subpath exists, a line segment is added from the current point to the starting point of the arc. If `anticlockwise` is false and `endAngle - startAngle` is equal to or greater than `2 * Math.PI`, or if `anticlockwise` is `true` and `startAngle - endAngle` is equal to or greater than `2 * Math.PI`, then the arc is the whole circumference of the circle.

Parameters:
  `x` - the x coordinate of the center of the arc
  `y` - the y coordinate of the center of the arc
  `radius` - the radius of the arc
  `startAngle` - the start angle, measured in radians clockwise from the positive x-axis
  `endAngle` - the end angle, measured in radians clockwise from the positive x-axis
  `anticlockwise` - if `true`, the arc is drawn in an anticlockwise direction

#### arcTo

    public final void arcTo(double x1,
                            double y1,
                            double x2,
                            double y2,
                            double radius)

Adds an arc to the current subpath, connecting it to the current point with a line segment.

Parameters:
  `x1` - the x coordinate of the starting point of the arc
  `y1` - the y coordinate of the starting point of the arc
  `x2` - the x coordinate of the ending point of the arc
  `y2` - the y coordinate of the ending point of the arc
  `radius` - the radius of a circle containing the arc

#### beginPath

    public final void beginPath()

Begins a new path.

#### bezierCurveTo

    public final void bezierCurveTo(double cp1x,
                                    double cp1y,
                                    double cp2x,
                                    double cp2y,
                                    double x,
                                    double y)

Draws a cubic Bézier curve from the current point to the point (x, y), with control points (cp1x, cp1y) and (cp2x, cp2y).

Parameters:
  `cp1x` - the x coordinate of the first control point
  `cp1y` - the y coordinate of the first control point
  `cp2x` - the x coordinate of the second control point
  `cp2y` - the y coordinate of the second control point
  `x` - the x coordinate of the end point
  `y` - the y coordinate of the end point

#### clearRect

    public final void clearRect(double x,
                                double y,
                                double w,
                                double h)

Clears a rectangle.

Parameters:
  `x` - the x coordinate of the rectangle's upper-left corner
  `y` - the y coordinate of the rectangle's upper-left corner
  `w` - the width of the rectangle
  `h` - the height of the rectangle

#### clip

    public final void clip()

Creates a new clipping region from the current path.

#### closePath

    public final void closePath()

Closes the current path.

#### createImageData

    public final ImageData createImageData(ImageData imagedata)

Creates an image data object of the same size as the given object.

Parameters:
  `imagedata` - an `ImageData` object
Returns:
  a new `ImageData` object

#### createImageData

    public final ImageData createImageData(int w,
                                           int h)

Creates an image data object of the given size.

Parameters:
  `w` - the width of the image
  `h` - the height of the image
Returns:
  an `ImageData` object

#### createLinearGradient

    public final CanvasGradient createLinearGradient(double x0,
                                                     double y0,
                                                     double x1,
                                                     double y1)

Creates a linear gradient.

Parameters:
  `x0` - the x coordinate of the starting point of the gradient
  `y0` - the y coordinate of the starting point of the gradient
  `x1` - the x coordinate of the ending point of the gradient
  `y1` - the y coordinate of the ending point of the gradient
Returns:
  a `CanvasGradient` object

#### createPattern

    public final CanvasPattern createPattern(CanvasElement image,
                                             Context2d.Repetition repetition)

Creates a pattern from another canvas.

Parameters:
  `image` - an `CanvasElement` object
  `repetition` - a `Context2d.Repetition` object
Returns:
  a `CanvasPattern` object

#### createPattern

    public final CanvasPattern createPattern(CanvasElement image,
                                             java.lang.String repetition)

Creates a pattern from another canvas.

Parameters:
  `image` - an `CanvasElement` object
  `repetition` - the repetition type as a String
Returns:
  a `CanvasPattern` object

#### createPattern

    public final CanvasPattern createPattern(ImageElement image,
                                             Context2d.Repetition repetition)

Creates a pattern from an image.

Parameters:
  `image` - an `ImageElement` object
  `repetition` - a `Context2d.Repetition` object
Returns:
  a `CanvasPattern` object

#### createPattern

    public final CanvasPattern createPattern(ImageElement image,
                                             java.lang.String repetition)

Creates a pattern from an image.

Parameters:
  `image` - an `ImageElement` object
  `repetition` - the repetition type as a String
Returns:
  a `CanvasPattern` object

#### createRadialGradient

    public final CanvasGradient createRadialGradient(double x0,
                                                     double y0,
                                                     double r0,
                                                     double x1,
                                                     double y1,
                                                     double r1)

Creates a radial gradient.

Parameters:
  `x0` - the x coordinate of the center of the start circle of the gradient
  `y0` - the y coordinate of the center of the start circle of the gradient
  `r0` - the radius of the start circle of the gradient
  `x1` - the x coordinate of the center of the end circle of the gradient
  `y1` - the y coordinate of the center of the end circle of the gradient
  `r1` - the radius of the end circle of the gradient
Returns:
  a `CanvasGradient` object

#### drawImage

    public final void drawImage(CanvasElement image,
                                double dx,
                                double dy)

Draws an image.

Parameters:
  `image` - an `CanvasElement` object
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle

#### drawImage

    public final void drawImage(CanvasElement image,
                                double dx,
                                double dy,
                                double dw,
                                double dh)

Draws a scaled image.

Parameters:
  `image` - an `CanvasElement` object
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle
  `dw` - the width of the destination rectangle
  `dh` - the height of the destination rectangle

#### drawImage

    public final void drawImage(CanvasElement image,
                                double sx,
                                double sy,
                                double sw,
                                double sh,
                                double dx,
                                double dy,
                                double dw,
                                double dh)

Draws a scaled subset of an image.

Parameters:
  `image` - an `CanvasElement` object
  `sx` - the x coordinate of the upper-left corner of the source rectangle
  `sy` - the y coordinate of the upper-left corner of the source rectangle
  `sw` - the width of the source rectangle
  `sh` - the width of the source rectangle
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle
  `dw` - the width of the destination rectangle
  `dh` - the height of the destination rectangle

#### drawImage

    public final void drawImage(ImageElement image,
                                double dx,
                                double dy)

Draws an image.

Parameters:
  `image` - an `ImageElement` object
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle

#### drawImage

    public final void drawImage(ImageElement image,
                                double dx,
                                double dy,
                                double dw,
                                double dh)

Draws a scaled image.

Parameters:
  `image` - an `ImageElement` object
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle
  `dw` - the width of the destination rectangle
  `dh` - the height of the destination rectangle

#### drawImage

    public final void drawImage(ImageElement image,
                                double sx,
                                double sy,
                                double sw,
                                double sh,
                                double dx,
                                double dy,
                                double dw,
                                double dh)

Draws a scaled subset of an image.

Parameters:
  `image` - an `ImageElement` object
  `sx` - the x coordinate of the upper-left corner of the source rectangle
  `sy` - the y coordinate of the upper-left corner of the source rectangle
  `sw` - the width of the source rectangle
  `sh` - the width of the source rectangle
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle
  `dw` - the width of the destination rectangle
  `dh` - the height of the destination rectangle

#### drawImage

    public final void drawImage(VideoElement image,
                                double dx,
                                double dy)

Draws a video's current frame.

Parameters:
  `image` - a `VideoElement` object
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle

#### drawImage

    public final void drawImage(VideoElement image,
                                double dx,
                                double dy,
                                double dw,
                                double dh)

Draws a scaled video's current frame.

Parameters:
  `image` - a `VideoElement` object
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle
  `dw` - the width of the destination rectangle
  `dh` - the height of the destination rectangle

#### drawImage

    public final void drawImage(VideoElement image,
                                double sx,
                                double sy,
                                double sw,
                                double sh,
                                double dx,
                                double dy,
                                double dw,
                                double dh)

Draws a scaled subset of a video's current frame.

Parameters:
  `image` - a `VideoElement` object
  `sx` - the x coordinate of the upper-left corner of the source rectangle
  `sy` - the y coordinate of the upper-left corner of the source rectangle
  `sw` - the width of the source rectangle
  `sh` - the width of the source rectangle
  `dx` - the x coordinate of the upper-left corner of the destination rectangle
  `dy` - the y coordinate of the upper-left corner of the destination rectangle
  `dw` - the width of the destination rectangle
  `dh` - the height of the destination rectangle

#### fill

    public final void fill()

Fills the current path.

#### fillRect

    public final void fillRect(double x,
                               double y,
                               double w,
                               double h)

Fills a rectangle.

Parameters:
  `x` - the x coordinate of the rectangle's upper-left corner
  `y` - the y coordinate of the rectangle's upper-left corner
  `w` - the width of the rectangle
  `h` - the height of the rectangle

#### fillText

    public final void fillText(java.lang.String text,
                               double x,
                               double y)

Draws filled text.

Parameters:
  `text` - the text as a String
  `x` - the x coordinate of the text position
  `y` - the y coordinate of the text position

#### fillText

    public final void fillText(java.lang.String text,
                               double x,
                               double y,
                               double maxWidth)

Draws filled text squeezed into the given max width.

Parameters:
  `text` - the text as a String
  `x` - the x coordinate of the text position
  `y` - the y coordinate of the text position
  `maxWidth` - the maximum width for the text

#### getCanvas

    public final CanvasElement getCanvas()

Gets this context's canvas.

Returns:
  a `CanvasElement` object

#### getFillStyle

    public final FillStrokeStyle getFillStyle()

Returns the context's fillStyle. In dev mode, the returned object will be wrapped in a JavaScript array.

Returns:
  a `FillStrokeStyle` object
See Also:
  `setFillStyle(FillStrokeStyle)`, `setFillStyle(String)`, `CssColor`

#### getFont

    public final java.lang.String getFont()

Gets this context's font.

Returns:
  the font name as a String
See Also:
  `setFont(String)`

#### getGlobalAlpha

    public final double getGlobalAlpha()

Gets the global alpha value.

Returns:
  the global alpha value as a double
See Also:
  `setGlobalAlpha(double)`

#### getGlobalCompositeOperation

    public final java.lang.String getGlobalCompositeOperation()

Gets the global composite operation.

Returns:
  the global composite operation as a String
See Also:
  `setGlobalCompositeOperation(Composite)`, `setGlobalCompositeOperation(String)`

#### getImageData

    public final ImageData getImageData(double sx,
                                        double sy,
                                        double sw,
                                        double sh)

Returns an image data object for the screen area denoted by sx, sy, sw and sh.

Parameters:
  `sx` - the x coordinate of the upper-left corner of the desired area
  `sy` - the y coordinate of the upper-left corner of the desired area
  `sw` - the width of the desired area
  `sh` - the height of the desired area
Returns:
  an `ImageData` object containing screen pixel data

#### getLineCap

    public final java.lang.String getLineCap()

Gets the current line-cap style.

Returns:
  the line cap style as a String
See Also:
  `setLineCap(LineCap)`, `setLineCap(String)`

#### getLineJoin

    public final java.lang.String getLineJoin()

Gets the current line-join style.

Returns:
  the line join style as a String
See Also:
  `setLineJoin(LineJoin)`, `setLineJoin(String)`

#### getLineWidth

    public final double getLineWidth()

Gets the current line-width.

Returns:
  the line width as a double
See Also:
  `setLineWidth(double)`

#### getMiterLimit

    public final double getMiterLimit()

Gets the current miter-limit.

Returns:
  the miter limit as a double
See Also:
  `setMiterLimit(double)`

#### getShadowBlur

    public final double getShadowBlur()

Gets the current shadow-blur.

Returns:
  the shadow blur amount as a double
See Also:
  `setShadowBlur(double)`

#### getShadowColor

    public final java.lang.String getShadowColor()

Gets the current shadow color.

Returns:
  the shadow color as a String
See Also:
  `setShadowColor(String)`

#### getShadowOffsetX

    public final double getShadowOffsetX()

Gets the current x-shadow-offset.

Returns:
  the shadow x offset as a double
See Also:
  `setShadowOffsetX(double)`, `getShadowOffsetY()`

#### getShadowOffsetY

    public final double getShadowOffsetY()

Gets the current y-shadow-offset.

Returns:
  the shadow y offset as a double
See Also:
  `setShadowOffsetY(double)`, `getShadowOffsetX()`

#### getStrokeStyle

    public final FillStrokeStyle getStrokeStyle()

Returns the context's strokeStyle. In dev mode, the returned object will be wrapped in a JavaScript array.

Returns:
  the stroke style as a `FillStrokeStyle` object
See Also:
  `setStrokeStyle(FillStrokeStyle)`, `setStrokeStyle(String)`, `CssColor`

#### getTextAlign

    public final java.lang.String getTextAlign()

Gets the current text align.

Returns:
  the text align as a String
See Also:
  `setTextAlign(TextAlign)`, `setTextAlign(String)`

#### getTextBaseline

    public final java.lang.String getTextBaseline()

Gets the current text baseline.

Returns:
  the text baseline as a String
See Also:
  `setTextBaseline(TextBaseline)`, `setTextBaseline(String)`

#### isPointInPath

    public final boolean isPointInPath(double x,
                                       double y)

Returns true if the given point is in the current path.

Parameters:
  `x` - the x coordinate of the point to test.
  `y` - the y coordinate of the point to test.
Returns:
  `true` if the given point is in the current path.

#### lineTo

    public final void lineTo(double x,
                             double y)

Adds a line from the current point to the point (x, y) to the current path.

Parameters:
  `x` - the x coordinate of the line endpoint
  `y` - the y coordinate of the line endpoint

#### measureText

    public final TextMetrics measureText(java.lang.String text)

Returns the metrics for the given text.

Parameters:
  `text` - the text to measure, as a String
Returns:
  a `TextMetrics` object

#### moveTo

    public final void moveTo(double x,
                             double y)

Terminates the current path and sets the current path position to the point (x, y).

Parameters:
  `x` - the x coordinate of the new position
  `y` - the y coordinate of the new position

#### putImageData

    public final void putImageData(ImageData imagedata,
                                   double x,
                                   double y)

Draws the given image data at the given screen position.

Parameters:
  `imagedata` - an `ImageData` instance to be written to the screen
  `x` - the x coordinate of the upper-left corner at which to draw
  `y` - the y coordinate of the upper-left corner at which to draw

#### quadraticCurveTo

    public final void quadraticCurveTo(double cpx,
                                       double cpy,
                                       double x,
                                       double y)

Draws a quadratic Bézier curve from the current point to the point (x, y), with control point (cpx, cpy).

Parameters:
  `cpx` - the x coordinate of the control point
  `cpy` - the y coordinate of the control point
  `x` - the x coordinate of the end point
  `y` - the y coordinate of the end point

#### rect

    public final void rect(double x,
                           double y,
                           double w,
                           double h)

Creates a new rectangular path.

Parameters:
  `x` - the x coordinate of the rectangle's upper-left corner
  `y` - the y coordinate of the rectangle's upper-left corner
  `w` - the width of the rectangle
  `h` - the height of the rectangle

#### restore

    public final void restore()

Restores the context's state.

#### rotate

    public final void rotate(double angle)

Applies rotation to the current transform.

Parameters:
  `angle` - the clockwise rotation angle, in radians

#### save

    public final void save()

Saves the context's state.

#### scale

    public final void scale(double x,
                            double y)

Applies scale to the current transform.

Parameters:
  `x` - the scale factor along the x-axis
  `y` - the scale factor along the y-axis

#### setFillStyle

    public final void setFillStyle(FillStrokeStyle fillStyle)

Sets the context's fillStyle.

Parameters:
  `fillStyle` - the fill style to set.
See Also:
  `getFillStyle()`, `CssColor`

#### setFillStyle

    public final void setFillStyle(java.lang.String fillStyleColor)

Convenience method to set the context's fillStyle to a `CssColor`, specified in String form.

Parameters:
  `fillStyleColor` - the color as a String
See Also:
  `getFillStyle()`

#### setFont

    public final void setFont(java.lang.String f)

Sets the font.

Parameters:
  `f` - the font name as a String
See Also:
  `getFont()`

#### setGlobalAlpha

    public final void setGlobalAlpha(double alpha)

Sets the global alpha value.

Parameters:
  `alpha` - the global alpha value as a double
See Also:
  `getGlobalAlpha()`

#### setGlobalCompositeOperation

    public final void setGlobalCompositeOperation(Context2d.Composite composite)

Sets the global composite operation.

Parameters:
  `composite` - a `Context2d.Composite` value
See Also:
  `getGlobalCompositeOperation()`

#### setGlobalCompositeOperation

    public final void setGlobalCompositeOperation(java.lang.String globalCompositeOperation)

Sets the global composite operation.

Parameters:
  `globalCompositeOperation` - the operation as a String
See Also:
  `getGlobalCompositeOperation()`

#### setLineCap

    public final void setLineCap(Context2d.LineCap lineCap)

Sets the line-cap style.

Parameters:
  `lineCap` - the line cap style as a `Context2d.LineCap` value
See Also:
  `getLineCap()`

#### setLineCap

    public final void setLineCap(java.lang.String lineCap)

Sets the line-cap style.

Parameters:
  `lineCap` - the line cap style as a String
See Also:
  `getLineCap()`

#### setLineJoin

    public final void setLineJoin(Context2d.LineJoin lineJoin)

Sets the line-join style.

Parameters:
  `lineJoin` - the line join style as a `Context2d.LineJoin` value
See Also:
  `getLineJoin()`

#### setLineJoin

    public final void setLineJoin(java.lang.String lineJoin)

Sets the line-join style.

Parameters:
  `lineJoin` - the ling join style as a String
See Also:
  `getLineJoin()`

#### setLineWidth

    public final void setLineWidth(double lineWidth)

Sets the line-width.

Parameters:
  `lineWidth` - the line width as a double
See Also:
  `getMiterLimit()`, `getLineWidth()`

#### setMiterLimit

    public final void setMiterLimit(double miterLimit)

Sets the miter-limit.

Parameters:
  `miterLimit` - the miter limit as a double
See Also:
  `getMiterLimit()`

#### setShadowBlur

    public final void setShadowBlur(double shadowBlur)

Sets the shadow-blur.

Parameters:
  `shadowBlur` - the amount of blur as a double
See Also:
  `getShadowBlur()`

#### setShadowColor

    public final void setShadowColor(java.lang.String shadowColor)

Sets the shadow-color.

Parameters:
  `shadowColor` - the shadow color as a String
See Also:
  `getShadowColor()`

#### setShadowOffsetX

    public final void setShadowOffsetX(double shadowOffsetX)

Sets the x-shadow-offset.

Parameters:
  `shadowOffsetX` - the x shadow offset
See Also:
  `getShadowOffsetX()`, `getShadowOffsetY()`

#### setShadowOffsetY

    public final void setShadowOffsetY(double shadowOffsetY)

Sets the y-shadow-offset.

Parameters:
  `shadowOffsetY` - the y shadow offset
See Also:
  `getShadowOffsetX()`, `getShadowOffsetY()`

#### setStrokeStyle

    public final void setStrokeStyle(FillStrokeStyle strokeStyle)

Sets the context's stroke style.

Parameters:
  `strokeStyle` - the stroke style to set
See Also:
  `getStrokeStyle()`, `CssColor`

#### setStrokeStyle

    public final void setStrokeStyle(java.lang.String strokeStyleColor)

Convenience method to set the context's strokeStyle to a `CssColor`.

Parameters:
  `strokeStyleColor` - the stroke color as a String
See Also:
  `getStrokeStyle()`

#### setTextAlign

    public final void setTextAlign(java.lang.String align)

Sets the text alignment.

Parameters:
  `align` - the alignment setting as a String
See Also:
  `getTextAlign()`

#### setTextAlign

    public final void setTextAlign(Context2d.TextAlign align)

Sets the text alignment.

Parameters:
  `align` - the alignment setting as a `Context2d.TextAlign` value
See Also:
  `getTextAlign()`

#### setTextBaseline

    public final void setTextBaseline(java.lang.String baseline)

Sets the text baseline.

Parameters:
  `baseline` - the baseline setting as a String
See Also:
  `getTextBaseline()`

#### setTextBaseline

    public final void setTextBaseline(Context2d.TextBaseline baseline)

Sets the text baseline.

Parameters:
  `baseline` - a the baseline setting as a `Context2d.TextBaseline` value
See Also:
  `getTextBaseline()`

#### setTransform

    public final void setTransform(double m11,
                                   double m12,
                                   double m21,
                                   double m22,
                                   double dx,
                                   double dy)

Sets the 2D transformation matrix.

Parameters:
  `m11` - the value at position (1, 1) of the matrix
  `m12` - the value at position (1, 2) of the matrix
  `m21` - the value at position (2, 1) of the matrix
  `m22` - the value at position (2, 2) of the matrix
  `dx` - the x translation value
  `dy` - the y translation value

#### stroke

    public final void stroke()

Draws the current path with the current stroke style.

#### strokeRect

    public final void strokeRect(double x,
                                 double y,
                                 double w,
                                 double h)

Draws the outline of a rectangle with the current stroke style.

Parameters:
  `x` - the x coordinate of the rectangle's upper-left corner
  `y` - the y coordinate of the rectangle's upper-left corner
  `w` - the width of the rectangle
  `h` - the height of the rectangle

#### strokeText

    public final void strokeText(java.lang.String text,
                                 double x,
                                 double y)

Draws the text outline.

Parameters:
  `text` - the text as a String
  `x` - the x coordinate of the text position
  `y` - the y coordinate of the text position

#### strokeText

    public final void strokeText(java.lang.String text,
                                 double x,
                                 double y,
                                 double maxWidth)

Draws the text outline, squeezing the text into the given max width by compressing the font.

Parameters:
  `text` - the text as a String
  `x` - the x coordinate of the text position
  `y` - the y coordinate of the text position
  `maxWidth` - the maximum width for the text

#### transform

    public final void transform(double m11,
                                double m12,
                                double m21,
                                double m22,
                                double dx,
                                double dy)

Multiplies the current transform by the given matrix.

Parameters:
  `m11` - the value at position (1, 1) of the matrix
  `m12` - the value at position (1, 2) of the matrix
  `m21` - the value at position (2, 1) of the matrix
  `m22` - the value at position (2, 2) of the matrix
  `dx` - the x translation value
  `dy` - the y translation value

#### translate

    public final void translate(double x,
                                double y)

Applies a translation to the current transform.

Parameters:
  `x` - the amount of translation along the x-axis
  `y` - the amount of translation along the y-axis