2022-02-15 22:40:51 +03:30
|
|
|
#import <HTML/HTMLCanvasElement.idl>
|
|
|
|
#import <HTML/HTMLImageElement.idl>
|
|
|
|
#import <HTML/ImageData.idl>
|
|
|
|
#import <HTML/TextMetrics.idl>
|
|
|
|
#import <HTML/CanvasGradient.idl>
|
|
|
|
|
2020-06-22 18:39:22 +02:00
|
|
|
interface CanvasRenderingContext2D {
|
|
|
|
|
2020-12-09 21:32:04 +00:00
|
|
|
undefined fillRect(double x, double y, double w, double h);
|
|
|
|
undefined strokeRect(double x, double y, double w, double h);
|
2021-03-15 19:40:42 +01:00
|
|
|
undefined clearRect(double x, double y, double w, double h);
|
2020-06-22 18:39:22 +02:00
|
|
|
|
2020-12-09 21:32:04 +00:00
|
|
|
undefined scale(double x, double y);
|
|
|
|
undefined translate(double x, double y);
|
|
|
|
undefined rotate(double radians);
|
2020-06-22 18:39:22 +02:00
|
|
|
|
2020-12-09 21:32:04 +00:00
|
|
|
undefined beginPath();
|
|
|
|
undefined closePath();
|
2021-04-14 23:25:23 +03:00
|
|
|
undefined fill(optional DOMString fillRule = "nonzero");
|
2020-12-09 21:32:04 +00:00
|
|
|
undefined stroke();
|
|
|
|
undefined moveTo(double x, double y);
|
|
|
|
undefined lineTo(double x, double y);
|
|
|
|
undefined quadraticCurveTo(double cpx, double cpy, double x, double y);
|
2022-02-03 20:01:19 +01:00
|
|
|
undefined bezierCurveTo(double cp1x, double cp1y, double cp2x, double cp2y, double x, double y);
|
2021-04-15 18:41:13 +04:30
|
|
|
|
|
|
|
undefined arc(double x, double y, double radius, double startAngle, double endAngle, optional boolean counterclockwise = false);
|
|
|
|
undefined ellipse(double x, double y, double radiusX, double radiusY, double rotation, double startAngle, double endAngle, optional boolean counterclockwise = false);
|
2021-04-14 23:29:14 +03:00
|
|
|
undefined rect(double x, double y, double width, double height);
|
2020-06-22 18:39:22 +02:00
|
|
|
|
2021-04-15 20:36:10 +03:00
|
|
|
undefined fillText(DOMString text, double x, double y, optional double maxWidth);
|
2022-02-03 20:09:57 +01:00
|
|
|
undefined strokeText(DOMString text, double x, double y, optional double maxWidth);
|
2021-04-15 20:36:10 +03:00
|
|
|
|
2022-03-04 19:02:10 +01:00
|
|
|
undefined drawImage((HTMLImageElement or HTMLCanvasElement) image, double dx, double dy);
|
2022-03-05 20:54:22 +02:00
|
|
|
undefined drawImage((HTMLImageElement or HTMLCanvasElement) image, double dx, double dy, double dw, double dh);
|
|
|
|
undefined drawImage((HTMLImageElement or HTMLCanvasElement) image, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh);
|
2020-06-22 18:39:22 +02:00
|
|
|
|
|
|
|
attribute DOMString fillStyle;
|
|
|
|
attribute DOMString strokeStyle;
|
|
|
|
attribute double lineWidth;
|
|
|
|
|
2022-03-04 19:05:24 +01:00
|
|
|
ImageData createImageData(long sw, long sh);
|
2022-03-04 19:07:35 +01:00
|
|
|
ImageData getImageData(long sx, long sy, long sw, long sh);
|
2020-12-09 21:32:04 +00:00
|
|
|
undefined putImageData(ImageData imagedata, double dx, double dy);
|
2020-06-22 18:39:22 +02:00
|
|
|
|
2021-12-27 14:31:23 +01:00
|
|
|
undefined save();
|
2021-12-27 14:32:31 +01:00
|
|
|
undefined restore();
|
2021-12-27 14:33:36 +01:00
|
|
|
undefined reset();
|
2021-12-27 14:35:38 +01:00
|
|
|
boolean isContextLost();
|
2021-12-27 14:31:23 +01:00
|
|
|
|
2020-06-22 18:39:22 +02:00
|
|
|
readonly attribute HTMLCanvasElement canvas;
|
|
|
|
|
2021-12-30 22:15:38 +00:00
|
|
|
TextMetrics measureText(DOMString text);
|
2022-02-03 20:08:27 +01:00
|
|
|
|
|
|
|
CanvasGradient createRadialGradient(double x0, double y0, double r0, double x1, double y1, double r1);
|
|
|
|
CanvasGradient createLinearGradient(double x0, double y0, double x1, double y1);
|
|
|
|
CanvasGradient createConicGradient(double startAngle, double x, double y);
|
|
|
|
|
2022-04-10 18:46:04 +01:00
|
|
|
// FIXME: All these `double`s should be `unrestricted double`
|
|
|
|
undefined transform(double a, double b, double c, double d, double e, double f);
|
2022-04-10 18:46:30 +01:00
|
|
|
undefined setTransform(double a, double b, double c, double d, double e, double f);
|
2022-04-10 18:47:01 +01:00
|
|
|
undefined resetTransform();
|
2022-04-10 18:46:04 +01:00
|
|
|
|
2022-04-10 18:48:11 +01:00
|
|
|
// undefined clip(optional CanvasFillRule fillRule = "nonzero");
|
|
|
|
// undefined clip(Path2D path, optional CanvasFillRule fillRule = "nonzero");
|
|
|
|
// FIXME: Replace this with the two definitions above.
|
|
|
|
undefined clip();
|
|
|
|
|
2020-12-09 21:26:42 +00:00
|
|
|
};
|