Spec-Zone.ru › Dart 2

dart:html

Метод drawImageToRect

void drawImageToRect(
  1. CanvasImageSource source,
  2. Rectangle<num> destRect,
  3. {Rectangle<num>? sourceRect}
)

Отображает изображение из CanvasImageSource в область этого холста.

Изображение будет отображено в области этого холста, определенной destRect. sourceRect определяет область исходного изображения, которое отображается. Если sourceRect не предоставлено, то всё прямоугольное изображение из source будет отображено в этом контексте.

Если изображение больше, чем позволяет холст, изображение будет обрезано, чтобы поместиться в доступное пространство.

CanvasElement canvas = new CanvasElement(width: 600, height: 600);
CanvasRenderingContext2D ctx = canvas.context2D;
ImageElement img = document.query('img');
img.width = 100;
img.height = 100;

// Scale the image to 20x20.
ctx.drawImageToRect(img, new Rectangle(50, 50, 20, 20));

VideoElement video = document.query('video');
video.width = 100;
video.height = 100;
// Take the middle 20x20 pixels from the video and stretch them.
ctx.drawImageToRect(video, new Rectangle(50, 50, 100, 100),
    sourceRect: new Rectangle(40, 40, 20, 20));

// Draw the top 100x20 pixels from the otherCanvas.
CanvasElement otherCanvas = document.query('canvas');
ctx.drawImageToRect(otherCanvas, new Rectangle(0, 0, 100, 20),
    sourceRect: new Rectangle(0, 0, 100, 20));

См. также:

  • CanvasImageSource для получения дополнительной информации о данных, получаемых из source.
  • drawImage из WHATWG.

Реализация

void drawImageToRect(CanvasImageSource source, Rectangle destRect,
    {Rectangle? sourceRect}) {
  if (sourceRect == null) {
    drawImageScaled(
        source, destRect.left, destRect.top, destRect.width, destRect.height);
  } else {
    drawImageScaledFromSource(
        source,
        sourceRect.left,
        sourceRect.top,
        sourceRect.width,
        sourceRect.height,
        destRect.left,
        destRect.top,
        destRect.width,
        destRect.height);
  }
}

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-html/CanvasRenderingContext2D/drawImageToRect.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API