2017-02-21 120 views
0

將其轉換爲圖像後,我有一個canvas我轉換成像這樣一個形象,旋轉畫布JS

var can = document.getElementById('canvas'); 
var ctx = can.getContext('2d'); 
var img = new Image(); 
img.src = can.toDataURL(); 

我現在需要旋轉該圖像?可能嗎?

+0

對不起,我不認爲這是重複的。我需要在js中完成,而不是在CSS中完成。因爲在完成旋轉時我將圖像傳輸到新窗口。 –

+0

第二個答案(http://stackoverflow.com/a/29398757/1693593)畫布大小反映相對於旋轉,可能是你想要的情況。 – K3N

+1

解決它謝謝:) –

回答

0

你需要創建一個新的畫布,旋轉它的2dDrawingContext,畫出你的圖像數據,然後設置爲源

var canvas = document.createElement('canvas'); 
var ctx2 = canvas.getContext('2d'); 
ctx2.rotate(Math.PI/2); 
ctx2.putImageData(ctx.getImageData(0, 0, ctx.canvas.width, ctx.canvas.height), 0, 0); 

從那裏,你可以調用ctx2.toDataURL()和圖像拍它。