JSON是一種數(shù)據(jù)交互格式,而JPG則是一種圖片格式。在某些情況下,我們可能需要將JSON數(shù)據(jù)轉(zhuǎn)化為JPG圖片,例如保存驗證碼圖片。下面是一種簡單的方法來實現(xiàn)JSON轉(zhuǎn)JPG:
//首先準備好一個JSON對象 var json = { "imageData": "ABC123", //這里ABC123代表圖片數(shù)據(jù) "width": "300", "height": "200" }; //創(chuàng)建一個canvas元素 var canvas = document.createElement("canvas"); canvas.width = json.width; canvas.height = json.height; //獲取canvas的上下文 var context = canvas.getContext("2d"); //將圖片數(shù)據(jù)渲染到canvas上 var imageObj = new Image(); imageObj.src = "data:image/jpeg;base64," + json.imageData; imageObj.onload = function() { context.drawImage(imageObj, 0, 0, json.width, json.height); //將canvas轉(zhuǎn)化為JPG文件,并保存到本地 var dataUrl = canvas.toDataURL("image/jpeg", 1.0); var link = document.createElement("a"); link.download = "myImg.jpg"; link.href = dataUrl; link.click(); };
上面的代碼先創(chuàng)建一個canvas元素,并且設(shè)置其大小。然后將圖片數(shù)據(jù)渲染到canvas上,使用toDataURL()方法將canvas轉(zhuǎn)化為JPG文件,并將其保存到本地。當然,這需要鑒別JSON數(shù)據(jù)的結(jié)構(gòu),來決定哪些值需要傳入canvas。
上一篇css背景改成銀灰色
下一篇php tree()