av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

javascript - canvas畫圖

瀏覽:125日期:2023-03-25 15:14:23

問題描述

寫了一個函數,第一次調用canvas的drawImage將本地的一張圖片的一部分給畫下來(能夠成功),然后將canvas畫好的這張圖調用toDataURL轉化為image對象的src屬性,然后對這張canvas畫的圖調用同樣的方法進行二次繪畫為什么不能成功?

function paint(img) {var canvas = document.createElement(’canvas’)canvas.width = 400canvas.height = 400var ctx = canvas.getContext(’2d’)ctx.drawImage(img, 0, 0, img.width, img.height, 0, 0, 400, 400)document.body.appendChild(canvas)//畫好的第一個canvas對象可以正常顯示var newImg = new Image()newImg.src = canvas.toDataURL()newImg.onload = function() { var canvas2 = document.createElement(’canvas’) canvas2.width = 200 canvas2.height = 200 var ctx2 = canvas2.getContext(’2d’) ctx2.drawImage(newImg, 0, 0, Math.abs(posX), Math.abs(posY), 0, 0, 200, 200)//這里之所以把第一次的canvas作圖加載成一張圖片,是因為不知道canvas可不可以繪制canvas document.body.appendChild(newImg)//這張圖片能正常顯示 document.body.appendChild(canvas2)//canvas元素加上了,但是繪圖不成功} }

問題解答

回答1:

你是不是用的外站圖片? 如果是,需要給圖片加上 crossOrigin='Anonymous' 屬性。

html方式

<img src='http://www.4tl426be.cn/wenda/...' crossOrigin='Anonymous' />

js方式

var image = new Image();image.src = 'http://www.4tl426be.cn/wenda/...';image.crossOrigin = 'Anonymous';

你可以在線把玩一下我用你的代碼修改的可運行的版本:https://jsfiddle.net/5g9n9esk/

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 在线a| 国产视频一区二区在线 | 黄色成人在线视频 | 天天躁日日躁狠狠躁 | 少妇xxxx69| 一区二区三区毛片 | 欧美深夜福利 | 夜夜夜夜操 | 青娱乐av | 麻豆一区二区三区 | 国产精品国产三级国产aⅴ浪潮 | 丁香五香天堂网 | 中文字幕免费观看视频 | 婷婷综合久久 | 国产一区欧美 | 中文字幕亚洲综合 | 一级片av | 免费黄色一级 | 在线观看的av网站 | 中文字幕不卡视频 | 国产亚洲视频在线观看 | 久久久久久久久久久久久久 | 国产二区视频在线观看 | www.一区| 99小视频| 91精品久久久久久 | 欧美黄色精品 | 99视频网站 | 高潮一区二区三区乱码 | 成人性生活免费视频 | 免费一区二区 | 亚洲狠狠干 | 免费观看一区二区 | 国产精品一区在线播放 | 无套内谢的新婚少妇国语播放 | 午夜看片| 日本不卡一区二区 | 日韩欧美综合 | 国产精品久久 | 日韩欧美精品一区 | 国产剧情一区 |