用ue 打開一張圖片,動動手腳,出現卡碟的畫面效果。
可不可以用C#來做一個圖片編輯器? 怎麼做?路線怎麼走?
稍後揭曉答案
根據實際操作獲取類一些基礎知識:
1. 文件是二進制存儲的,為了便於查看編輯器只提供16進制顯示 圖片文檔結構復雜 不益展示
2. 16進制文件每一行都有行標
3. 可能會有分塊數據 通過某些標識來區分
上述了解的信息讓我想到了一件事,找標准!找標准!
答案應該是可以的。首先來找一個標准
http://baike.baidu.com/link?url=lPvVtKyy_NM8ZGsaOj5NNgaNraK2KYbuwg3tqyXCuRtSulra4Tw9Nh5DRTEv6w5WQVy4pMzwChXoZ7R1K5RGka
萬能的互聯網告訴我們jpeg的前世今生,寫圖片編輯器的作者一定要看這個標准。
bmp:
http://baike.baidu.com/link?url=2S5uLAjqyO3IgSCdXqKjrdwSY8qUBXAgsu9sk1y5IY6JJ6py_f2Q2W0IPSqbQFRtC5Oc-bRJsHRVvE3arRfmHjI6ZEHFnV11Toafp6fUc3K
size:52270
jpg
size:2417
bmp,jpg,png 格式還挺多
bmp 大白話 一五一十的描述;
jpg 會用概況總結了, 用簡短的方式准確的描述;
性格決定命運, bmp表達時顯得比較啰嗦,如果太復雜的事情是不能指望bmp來做的,他會煩死你 極其費存儲(講的都對但都是廢話),但電腦喜歡這貨,因為電腦就是一個直腦子,你最好是把讓我干的事情一是一二是二的告訴我,所以小bmp打開的速度極快,但是復雜的圖片bmp是無能為力的,一張圖片幾百兆 誰都受不了。
jpg可以把bmp的表達提煉總結成很短的內容, 那麼問題來了,總結概要就要犧牲細節,所以jpg比起bmp不夠細,但是壓縮後占空間非常小。這就決定了jpg可以扮演很多角色,互聯網傳輸需要小而准的格式。jpg更加藝術,所以jpg是更高等的格式。 解析jpg要稍復雜。但用戶是看總體工作量完成的效率和質量,所以jpg的特點完勝了。
電腦或軟件必須內置對應的解碼器才能解析這些格式,在使用視頻播放器的時候經常會遇到讓我們更新解碼包的問題。
關於電腦圖像處理仔細想來 還是按照人的意志 重復的高效的來完成工作,也沒有什麼難理解的。
下一篇來完成一個C# 給圖片打馬賽克的效果。