blob: eb107e81c6f62888f713328eca6d2c3c0f7413ba [file] [log] [blame]
<!DOCTYPE html>
<html>
<script src="../../resources/run-after-layout-and-paint.js"></script>
<style>
canvas { transform: translateZ(0); }
img, canvas { margin: 5px; width: 48% }
</style>
<body style="overflow: hidden">
<!-- The _blue_ sector of the <img> image should be at 12 o'clock. -->
<img>
<!-- The red sector of the <canvas> image should be at 12 o'clock. -->
<canvas></canvas>
</body>
<script>
window.onload = function() {
var image = document.querySelector('img');
image.onload = function() {
runAfterLayoutAndPaint(window.testRunner ? changeColorProfile : profileChanged);
};
image.src = 'resources/red-at-12-oclock-with-color-profile.jpg';
};
function changeColorProfile() {
window.testRunner.setColorProfile('colorSpin', profileChanged);
}
function profileChanged() {
setTimeout(drawImagePatternToCanvas, 0);
}
function drawImagePatternToCanvas() {
var canvas = document.querySelector('canvas');
var ctx = canvas.getContext('2d');
var pattern = ctx.createPattern(document.querySelector('img'), null);
var scale = 0.1870;
ctx.clearRect(0, 0, canvas.width = 300, canvas.height = 300);
ctx.save();
ctx.scale(scale, scale);
ctx.fillStyle = pattern;
ctx.fillRect(0, 0, canvas.width / scale, canvas.height / scale);
ctx.restore();
if (window.testRunner)
window.testRunner.notifyDone();
}
if (window.testRunner) {
testRunner.dumpAsTextWithPixelResults();
testRunner.waitUntilDone();
}
</script>
</html>