【轉載】關於.NET下開源及商業圖像處理(PSD)組件

原創】關於.NET下開源及商業圖像處理(PSD)組件

 

       本博客全部文章分類的總目錄:http://www.cnblogs.com/asxinyu/p/4288836.htmlweb

本博客其餘.NET開源項目文章目錄:http://www.cnblogs.com/asxinyu/p/4329755.htmlapp

1 前言

這篇博客的背景是:爲了完成吉日嘎拉的「PSD文件損壞檢測和圖層檢測」任務,查找了目前.NET各類開源的及商業的圖像處理資料,在完成任務以後,進行總結。這次任務主要是用C#操做PSD(PhotoShop)文件,中文資料不多,主要的英文資料都在CodeProject網站。項目要求對用戶上傳的PSD文件進行檢測,是否損壞,是否能正常打開,並判斷是否只有1個圖層。俗話說:「冰凍三尺非一日之寒」,此次找關於C#處理PSD的開源資料,真是「挖地三尺」,我也以爲這「非一日之力」就能夠作到。平時關注技術,瞭解不少,找起來才快,也須要一點主動學習的能力。工具

2 .NET圖像處理組件總結

提及圖像處理,確定不少人都知道博客園的xiaoite,用.NET作圖像處理,很強大。因爲圖像處理的特殊性,可能不少人認爲.NET作圖像處理效率有問題,但xiaoite用實際證實了其實這都不是問題,你們能夠去他的博客詳細瞭解下。呵呵,我只是一個菜鳥,把別人現成的東西組合一下,會使用而已。那下面介紹一下,我找到的幾個.NET圖像處理組件(和PSD相關的)。post

2.1 Paint.NET

.NET下的圖像處理開源項目,最有名的應該是Paint.NET,小巧,靈活,足夠強大,相比笨重收費的PhotoShop,這真是一個不錯的選擇。雖然該項目源代碼如今不開放了,但軟件使用仍然是免費的。昨天看了一下他的dll,沒有混淆,有精力的能夠去反編譯看看。個人解決辦法也是從這個項目找到的答案。Paint.NET的源代碼3.1版本的應該還能夠在網上找獲得,另外Paint.NET也有不少插件,好比Paint.NET_PSD_Plugin,就能夠用插件來加載PSD文件,並轉換爲Paint.NET的格式。前幾天,給一個朋友PS2張簡單的圖片,用的就是Paint.NET,操做和PhotoShop差很少,界面很清爽,功能足夠強大吧,推薦一下。學習

2.2 Imagemagick.NET

Imagemagick.NET是用C#對開源的Imagemagick圖像處理組件的進行了一個封裝。裏面的代碼大部分都是C++/CLI,能力有限,沒有深刻研究。看了一下說明,支持的格式不少,但對PSD文件的圖層和文件損壞檢測也沒有現成的,不過,這個項目的確很值得學習,有機會研究下 C++/CLI,對圖像處理應該有很大幫助。Imagemagick支持的語言和平臺都很普遍,值得一看。網站

2.3 Skimpt

Skimpt其實這個組件之前沒看到過,是一個.NET下開源的屏幕截圖軟件。它的大部分代碼我沒仔細看,只發現它支持PSD文件,因此就主要看了看PSD操做的部分,相對不錯,PSD代碼部分也是借鑑了CodeProject上面的幾篇文章。都很類似,不過都修改了很多錯誤,這個其實還不錯,勉強能夠正確判斷圖層,可是對PSD文件的損壞檢測不了,它只是直接讀取文件的頭信息,並不去檢驗數據的正確性。若是有作屏幕截圖之類的工具,這是一個不錯的參考。雖然沒用裏面的代碼,但也發現Google Code其實也有不少不錯的項目。google

2.4 ImageGlue.NET 

ImageGlue.NET是商業的圖像處理組件,支持的格式列了一大堆:支持的格式。因爲這個組件我很早就知道,但沒用過,手上也有破解版,因此就試了一下,能夠對PSD文件的損壞檢測,可是對圖層的判斷一直出錯,有時候是正確的,有時候是錯誤的,商業組件作成這樣,一怒之下,拋棄它了,並且破解版也不太敢用,當時只是試試看好用不,而後把裏面的一小段代碼弄出來就能夠了,沒想到這貨還調用了非託管的dll,代碼沒雖然有混淆,但命名空間足夠的坑爹,對圖像的一些基本處理應該仍是不錯的,關鍵是支持的格式全面。留個腳印,讓你們之後也有個選擇。url

2.5 其餘關於.NET操縱PSD的文章

其實我首先查到的仍是codeproject上的一篇2006年發表的英文博客Yet Another PSD Parser。該做者也是爲了完成一個PSD的項目,須要.NET操做PSD文件,而處於版權和許可證的緣由,沒有采用Adobe公司的SDK,而是本身開發了這套組件。這個組件也是做者Endogine項目(一個2D的圖像遊戲引擎)的一部分,但惋惜的是這個組件好像沒有完善,這篇文章也沒有更新,有很多錯誤。.net



若是您以爲閱讀本文對您有幫助,請點一下「推薦」按鈕,您的「推薦」將是我最大的寫做動力!歡迎各位轉載,可是未經做者本人贊成,轉載文章以後必須在文章頁面明顯位置給出做者和原文鏈接,不然保留追究法律責任的權利。
相關文章
相關標籤/搜索