style對象微信小程序_微信小程序API繪圖

wx.createContext()

? 創建并返回繪圖上下文context對象。愛掏網 - it200.com

context

? context只是一個記錄方法調用的容器,用于生成記錄繪制行為的actions數組。愛掏網 - it200.comcontext跟不存在對應關系,一個context生成畫布的繪制動作數組可以應用于多個。愛掏網 - it200.com// 假設頁面上有3個畫布

var canvas1Id = 3001;

var canvas2Id = 3002;

var canvas3Id = 3003;

var context = wx.createContext();

[canvas1Id, canvas2Id, canvas3Id].forEach(function(id){

context.clearActions();

// 在context上調用方法

wx.drawCanvas({

canvasId: id,

actions: context.getActions();

});

});

context對象的方法列表:方法 參數 說明getActions 無 獲取當前context上存儲的繪圖動作

clearActions 無 清空當前的存儲繪圖動作

變形

對橫縱坐標進行縮放

對坐標軸進行順時針旋轉

對坐標原點進行縮放

save 無 保存當前坐標軸的縮放、旋轉、平移信息

restore 無 恢復之前保存過的坐標軸的縮放、旋轉、平移信息

繪制

在給定的矩形區域內,清除畫布上的像素

在畫布上繪制被填充的文本

fill 無 對當前路徑進行填充

stroke 無 對當前路徑進行描邊

路徑

把路徑移動到畫布中的指定點,但不創建線條。愛掏網 - it200.com

添加一個新點,然后在畫布中創建從該點到最后指定點的線條。愛掏網 - it200.com

添加一個矩形路徑到當前路徑。愛掏網 - it200.com

添加一個弧形路徑到當前路徑,順時針繪制。愛掏網 - it200.com

樣式

方法詳解:

scale

在調用scale()方法后,之后創建的路徑其橫縱坐標會被縮放。愛掏網 - it200.com多次調用scale,倍數會相乘。愛掏網 - it200.com參數 類型 范圍 說明scaleWidth Number 1=100%,0.5=50%,2=200%,依次類推 橫坐標縮放的倍數

scaleHeight Number 1=100%,0.5=50%,2=200%,依次類推 縱坐標軸縮放的倍數

示例代碼:下載

//scale.js

Page({

onReady:function(e){

var context = wx.createContext();

context.rect(5,5,25,15)

context.stroke();

context.scale(2,2); //再放大2倍

context.rect(5,5,25,15);

context.stroke();

context.scale(2,2); //再放大2倍

context.rect(5,5,25,15)

context.stroke();

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

rotate

以原點為中心,原點可以用translate方法修改。愛掏網 - it200.com順時針旋轉當前坐標軸。愛掏網 - it200.com多次調用rotate,旋轉的角度會疊加。愛掏網 - it200.com參數 類型 范圍 說明rotate Number degrees * Math.PI/180;degrees范圍為0~360 旋轉角度,以弧度計

示例代碼:下載//rotate.js

Page({

onReady:function(e){

var context = wx.createContext();

context.rect(50,50,200,200)

context.stroke();

context.rotate(5*Math.PI/180)

context.rect(50,50,200,200)

context.stroke();

context.rotate(5*Math.PI/180)

context.rect(50,50,200,200)

context.stroke()

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

translate

對當前坐標系的原點(0, 0)進行變換,默認的坐標系原點為頁面左上角。愛掏網 - it200.com參數 類型 范圍 說明x Number 水平坐標平移量

y Number 豎直坐標平移量

示例代碼:下載//translate.js

Page({

onReady:function(){

var context = wx.createContext();

context.rect(50,50,200,200)

context.stroke()

context.translate(50,50)

context.rect(50,50,200,200)

context.stroke();

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

clearRect

清除畫布上在該矩形區域內的內容參數 類型 范圍 說明x Number 矩形區域左上角的x坐標

y Number 矩形區域左上角的y坐標

width Number 矩形區域的寬度

height Number 矩形區域的高度

示例代碼:下載//clearrect.js

Page({

onReady:function(){

var context = wx.createContext();

context.rect(50,50,200,200)

context.fill()

context.clearRect(100,100,50,50)

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

drawImage

繪制圖像,圖像保持原始尺寸。愛掏網 - it200.com參數 類型 范圍 說明imageResource String 通過chooseImage得到一個文件路徑或者一個項目目錄內的圖片 所要繪制的圖片資源

x Number 圖像左上角的x坐標

y Number 圖像左上角的y坐標

示例:下載//drawimage.js

Page({

onReady:function(e){

var context = wx.createContext();

wx.chooseImage({

success:function(res){

context.drawImage(res.tempFilePaths[0],0,0)

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

}

})

fillText

在畫布上繪制被填充的文本。愛掏網 - it200.com參數 類型 范圍 說明text String 在畫布上輸出的文本

x Number 繪制文本的左上角x坐標位置

y Number 繪制文本的左上角y坐標位置

示例代碼:下載//filltext.js

Page({

onReady:function(){

var context = wx.createContext();

context.setFontSize(14)

context.fillText("MINA",50,50)

context.moveTo(0,50)

context.lineTo(100,50)

context.stroke();

context.setFontSize(20)

context.fillText("MINA",100,100)

context.moveTo(0,100)

context.lineTo(200,100)

context.stroke();

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

beginPath

開始創建一個路徑,需要調用fill或者stroke才會使用路徑進行填充或描邊。愛掏網 - it200.com同一個路徑內的多次setFillStyle、setStrokeStyle、setLineWidth等設置,以最后一次設置為準。愛掏網 - it200.com

closePage

關閉一個路徑。愛掏網 - it200.com

moveTo

把路徑移動到畫布中的指定點,不創建線條。愛掏網 - it200.com參數 類型 范圍 說明x Number 目標位置的x坐標

y Number 目標位置的y坐標

lineTo

在當前位置添加一個新點,然后在畫布中創建從該點到最后指定點的路徑。愛掏網 - it200.com參數 類型 范圍 說明x Number 目標位置的x坐標

y Number 目標位置的y坐標

rect

添加一個矩形路徑到當前路徑。愛掏網 - it200.com參數 類型 范圍 說明x Number 矩形路徑左上角的x坐標

y Number 矩形路徑左上角的y坐標

width Number 矩形路徑的寬度

height Number 矩形路徑的高度

arc

添加一個弧形路徑到當前路徑,順時針繪制。愛掏網 - it200.com參數 類型 范圍 說明x Number 矩形路徑左上角的x坐標

y Number 矩形路徑左上角的y坐標

radius Number 矩形路徑的寬度

startAngle Number 弧度, 0到2pi 起始弧度

sweepAngle Number 弧度, 0到2pi 從起始弧度開始,掃過的弧度

quadraticCurveTo

創建二次貝塞爾曲線路徑。愛掏網 - it200.com參數 類型 范圍 說明cpx Number 貝塞爾控制點的x坐標

cpy Number 貝塞爾控制點的y坐標

x Number 結束點的x坐標

y Number 結束點的y坐標

bezierCurveTo

創建三次方貝塞爾曲線路徑。愛掏網 - it200.com參數 類型 范圍 說明cp1x Number 第一個貝塞爾控制點的 x 坐標

cp1y Number 第一個貝塞爾控制點的 y 坐標

cp2x Number 第二個貝塞爾控制點的 x 坐標

cp2y Number 第二個貝塞爾控制點的 y 坐標

x Number 結束點的 x 坐標

y Number 結束點的 y 坐標

setFillStyle

設置純色填充。愛掏網 - it200.com

設置顏色為填充樣式參數 類型 范圍 說明color String 'rgb(255, 0, 0)'或'rgba(255, 0, 0, 0.6)'或'#ff0000'格式的顏色字符串 設置為填充樣式的顏色

setStrokeStyle

? 設置純色描邊,參數同setFillStyle。愛掏網 - it200.com

示例代碼:下載//setfillstyle.js

Page({

onReady:function(e){

var context = wx.createContext();

context.setFillStyle("#ff00ff");

context.setStrokeStyle("#00ffff");

context.rect(50,50,100,100)

context.fill()

context.stroke()

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

setShadow

設置陰影樣式。愛掏網 - it200.com參數 類型 范圍 說明offsetX Number 陰影相對于形狀在水平方向的偏移

offsetY Number 陰影相對于形狀在豎直方向的偏移

blur Number 0~100 陰影的模糊級別,數值越大越模糊

color Color 'rgb(255, 0, 0)'或'rgba(255, 0, 0, 0.6)'或'#ff0000'格式的顏色字符串 陰影的顏色

setFontSize

設置字體的字號。愛掏網 - it200.com參數 類型 范圍 說明fontSize Number 字體的字號

setLineWidth

設置線條的寬度。愛掏網 - it200.com參數 類型 范圍 說明lineWidth Number 線條的寬度

setLineCap

設置線條的結束端點樣式。愛掏網 - it200.com參數 類型 范圍 說明lineCap String 'butt'、'round'、'square' 線條的結束端點樣式

setLineJoin

設置兩條線相交時,所創建的拐角類型。愛掏網 - it200.com參數 類型 范圍 說明lineJoin String 'bevel'、'round'、'miter' 兩條線相交時,所創建的拐角類型

setMiterLimit

設置最大斜接長度,斜接長度指的是在兩條線交匯處內角和外角之間的距離。愛掏網 - it200.com 當setLineJoin為'miter'時才有效。愛掏網 - it200.com超過最大傾斜長度的,連接處將以lineJoin為bevel來顯示參數 類型 范圍 說明miterLimit Number 最大斜接長度

示例代碼:下載//line.js

Page({

onReady:function(e){

var context = wx.createContext();

context.setLineWidth(10);

context.setLineCap("round")

context.setLineJoin("miter");

context.setMiterLimit(10);

context.moveTo(20,20);

context.lineTo(150,27);

context.lineTo(20,54);

context.stroke();

context.beginPath();

context.setMiterLimit(3);

context.moveTo(20,70);

context.lineTo(150,77);

context.lineTo(20,104);

context.stroke();

wx.drawCanvas({

canvasId:1,

actions:context.getActions()

});

}

})

wx.drawCanvas(OBJECT)

OBJECT參數說明:參數 類型 必填 說明canvasId String 是 畫布標識,傳入的cavas-id

actions Array 是 繪圖動作數組,由wx.createContext創建的context,調用getActions方法導出繪圖動作數組。愛掏網 - it200.com

示例:下載

// index.js

Page({

canvasIdErrorCallback: function(e){

console.error(e.detail.errMsg);

},

onReady: function(e){

//使用wx.createContext獲取繪圖上下文context

var context = wx.createContext();

context.setStrokeStyle("#00ff00");

context.setLineWidth(5);

context.rect(0,0,200,200);

context.stroke()

context.setStrokeStyle ("#ff0000") ;

context.setLineWidth (2)

context.moveTo(160,100)

context.arc(100,100,60,0,2*Math.PI,true);

context.moveTo(140,100);

context.arc(100,100,40,0,Math.PI,false);

context.moveTo(85,80);

context.arc(80,80,5,0,2*Math.PI,true);

context.moveTo(125,80);

context.arc(120,80,5,0,2*Math.PI,true);

context.stroke();

//調用wx.drawCanvas,通過canvasId指定在哪張畫布上繪制,通過actions指定繪制行為

wx.drawCanvas({

canvasId: 'firstCanvas',

actions: context.getActions() //獲取繪圖動作數組

});

}

});



聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
發表評論
更多 網友評論0 條評論)
暫無評論

返回頂部

主站蜘蛛池模板: 真实国产乱子伦久久| gogo高清全球大胆高清| 青娱乐国产盛宴| 日韩在线视精品在亚洲| 国产成人精品高清在线观看99| 国产精品视频全国免费观看| 人妻内射一区二区在线视频| 五月天亚洲色图| segui久久综合精品| 神秘电影欧美草草影院麻豆第一页 | 国产精品偷伦视频观看免费| 亚洲成av人片在线观看天堂无码| 丰满少妇被猛男猛烈进入久久| 97精品人妻系列无码人妻| 色噜噜狠狠狠狠色综合久| 挺进男同的屁股眼o漫画| 国产成人爱片免费观看视频| 久久精品电影院| 3d精品重口littleballerina| 欧美日韩动态图| 国产真实伦正在播放| 久久精品人人槡人妻人人玩AV| 7x7x7x免费在线观看| 欧美性猛交xxxx乱大交| 山村乱肉系列h| 国产亚洲成AV人片在线观看导航 | 欧美日韩精品久久久免费观看| 宝贝过来趴好张开腿让我看看| 国产一区二区三区不卡在线看 | 欧美黑人又粗又硬xxxxx喷水| 国产精品视频色拍拍| 亚洲一区中文字幕久久| 高清国语自产拍免费视频| 新视觉yy6080私人影院| 免费观看无遮挡www的小视频| 久久99久久99精品免观看| 美女福利视频一区二区| 奇米综合四色77777久久| 亚洲小说区图片区另类春色| 国产喷水在线观看| 最新黄色网址在线观看|