blob: bcfff47f37b914e182b6d539f140dbe865d11587 [file] [log] [blame]
<html>
<head>
<style>
img { border: 1px solid black; }
pre { display: inline-block; margin: 5px; }
</style>
<script>
if (window.testRunner)
testRunner.dumpAsText();
function draw()
{
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
ctx.fillStyle = "rgb(200,0,0)";
ctx.fillRect(10, 10, 55, 50);
ctx.fillStyle = "rgba(0, 0, 200, 0.5)";
ctx.fillRect(30, 30, 55, 50);
testToDataURL();
}
// Default list of supported image formats.
var supportedMIMETypes = [
"image/png",
"image/jpeg",
"image/webp",
];
function testToDataURL()
{
// Test supported MIME types
for (var i in supportedMIMETypes) {
testMIMEType(supportedMIMETypes[i]);
}
// Test no MIME type
testMIMEType();
testMIMEType(null);
testMIMEType(undefined);
// Test other formats that we don't support
testMIMEType("image/gif");
testMIMEType("image/x-webkitbitmap");
}
function testMIMEType(mime)
{
var canvas = document.getElementById("canvas");
var hadArgument = arguments.length;
var url;
if (!hadArgument)
url = canvas.toDataURL();
else
url = canvas.toDataURL(mime);
var image = document.createElement("img");
image.src = url;
var usedMIMEType = url.substring(5, url.search(/;/));
document.body.appendChild(image);
var info = document.createElement("pre");
info.appendChild(document.createTextNode("Given MIMEType: " + (hadArgument ? mime : "")));
info.appendChild(document.createTextNode("\n"));
info.appendChild(document.createTextNode("Used MIMEType: " + usedMIMEType));
info.appendChild(document.createTextNode("\n"));
info.appendChild(document.createTextNode((mime == usedMIMEType) ? "MIME types are the SAME." : "MIME types DIFFER."));
info.appendChild(document.createTextNode("\n\n"));
document.body.appendChild(info);
document.body.appendChild(document.createElement("hr"));
}
</script>
</head>
<body onload="draw();">
<canvas id="canvas" width="150" height="150"></canvas> The Actual Canvas <br><hr>
</body>
</html>