LEADTOOLS使用教程:將多頁圖像文件拆分為單獨的文件
在上一篇文章中,我們分享了一個有關《如何從多個圖像創建多頁文件》的教程。但是,有時開發人員希望將多頁文件拆分為單獨的文件。在辦公室工作區中,總是需要打印和簽名。無論是用于批準想法還是出于法律目的,這些文檔通常都超過一頁。簽名者不會只打印一頁文檔就打印出每一頁,那只會浪費時間和紙張。拆分文檔將為您提供需要簽名的一頁。使用LEADTOOLS Imaging庫中的RasterCodecs保存方法可以輕松地將文件分開。
LEADTOOLS Imaging包括這些產品:LEADTOOLS Imaging Pro、LEADTOOLS Document Imaging Suite、LEADTOOLS Medical Imaging Suite等等。
分割多頁文件所需要做的一切工作是,首先獲取頁面總數,其次,遍歷每個頁面并將其保存為多種LEADTOOLS支持的文件格式之一。下面的代碼將向您展示如何進行拆分的核心代碼。或參考我們完整的分步教程,了解如何將多頁圖像文件拆分為單獨的文件。(該分步教程如文章后面內容)
// Split a Multipage Image into Single Files using (RasterCodecs codecs = new RasterCodecs()) { int totalPages = codecs.GetTotalPages(inputFile); for (int page = 1; page <= totalPages; page++) { string outputFile = $@"C:\Users\Public\Documents\LEADTOOLS Images {System.IO.Path.GetFileNameWithoutExtension(inputFile)}_page{page}.png"; using (RasterImage image = codecs.Load(inputFile, page)) codecs.Save(image, outputFile, RasterImageFormat.Png, 0); } }
將多頁圖像文件拆分為單獨的文件-控制臺C#
本教程說明如何創建使用RasterCodecs類的C#Windows控制臺應用程序,以將多頁圖像的每一頁保存到單獨的圖像文件中。
創建項目并添加LEADTOOLS參考
創建一個新的C#Windows Console項目,并添加以下必要的LEADTOOLS引用。
所需的參考取決于項目的目的。引用可以通過以下兩種方法中的一種或另一種添加(但不能同時添加)。對于此項目,需要以下參考:
如果使用NuGet引用,則本教程需要以下NuGet軟件包:
- Leadtools.Formats.Raster.Common
如果使用本地DLL引用,則需要以下DLL:
本地DLL位于 <INSTALL_DIR>\LEADTOOLS 20\Bin\Dotnet4\x64
- Leadtools.dll
- Leadtools.Codecs.dll
- Leadtools.Codecs.Png.dll
- Leadtools.Codecs.Tif.dll
設置許可證文件
許可證可解鎖項目所需的功能。必須在調用任何工具包功能之前進行設置。
有兩種類型的運行時許可證:
- 評估許可證,在下載評估工具包時獲得。它允許評估工具包。
- 部署許可證。
添加分割圖像代碼
創建項目,添加參考和許可證集后,即可開始編碼。
在解決方案資源管理器中打開Program.cs,然后使用Leadtools添加; 并使用Leadtools.Codecs; 聲明到頂部的using塊。
在Program類中添加一個名為SplitFile(string inputFile)的新方法,并在SetLicense()之后在Main方法中調用它。
注意:要嘗試以下代碼,請使用多頁文件,例如TIFF或PDF。
C#
// Using block at the top using System; using System.IO; using Leadtools; using Leadtools.Codecs;
C#
static void Main(string[] args) { SetLicense(); string multipageFile = @"C:\Users\Public\Documents\LEADTOOLS Images\merged.tif"; SplitFile(multipageFile); }
C#
static void SplitFile(string inputFile) { using (RasterCodecs codecs = new RasterCodecs()) { int totalPages = codecs.GetTotalPages(inputFile); for (int page = 1; page <= totalPages; page++) { string outputFile = $@"C:\Users\Public\Documents\LEADTOOLS Images\{Path.GetFileNameWithoutExtension(inputFile)}_page{page}.png"; using (RasterImage image = codecs.Load(inputFile, page)) codecs.Save(image, outputFile, RasterImageFormat.Png, 0); } } }
因為RasterCodecs類實現IDisposable,所以請確保它在using語句中以進行適當處理。
運行項目
按F5或選擇Debug- > Start Debugging運行項目。
如果正確執行了這些步驟,則該應用程序將運行并創建新文件。 merged.tif的每個頁面都應創建為PNG圖像文件,并在名稱后附加頁碼。
相關內容推薦: