2023年微信小程序save/restore(保存和恢復繪圖上下文)
微信小程序的繪圖接口和方法是非常重要的,其中最常用的之一便是canvasContext.save和canvasContext.restore。這兩個API可以很好地保存和恢復繪圖上下文,方便在同一個畫布中實現(xiàn)不同的繪圖效果。
使用canvasContext.save與canvasContext.restore
在繪制的過程中,我們經(jīng)常需要臨時改變樣式屬性。例如,在繪制一個圖形時,我們可能需要改變填充顏色或者改變邊框線寬。如果我們直接去更改全局的繪圖屬性,那么所有后面繪制的圖形都會受到影響,這顯然不是我們想要的。
這時,我們就可以使用canvasContext.save方法來保存當前的繪圖上下文狀態(tài)。然后在修改樣式屬性后繪制所需的圖形,并通過canvasContext.restore方法還原之前保存的繪圖狀態(tài)。
具體用法
保存繪圖上下文狀態(tài)
恢復繪圖上下文狀態(tài)
調(diào)用canvasContext.save方法可以把當前繪圖上下文狀態(tài)壓入一個棧中。該方法不會對任何繪圖操作產(chǎn)生影響,只是簡單地把當前的狀態(tài)存儲起來。
const ctx = wx.createCanvasContext('myCanvas')
// save the default fill style
ctx.save()
ctx.setFillStyle('red')
ctx.fillRect(10, 10, 150, 100)
一旦我們完成了修改樣式屬性并繪制出所需的圖形,就可以通過調(diào)用canvasContext.restore方法還原之前保存的繪圖上下文狀態(tài)。這會彈出棧頂部的狀態(tài),并把它還原到當前的繪圖上下文中。
// restore to the previous saved state
ctx.restore()
ctx.fillRect(50, 50, 150, 100)
ctx.draw()
使用canvasContext.save與canvasContext.restore方法可以很好地實現(xiàn)繪制不同風格、顏色和大小的對象。同時,因為這兩個方法操作簡單方便,非常適合在微信小程序中使用。
<本文由himall原創(chuàng),商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請標明:himall原創(chuàng)>
滿足不同行業(yè)發(fā)展電商的需求,HiMall更有針對性的提供不同行業(yè)內(nèi)的電商解決方案
-
跨境電商解決方案
支持直郵/保稅模式
對接海關(guān)/保稅倉
支持多國國際語言
對接Paypal國際支付
幫助跨境外貿(mào)企業(yè)搭建跨境進口/出口電商平臺,搶占國際電商市場,針對企業(yè)需求定制個性化跨境電商解決方案 -
分賬解決方案
迎合金融監(jiān)管要求
規(guī)避“二清”結(jié)算
節(jié)約平臺財務(wù)成本
降低平臺招商成本
在合法、合規(guī)的前提下,為電商平臺提供資金收付、賬戶管理、資金合規(guī)等一體化整體解決方案 -
B2B批發(fā)解決方案
多級階梯批發(fā)價
布局全渠道批發(fā)入口
專屬批發(fā)訂貨市場
銀聯(lián)B2B大額支付
為企業(yè)快速搭建綜合性B2B批發(fā)電商平臺,整合線下批發(fā)資源,拓展線上批發(fā)渠道,實現(xiàn)批發(fā)業(yè)務(wù)24小時在線經(jīng)營
-
MRO工業(yè)品采購平臺系統(tǒng)|MRO工業(yè)品采購平臺系統(tǒng)有哪些功能
最新消息:MRO工業(yè)品采購平臺系統(tǒng) 是一款集產(chǎn)、研、銷于一體的綜合性解決方案,專為解決工業(yè)品企業(yè)的采購難題而設(shè)計。該系統(tǒng)通過...詳情
-
電子元器件采購商城系統(tǒng)|電子元器件采購商城系統(tǒng)有哪些功能
最新消息:電子元器件采購商城系統(tǒng) 是專為滿足電子元器件行業(yè)復雜業(yè)務(wù)流程需求而設(shè)計的綜合性平臺。它不僅提供了全面的技術(shù)支持...詳情
【本站聲明】
1、本網(wǎng)站發(fā)布的該篇文章,目的在于分享電商知識及傳遞、交流相關(guān)電商信息,以便您學習或了解電商知識,請您不要用于其他用途;
2、該篇文章中所涉及的商標、標識的商品/服務(wù)并非來源于本網(wǎng)站,更非本網(wǎng)站提供,與本網(wǎng)站無關(guān),系他人的商品或服務(wù),本網(wǎng)站對于該類商標、標識不擁有任何權(quán)利;
3、本網(wǎng)站不對該篇文章中所涉及的商標、標識的商品/服務(wù)作任何明示或暗示的保證或擔保;
4、本網(wǎng)站不對文章中所涉及的內(nèi)容真實性、準確性、可靠性負責,僅系客觀性描述,如您需要了解該類商品/服務(wù)詳細的資訊,請您直接與該類商品/服務(wù)的提供者聯(lián)系。