2016-10-04 47 views
2

我想知道如何將CSS過濾器應用於圖像,然後將圖像保存到磁盤。如何使用應用CSS過濾器保存圖像

例如,我有一個形象的標籤,我可以通過CSS

img.sepia{ 
    filter: sepia(20%); 
} 

應用棕褐色效果和類適用於圖像標記在HTML

<img src="img.png" class="sepia" /> 

我如何保存應用了過濾器的圖像?

+0

[屏幕抓取](https://support.microsoft.com/en-us/help/13776/windows-use-snipping-tool-to-capture-screenshots) – adeneo

+0

如果您有任何疑問,您可以隨時從屏幕截取屏幕截圖正在尋找你自己的用途。 – poush

+0

不,我基本上想用它來做我的網站。所以如果我上傳一張照片到網站,所以我可以通過CSS應用過濾器,然後將其保存到我的畫廊。 – Rahul

回答

0

您可以將圖像寫入canvas元素,在javascript中設置所需的過濾器,然後下載它。因此,這將是這樣的

var canvas = document.getElementById('image'); 
 
var ctx = canvas.getContext('2d'); 
 
ctx.filter = "sepia(20%)"; 
 
var img = document.getElementById("dataimage"); 
 
ctx.drawImage(img,0,0, canvas.width, canvas.height); 
 

 
var downloadFile = document.getElementById('download'); 
 
downloadFile.addEventListener('click', download, false); 
 

 

 
function download() { 
 
    var dt = canvas.toDataURL('image/jpeg'); 
 
    this.href = dt; 
 
};
img{ 
 
    width:400px; 
 
    height:400px; 
 
}
<img src="" id="dataimage" /> 
 
<canvas id="image" width="400px" height="400px"></canvas> 
 
<a id="download">Download image</a>

+0

好的。感謝這個想法。我現在將學習畫布。解決這個問題。但該下載按鈕沒有爲我工作.. :) – Rahul