Browse Source

Fixed cairo_set_source_surface() point due to scale

v1.x
Tj Holowaychuk 15 years ago
parent
commit
b05b5fc154
  1. 9
      src/CanvasRenderingContext2d.cc

9
src/CanvasRenderingContext2d.cc

@ -457,10 +457,11 @@ Context2d::DrawImage(const Arguments &args) {
// Scale src
if (dw != sw || dh != sh) {
cairo_scale(ctx
, (float) dw / sw
, (float) dh / sh
);
double fx = (double) dw / sw;
double fy = (double) dh / sh;
cairo_scale(ctx, fx, fy);
dx /= fx;
dy /= fy;
}
// TODO: globalAlpha
cairo_set_source_surface(ctx, src, dx, dy);

Loading…
Cancel
Save