wechat/canvas

canvas module provides canvas context API bindings details in wechat document

Types

CanvasContext type

pub type CanvasContext

Values

pub fn cancel_animation_frame(request_id i: Int) -> Nil

wx.cancelAnimationFrame Cancel animation frame

pub fn canvas_arc(
  ctx: CanvasContext,
  x: Float,
  y: Float,
  radius: Float,
  start_angle: Float,
  end_angle: Float,
  anticlockwise: Bool,
) -> Nil

CanvasContext.arc

pub fn canvas_arc_to(
  ctx: CanvasContext,
  x1: Float,
  y1: Float,
  x2: Float,
  y2: Float,
  radius: Float,
) -> Nil

CanvasContext.arcTo

pub fn canvas_begin_path(ctx: CanvasContext) -> Nil

CanvasContext.beginPath

pub fn canvas_bezier_curve_to(
  ctx: CanvasContext,
  cp1_x: Float,
  cp1_y: Float,
  cp2_x: Float,
  cp2_y: Float,
  ep_x: Float,
  ep_y: Float,
) -> Nil

CanvasContext.bezierCurveTo

pub fn canvas_clear_rect(
  ctx: CanvasContext,
  x: Float,
  y: Float,
  width: Float,
  height: Float,
) -> Nil

CanvasContext.clearRect

pub fn canvas_draw(ctx: CanvasContext, reserve: Bool) -> Nil

CanvasContext.draw

pub fn canvas_draw_image(
  ctx: CanvasContext,
  img_source: object.JsObject,
  sx: Float,
  sy: Float,
  sw: Float,
  sh: Float,
  dx: Float,
  dy: Float,
  dwidth: Float,
  dheight: Float,
) -> Nil

CanvasContext.drawImage

pub fn canvas_fill_rect(
  ctx: CanvasContext,
  x: Float,
  y: Float,
  width: Float,
  height: Float,
) -> Nil

CanvasContext.fillRect

pub fn canvas_fill_text(
  ctx: CanvasContext,
  text: String,
  x: Float,
  y: Float,
  max_width: Float,
) -> Nil

CanvasContext.fillText

pub fn canvas_get_image_data(
  canvas_id c: String,
  x x: Float,
  y y: Float,
  width w: Float,
  height h: Float,
  complete cb: fn(object.JsObject) -> Nil,
) -> promise.Promise(object.JsObject)

wx.canvasGetImageData Get image data from canvas

pub fn canvas_line_to(
  ctx: CanvasContext,
  x: Float,
  y: Float,
) -> Nil

CanvasContext.lineTo

pub fn canvas_measure_text(
  ctx: CanvasContext,
  text: String,
) -> object.JsObject

CanvasContext.measureText

pub fn canvas_move_to(
  ctx: CanvasContext,
  x: Float,
  y: Float,
) -> Nil

CanvasContext.moveTo

pub fn canvas_put_image_data(
  canvas_id c: String,
  data d: object.JsObject,
  x x: Float,
  y y: Float,
  width w: Float,
  height h: Float,
) -> Nil

wx.canvasPutImageData Put image data onto canvas

pub fn canvas_quadratic_curve_to(
  ctx: CanvasContext,
  control_point_x: Float,
  control_point_y: Float,
  end_point_x: Float,
  end_point_y: Float,
) -> Nil

CanvasContext.quadraticCurveTo

pub fn canvas_restore(ctx: CanvasContext) -> Nil

CanvasContext.restore

pub fn canvas_rotate(ctx: CanvasContext, angle: Float) -> Nil

CanvasContext.rotate

pub fn canvas_save(ctx: CanvasContext) -> Nil

CanvasContext.save

pub fn canvas_scale(
  ctx: CanvasContext,
  sx: Float,
  sy: Float,
) -> Nil

CanvasContext.scale

pub fn canvas_set_fill_style(
  ctx: CanvasContext,
  color: String,
) -> Nil

CanvasContext.fillStyle

pub fn canvas_set_line_cap(
  ctx: CanvasContext,
  line_cap: String,
) -> Nil

CanvasContext.setLineCap

pub fn canvas_set_line_dash(
  ctx: CanvasContext,
  pattern: List(Int),
) -> Nil

CanvasContext.setLineDash

pub fn canvas_set_line_join(
  ctx: CanvasContext,
  line_join: String,
) -> Nil

CanvasContext.setLineJoin

pub fn canvas_set_line_width(
  ctx: CanvasContext,
  width: Float,
) -> Nil

CanvasContext.setLineWidth

pub fn canvas_set_miter_limit(
  ctx: CanvasContext,
  miter: Float,
) -> Nil

CanvasContext.setMiterLimit

pub fn canvas_set_shadow(
  ctx: CanvasContext,
  color: String,
  blur: Float,
  offset_x: Float,
  offset_y: Float,
) -> Nil

CanvasContext.setShadow

pub fn canvas_stroke_rect(
  ctx: CanvasContext,
  x: Float,
  y: Float,
  width: Float,
  height: Float,
) -> Nil

CanvasContext.strokeRect

pub fn canvas_stroke_text(
  ctx: CanvasContext,
  text: String,
  x: Float,
  y: Float,
  max_width: Float,
) -> Nil

CanvasContext.strokeText

pub fn canvas_to_temp_file_path(
  canvas_id c: String,
  file_type ft: String,
  quality q: Float,
  complete cb: fn(object.JsObject) -> Nil,
) -> promise.Promise(object.JsObject)

wx.canvasToTempFilePath Export canvas to temporary file path

pub fn canvas_transform(
  ctx: CanvasContext,
  a: Float,
  b: Float,
  c: Float,
  d: Float,
  e: Float,
  f: Float,
) -> Nil

CanvasContext.transform

pub fn canvas_translate(
  ctx: CanvasContext,
  dx: Float,
  dy: Float,
) -> Nil

CanvasContext.translate

pub fn create_canvas_context(canvas_id: String) -> CanvasContext

wx.createCanvasContext Create canvas context

pub fn create_image() -> object.JsObject

Canvas Utility Methods

wx.createImage Create an image object

pub fn create_image_data(
  width w: Float,
  height h: Float,
) -> object.JsObject

wx.createImageData Create an ImageData object

pub fn create_offscreen_canvas(
  options o: object.JsObject,
) -> object.JsObject

Phase 16: Canvas Advanced

Canvas Creation

wx.createOffscreenCanvas Create an offscreen canvas

pub fn create_path_2d() -> object.JsObject

wx.createPath2D Create a Path2D object

pub fn request_animation_frame(
  callback cb: fn(object.JsObject) -> Nil,
) -> Int

wx.requestAnimationFrame Request animation frame

Search Document