2014-05-30 82 views
2

我是javascript和html5的新手。我在做我的大學項目。我正在創建一個基於Web的照片捕捉系統。是否可以自動將圖像保存到本地存儲。用戶點擊捕捉按鈕後?將圖像自動保存到本地

僅供參考, 當用戶打在拍攝按鈕,將其激活此功能

function(){context.drawImage(video, 0, 0, 320, 240)}

感謝。

+0

@PatrickHofman硬盤。對不起,我模糊了。因爲將畫布轉換爲jpg。而不是我們在圖像上點擊右鍵,然後點擊另存爲。我可以自動製作嗎? – JaxLee

+0

不,您無權訪問客戶PC上的文件存儲。 (至少沒有得到用戶的事先許可) – Kenneth

+0

@PatrickHofman但是有什麼解決方案可以解決這個問題。導致我這樣做的目的是讓另一個KIOSK設備訪問被捕獲的圖像文件。 – JaxLee

回答

2

您可以使用toDataURL生成<a>鏈接,將允許用戶下載圖像:

function(){ 
    context.drawImage(video, 0, 0, 320, 240); 
    var dl = document.createElement("a"); 
    dl.href = canvas.toDataURL(); 
    dl.innerHTML = "Download Image!"; 
    dl.download = true; // Make sure the browser downloads the image 
    document.body.appendChild(dl); // Needs to be added to the DOM to work 
    dl.click(); // Trigger the click 
} 

這則應該啓動圖像的下載。這依賴於download屬性的瀏覽器支持。

Example jsFiddle

+0

@PatrickHofman OP調用'context.drawImage',它是[CanvasRenderingContext2D](https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D)上的方法,通過調用'canvas.getContext ()'。所以我認爲他們有一個參考「畫布」的地方。 – CodingIntrigue