javascript - 怎樣在canvas上讓圖片做tranform變換?
問題描述
例如我有一張圖片,如下圖所示
<img src='http://m.cgvv.com.cn/wenda/image.jpg' style='transform: translate(6px, 6px) scale(1.5) rotate(100deg);'>
圖片的寬高是1280x600,并且transform屬性是transform: translate(6px, 6px) scale(1.5) rotate(100deg);
請問,我創建的一張1280x600的canvas畫布,要怎樣才能讓圖片按照transfrom的參數在畫布上做變換呢?
畫布最終的大小不會變化。
問題解答
回答1:這3個api在canvas上面的的ctx對象上面都有,樓主可以去查閱一下,但是樓主要注意一點canvas的變換是原點變換類似css屬性中transform-origin:0,0但是css變換這個屬性默認是center center所以這就涉及到了一個在canvas上面一個比較經典的問題叫如何如何移動錨點簡單來說利用了canvas的transform負值來做到的,手機打字無法給你演示了。
交樓主一個簡單方法,樓主把那圖片的transform-origin也設置成0,0,此時達到你之前的效果的參數就和canvas的值一模一樣了
在外面沒音電腦如果樓主還不明白回去后可以試著幫你實現下,但從成長角度推薦樓主根據樓上的鏈接自己寫出實現代碼
回答2:https://github.com/wanadev/pe... demo http://www.html5.jp/test/pers...這個可能幫到你
回答3:已經在這個問題下找到了答案,謝謝 @外籍杰克 的答案/q/10...
相關文章:
1. win10 python3.5 matplotlib使用報錯2. 數組排序,并把排序后的值存入到新數組中3. html5 - css3scale和rotate同時使用轉換成matrix寫法該如何轉換?4. MySQL的聯合查詢[union]有什么實際的用處5. php多任務倒計時求助6. html - css3關于透明度的問題7. python的正則怎么同時匹配兩個不同結果?8. 默認輸出類型為json,如何輸出html9. mysql 遠程連接出錯10060,我已經設置了任意主機了。。。10. 為何 localStorage、sessionStorage 屬于html5的范疇,但是為何 IE8卻支持?
