LEADTOOLS 使用教程:使用CodecsImageInfo類提取圖像信息
LEADTOOLS (Lead Technology)由Moe Daher and Rich Little創(chuàng)建于1990年,其總部設(shè)在北卡羅來(lái)納州夏洛特。LEAD的建立是為了使Daher先生在數(shù)碼圖象與壓縮技術(shù)領(lǐng)域的發(fā)明面向市場(chǎng)。在過去超過30年的發(fā)展歷程中,LEAD以其在全世界主要國(guó)家中占有的市場(chǎng)領(lǐng)導(dǎo)地位,在數(shù)碼圖象開發(fā)工具領(lǐng)域中已成為既定的全球領(lǐng)導(dǎo)者。LEADTOOLS開發(fā)與發(fā)布的LEAD是屢獲殊榮的開發(fā)工具包。
像人一樣,圖像都是不同的。即使某些圖像看起來(lái)相同,屬性中也可能存在隱藏的信息,這些信息使其變得唯一。也許您發(fā)現(xiàn)自己當(dāng)前處于一個(gè)無(wú)紙化的工作空間中,并且需要一種將圖像文件轉(zhuǎn)換為相同格式,大小或每像素位數(shù)的方法。首先,您需要能夠快速檢查各種圖像屬性,以查看哪些已經(jīng)滿足您的需求,哪些不滿足您的需求。
LEADTOOLS為開發(fā)人員提供了一種使用CodecsImageInfo類提取此圖像信息的簡(jiǎn)便方法。 此類提供了獲取有關(guān)圖像信息的方法。 此類可以獲取數(shù)百種不同的圖像屬性。
基本代碼可在下面找到,但請(qǐng)務(wù)必查看下面完整的分步教程(提取圖像信息-控制臺(tái)C#)以提取圖像信息。這將向您展示如何使用C#創(chuàng)建Windows控制臺(tái)應(yīng)用程序,該應(yīng)用程序利用CodecsImageInfo Class來(lái)從LEADTOOLS支持的各種圖像格式中獲取信息。
using (RasterCodecs codecs = new RasterCodecs()) { CodecsImageInfo info = codecs.GetInformation(fileName, true); string inputFileName = Path.GetFileNameWithoutExtension(fileName); string codecsInfoString = ($"Image Format: {info.Format}\n" + $"Information for: {inputFileName}\n" + $"BitsPerPixel: {info.BitsPerPixel}\n" + $"BytesPerLine: {info.BytesPerLine}\n" + $"ColorSpace: {info.ColorSpace}\n" + $"Byte Order: {info.Order}\n" + $"Image Height: {info.Height}\n" + $"Image Width: {info.Width}\n" + $"Image X Resolution: {info.XResolution}\n" + $"Image Y Resolution: {info.YResolution}\n" + $"Compression: {info.Compression}\n" + $"Page Number: {info.PageNumber}\n" + $"Total Pages: {info.TotalPages}"); Console.WriteLine(codecsInfoString); Console.ReadLine(); }
提取圖像信息-控制臺(tái)C#
本教程說(shuō)明如何創(chuàng)建一個(gè)使用CodecsImageInfo類的C#Windows Console應(yīng)用程序,以獲取有關(guān)LEADTOOLS支持的各種圖像文件的信息。
總覽
摘要
本教程介紹如何在C#Windows控制臺(tái)應(yīng)用程序中使用CodecsImageInfo類。
完成時(shí)間
30分鐘
Visual Studio Project
下載教程項(xiàng)目
平臺(tái)
C#Windows控制臺(tái)應(yīng)用程序
集成開發(fā)環(huán)境
Visual Studio 2017、2019
開發(fā)許可證
下載LEADTOOLS
必修知識(shí)
在研究“提取圖像信息-控制臺(tái)C?!苯坛讨?,請(qǐng)查看“添加引用和設(shè)置許可證”教程來(lái)熟悉創(chuàng)建項(xiàng)目的基本步驟。
創(chuàng)建項(xiàng)目并添加LEADTOOLS參考
創(chuàng)建一個(gè)新的C#Windows Console項(xiàng)目,并添加以下必要的LEADTOOLS引用。
如果使用NuGet引用,則本教程需要以下NuGet軟件包:
- Leadtools.Formats.Raster.Common
如果使用本地DLL引用,請(qǐng)?zhí)砑右韵翫LL:
本地DLL位于<INSTALL_DIR> \ LEADTOOLS 20 \ Bin \ Dotnet4 \ x64
- Leadtools.dll
- Leadtools.Codecs.dll
- Leadtools.Codecs.Cmp.dll
有關(guān)特定格式需要哪些編解碼器DLL的完整列表,請(qǐng)參閱要包含在應(yīng)用程序中的文件。
設(shè)置許可證文件
許可證可解鎖項(xiàng)目所需的功能。 必須在調(diào)用任何工具包功能之前進(jìn)行設(shè)置。 有關(guān)詳細(xì)信息(包括適用于不同平臺(tái)的教程),請(qǐng)參閱設(shè)置運(yùn)行時(shí)許可證。
有兩種類型的運(yùn)行時(shí)許可證:
- 評(píng)估許可證,在下載評(píng)估工具包時(shí)獲得。它允許評(píng)估工具包。
- 部署許可證。如果需要部署許可證文件和開發(fā)人員密鑰,請(qǐng)咨詢【在線客服】。
添加獲取圖像信息代碼
創(chuàng)建項(xiàng)目,添加參考和許可證集后,即可開始編碼。
在解決方案資源管理器中打開Program.cs。 在Program類中,添加一個(gè)名為RasterCodecsImageInfo(@“ C:\ Users \ Public \ Documents \ LEADTOOLS Images \ image1.cmp”);的新方法。 然后在新方法內(nèi)添加以下CodecsImageInfo代碼。 該方法的參數(shù)將是要從中收集信息的圖像的文件路徑。 對(duì)于本教程,將使用此示例圖像。
C#
// Using block at the top using System; using System.IO; using Leadtools; using Leadtools.Codecs;
C#
RasterCodecsImageInfo(@"C:\Users\Public\Documents\LEADTOOLS Images\image1.cmp");
C#
static void RasterCodecsImageInfo(string fileName) { using (RasterCodecs codecs = new RasterCodecs()) { CodecsImageInfo info = codecs.GetInformation(fileName, true); string inputFileName = Path.GetFileNameWithoutExtension(fileName); string codecsInfoString = ($"Image Format: {info.Format}\n" + $"Information for: {inputFileName}\n" + $"BitsPerPixel: {info.BitsPerPixel}\n" + $"BytesPerLine: {info.BytesPerLine}\n" + $"ColorSpace: {info.ColorSpace}\n" + $"Byte Order: {info.Order}\n" + $"Image Height: {info.Height}\n" + $"Image Width: {info.Width}\n" + $"Image X Resolution: {info.XResolution}\n" + $"Image Y Resolution: {info.YResolution}\n" + $"Compression: {info.Compression}\n" + $"Page Number: {info.PageNumber}\n" + $"Total Pages: {info.TotalPages}"); Console.WriteLine(codecsInfoString); Console.ReadLine(); } }
注意:
CodecsImageInfo類內(nèi)還有更多屬性。 上面的代碼段展示了最常用的屬性。
由于RasterCodecs類實(shí)現(xiàn)IDisposable,因此請(qǐng)確保將其放在using語(yǔ)句中以進(jìn)行適當(dāng)處理。
運(yùn)行項(xiàng)目
按F5或選擇Debug-> Start Debugging運(yùn)行項(xiàng)目。
如果正確執(zhí)行了這些步驟,則該應(yīng)用程序?qū)⑦\(yùn)行,并且控制臺(tái)將顯示文件的信息。
請(qǐng)繼續(xù)關(guān)注,因?yàn)槲覀儗⑻峁└嘟坛?,程序員可以使用這些教程來(lái)開發(fā)將直接影響數(shù)據(jù)捕獲,識(shí)別,交換和其他緊迫業(yè)務(wù)需求的應(yīng)用程序。
相關(guān)內(nèi)容推薦:
LEADTOOLS提供適應(yīng)遠(yuǎn)程工作的應(yīng)用程序,直接影響數(shù)據(jù)捕獲、識(shí)別、交換