全部題目地址:http://codestar.alloyteam.com/q2php
本題內容:http://www.cnblogs.com/yedeying/p/3617593.htmlhtml
腐蝕的畫涉及到的圖片有4張:前端
http://codestar.alloyteam.com/q2/puzzle/4/1.png
http://codestar.alloyteam.com/q2/puzzle/4/2.png
http://codestar.alloyteam.com/q2/puzzle/4/3.png
http://codestar.alloyteam.com/q2/puzzle/4/4.pngchrome
不多接觸canvas,不過對獲取canvas畫布內像素數據的方法有印象,查了下,輕鬆解決。canvas
這一步是個坑,只提示轉成0跟1,但轉換方式沒說,可能性有不少,若是不是有高人提示,不多會想到二值化。數組
一開始還在想怎麼把二進制轉ASCII,本來覺得得寫個對象,用查表方式來處理,後來高人提示能夠先轉十進制再轉,fromCharCode接受十進制參數不接二進制,我咋就沒想到轉二進制呢,該打。app
這一步已經很明顯,圖片url的base64表示方式,這代表結果將會是一張圖片。一開始糾結着ASCII怎麼轉Base64,嘗試了base64加密,出來的結果沒法顯示成圖片,失望時想到jq的base64插件,下載後看了下readme,發現window.btoa的判斷,一查才知道,強大的JavaScript已經有base64 to ascii的方法了(目前僅chrome、safari、firefox支持,http://help.dottoro.com/ljvfsbvr.php),果斷直接使用,成功顯示出圖片。加密
後記:作完這道題,又學到了不少東西,同時也鞏固了一些快生疏的知識。url
臨睡前再扯一句:願全部前端,擁抱新技術,珍愛生命,遠離IE6789。spa