前兩天把canvas的translate()和rotate()的方法都介紹了下,今天就來說說scale()
scale() 方法縮放當前繪圖,更大或更小。
注釋:如果您對繪圖進行縮放,所有之後的繪圖也會被縮放。定位也會被縮放。如果您 scale(2,2),那麼繪圖將定位於距離畫布左上角兩倍遠的位置。
scale(x,y)
引數:x:x表示橫軸方向上縮放倍數
y:y表示縱軸方向上縮放的倍數
例1:
lang="en">
charset="utf-8">
title>
canvas
style>
head>
width="800"
height="600">
canvas>
var canvas=document.queryselector('canvas');
var ctx=canvas.getcontext('2d');
//初始圓
ctx.arc(400,300,150,0,2*math.pi);
ctx.stroke();
ctx.beginpath();
ctx.scale(1,0.5);
//橫座標不變,縱座標縮放一半,即改變以後圓心的位置(400,150)
//橫向的半徑不變,縱向的半徑縮小一半,即變為了橢圓
ctx.strokestyle='red';
ctx.arc(400,300,150,0,2*math.pi);
ctx.stroke();
script>
body>
html>
顯示效果:
例2:
lang="en">
charset="utf-8">
title>
canvas
style>
head>
width="800"
height="600">
canvas>
var canvas=document.queryselector('canvas');
var ctx=canvas.getcontext('2d');
//初始圓
ctx.arc(400,300,150,0,2*math.pi);
ctx.stroke();
ctx.beginpath();
ctx.scale(0.5,1);
//縱座標不變,橫座標縮放一半,即改變以後圓心的位置(200,300)
//縱向的半徑不變,橫向的半徑縮小一半,即變為了橢圓
ctx.strokestyle='red';
ctx.arc(400,300,150,0,2*math.pi);
ctx.stroke();
script>
body>
html>
顯示效果:
例3:
lang="en">
charset="utf-8">
title>
canvas
style>
head>
width="800"
height="600">
canvas>
var canvas=document.queryselector('canvas');
var ctx=canvas.getcontext('2d');
//初始圓
ctx.arc(200,200,50,0,2*math.pi);
ctx.stroke();
ctx.beginpath();
ctx.scale(2,2);
//橫縱座標都放大了2倍
//半徑也放大了2倍
ctx.strokestyle='red';
ctx.arc(200,200,50,0,2*math.pi);
ctx.stroke();
script>
body>
html>
顯示效果:
精益畫布 聽過 商業畫布 ,那麼 精益畫布 呢?
初創公司面對著無數的不確定性。eric ries 注 精益創業 作者 今天為大家帶來的是精益畫布入門篇,你了解 精益畫布 嗎?如果你是初次創業,我相信你會獲益匪淺。無論你是創業開端無法起手執行,還是創業路上如無頭蒼蠅亂闖,還是想提高效率理清自己的專案思路,精益畫布都能為你一一解決。首先來看看精益畫布...
商業畫布要素
商業模式分析 細分使用者 為誰創造價值?誰說我們的最重要客戶?價值主張 我們向客戶傳遞什麼樣的價值?我們在幫客戶解決什麼樣的難題?我們正在滿足客戶哪些需求?我們準備提供哪些系列服務和產品?渠道通道 哪些渠道能接觸客戶群體?我們如何接觸他們?我們的渠道如何整合?哪些渠道更有效 成本收益最好?如何把我們...
畫布與水印
建立畫布 在記憶體中存放 img imagecreatetruecolor 200,100 建立顏色 imagecolorallocate 新建乙個真彩色影象,返回乙個影象識別符號,代表了一幅大小為width和height的黑色影象 返回值 成功後返回影象資源,失敗後返回false color im...