canvas做的图片查看器1

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了canvas做的图片查看器1相关的知识,希望对你有一定的参考价值。

效果图

技术分享

html结构

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<title>Canvas</title>

<link rel="stylesheet" href="">

<style>

body{

background-color: #000;

}


#canvas{

display: block;

margin: 0 auto;

border: 1px solid #aaa;

}


.range-style{

display: block;

margin: 20px auto;

width: 800px;

}


.watermark-canvas-style{

display: block;

margin: 0 auto;

border: 1px solid #aaa;

}

</style>

</head>

<body>

<canvas id="canvas"></canvas>

<input type="range" class="range-style" id="scale-range" min="0.5" max="3.0" step = "0.01" value="0.5">

<canvas id="watermark-canvas" class="watermark-canvas-style"></canvas>

</body>

</html>

js脚本

<script>

var canvas = document.getElementById("canvas");

var slider = document.getElementById("scale-range");

var watermarkCanvas = document.getElementById("watermark-canvas");


var context = canvas.getContext("2d");

var watermarkContext = watermarkCanvas.getContext("2d");


var image = new Image();


window.onload = function(){

canvas.width = 600;

canvas.height = 450;


var scale = slider.value;

console.log(scale);


image.src = "20170122161717.png";

image.onload = function(){

// context.drawImage(image,0,0,canvas.width,canvas.height);

drawImageByScale(scale);


slider. = function(){

scale = slider.value;

drawImageByScale(scale);

}

}


watermarkCanvas.width = 500;

watermarkCanvas.height = 100;


watermarkContext.font = "bold 50px Arial";

watermarkContext.fillStyle = "rgba(255,255,255,0.5)";

watermarkContext.textBaseline = "middle";

watermarkContext.fillText("%:)%yunshuo%:)%",20,50);

}



function drawImageByScale(scale){

var imageWidth = 600 * scale;

var imageHeight = 450 * scale;


// var sx = imageWidth / 2 - canvas.width / 2;

// var sy = imageHeight / 2 - canvas.height / 2;


// context.drawImage(image,sx,sy,canvas.width,canvas.height,0,0,canvas.width,canvas.height);

var dx = canvas.width / 2 - imageWidth / 2;

var dy = canvas.height / 2 - imageHeight / 2;

context.clearRect(0,0,canvas.width,canvas.height);

context.drawImage(image,dx,dy,imageWidth,imageHeight);

context.drawImage(watermarkCanvas,canvas.width - watermarkCanvas.width,canvas.height - watermarkCanvas.height);


}


</script>


本文出自 “素颜” 博客,请务必保留此出处http://suyanzhu.blog.51cto.com/8050189/1893939

以上是关于canvas做的图片查看器1的主要内容,如果未能解决你的问题,请参考以下文章

viewer 图片查看器,图片显示不全和第二次图片查看无法初始化的bug

Visual Studio2010(VS)--图片查看器(2)

电脑中没有图片查看器怎么办?

win10图片查看器怎么连续看图?

windows 照片查看器无法打开图片

js 图片查看器