0 寫在前面
對圖像入門一點,或者看過一些兒時低像素任天堂遊戲的小夥伴們大概對像素點構成圖檔有一定認知,本篇将用Excel來表達這一思路,如下原圖:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLi0zaHRGcWdUYuVzVa9GczoVdG1mWfVGc5RHLwkzX39GZhh2csATMflHLwEzX4xSZz91ZsADMx8FdsYkRGZkRG9lcvx2bjxSa2EWNhJTW1AlUxEFeVRUUfRHelRHL2EzXlpXazxyayFWbyVGdhd3LcV2Zh1Wa9M3clN2byBXLzN3btg3PnVGcq5SNhRGMmdjM4MmY4IjNwYWOkhjMkV2YzMmYhVjYmlzNw8CXzAzLchDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL1M3Lc9CX6MHc0RHaiojIsJye.jpeg)
在Excel中可以表示如下:
可以看到這裡将Excel中的每個格子當作一個像素點,每個格子裡面是每個像素點的rgb值。具體如何做到見下文。
1 現将原始jpg轉成文本形式
為了友善就處理jpg格式的圖像,這裡使用python語言,如下:
将原始圖像改名為test.jpg再運作上述程式就會生成一個rgb.txt
2 使用Excel打開文本
将第一步生成的rgb.txt直接用Excel打開,打開時會彈出一些轉換事項,直接下一步即可,注意需要調整格子的大小使每個格子呈現正方形以便實作較好的效果,此處示範略。
3 使用VBA還原原始jpg
VBA就是Excel裡面的宏,此時可以建立一個Set_RGB宏,複制以下代碼,注意更改最大列标,以及去掉"//"在内的注釋,如下:
然後運作,可能會出現下标越界等情況,不用管它,直接回到excel就會發現已經生成,然後就能見到第0節中的效果,此時另存為Excel檔案并儲存宏就可以展現給别人看啦。