比較

ZetPDF與IronPDF:技術比較指南

按裝置或實例進行的Dynamsoft Capture Vision套餐的生產部署是根據年訂閱計量的,.NET套餐僅按報價出售,OEM/企業層級是單獨談判的。 按開發者席位的Iron Suite的生產部署是基於永久授權的,從$2,998開始,已授權席位免版稅,並包含單一的再分發附加組件以供SaaS或OEM的再分發,超過基本範圍。 這兩個套件在條碼閱讀和OCR上有所交叉; 它們之間的採購選擇實際上是在為專業移動/邊緣捕獲選擇按裝置訂閱價格和為伺服器端文件自動化選擇每開發者的永久價格。

此比較首先著眼於採購決策實際上取決於的內容:按裝置訂閱與每開發者的永久定價,以及每個套餐實際能提供什麼。 以下是為那些將負責整合的工程師準備的產品描述和功能程式碼。

快速比較

尺寸Dynamsoft Capture VisionIron Suite
定價定位.NET套餐僅按報價出售; 提供試用金鑰Lite $2,998 / Plus $4,498 / Professional $8,998 / Unlimited $17,998(企業定制); 所有10款產品的價格相當於2套產品的價格
授權模式每裝置或每實例的年訂閱; 通過報價的OEM和企業; usage-metered options按每位開發者的永久授權,基礎免版稅; SaaS/OEM的再分發附加元件
捆綁中的組件5個模組,包括條碼閱讀器、文件標準化器、相機增強器、標籤識別器、程式碼解析器10個Iron產品作為單一捆綁
格式/能力覆蓋條碼 + MRZ + 文件標準化 + 區域OCR + 結構化有效載荷解析PDF + OCR + 條碼 + QR + Excel + Word + PowerPoint + 印刷 + ZIP + 網頁爬蟲
跨平台/雲端JavaScript、iOS、Android、MAUI、React Native、C++、Java、Node.js、PythonWindows / Linux / macOS / Docker / Azure / AWS Lambda
.NET運行時支持.NET(通過NuGet包的.NET Framework + 現代.NET); 提供MAUI綁定.NET Framework 4.6.2+, .NET Core, .NET 6/7/8/9/10
目標市場ISV開發移動/桌面捕獲、KYC、物流、零售應用.NET開發者和ISV需要單一供應商以實現日常文件自動化
供應商Dynamsoft CorporationIron Software

對於構建基於手機的KYC捕獲流程或自助服務亭護照閱讀器的現場工程師來說,Capture Vision是工具集,按部署的裝置計費。 對於構建文件伺服器並包含PDF生成、上傳掃描的OCR以及條碼閱讀功能的後端開發者來說,Iron Suite是工具集,按開發者席位計費。

定價和授權

Dynamsoft Capture Vision的.NET版僅按報價出售。 此模型是按裝置或實例的年訂閱,OEM和企業層級是單獨談判的。 開發可用的試用金鑰,但生產部署需要銷售洽談。 針對特定工作負載的使用量計量選項在購買中心浮現。 部署單位很重要:單一的授權金鑰涵蓋所有五個模組,但在生產中運行SDK的每個裝置或實例都會消耗一個授權插槽。

Iron Suite入門層的價格為$2,998,被推廣為"10個產品以2個產品的價格出售" 節省75%。 等級按每位開發者逐步提升,分為Lite、Plus、Professional、Unlimited和Enterprise。 基礎授權對於已授權席位和地點是免版稅的。 已授權席位的生產部署不會消耗每裝置插槽。 超出基礎的SaaS或OEM再分發需要單獨的Redistribution Add-On。

其計費單位為部署裝置(移動車隊、自助服務亭、銷售點掃描器)的買家前往Capture Vision的每裝置年訂閱,因為該模型會跟踪車隊。 其計費單位為開發者席位的買家(單個部署服務數千使用者的ISV伺服器)前往Iron Suite的每開發者永久授權,因為該模型將成本與運行時裝置數量分開。

什麼是Dynamsoft Capture Vision

Dynamsoft Capture Vision套餐將Dynamsoft的專業識別SDK統一成單一的工作流導向框架,這些SDK以前作為條碼閱讀器、標籤識別器和文件標準化器分開銷售。 它針對ISV和企業構建手機和桌面捕獲應用程式:倉庫掃描,KYC/身份驗證,零售自助服務,物流和文件數字化。 單一的CaptureVisionRouter通過預設模板協調模組。

關鍵捆綁模組:

  • 條碼閱讀器(DBR):1D和2D條碼解碼(QR,Data Matrix,PDF417,Code 128,郵政符號)
  • 文件標準化器(DDN):邊界檢測、視角校正、相機捕獲文件的去斜
  • 相機增強器(DCE):自動對焦、幀過濾,實時相機控制,以進行實時捕獲
  • 標籤識別器(DLR):用於VIN、貨架標籤、序列號、身份證件字段的區域OCR
  • 程式碼解析器(DCP):將原始負載(MRZ TD1/TD3、GS1、AAMVA駕駛執照、HIBC、ICAO)解析為結構化字段

什麼是Iron Suite

Iron Suite是Iron Software的十個產品.NET包,其中識別堆棧(IronOCR用於一般OCR,IronBarcode用於1D/2D符號,IronQR用於具有ML驅動閱讀的QR)位於任何進行一般用途OCR或條碼工作的應用程式的中心。 除識別功能外,該包還新增了IronPDF用於生成,IronWord,IronXL和IronPPT用於Office輸出,IronPrint,IronZIP和IronWebScraper用於相鄰工具。 以單一的永久每開發者授權出售,分為五個層級,從$2,998開始,對於已授權席位免版稅,無每裝置訂閱。 SaaS和OEM再分發使用的是單獨的再分發外掛。

這十個組件,按照與識別和生成工作流相關的方式分組:

  • 識別堆棧(一般OCR、條碼和QR工作流的锚點):IronOCR(Tesseract 5,125+種語言,去斜和去噪預處理,內建英文手寫約90%,可搜索的PDF/UA和hOCR輸出); IronBarcode(30+種符號,圖像預處理,實時影片幀掃描,MAUI掃描器整合); IronQR(ML驅動的檢測,通過ReadPdfs用於多文件作業)。
  • 文件生成:IronPDF(HTML轉PDF,帶捆綁的Chromium,內建合並和拆分,PKCS#12加HSM加TSA簽名,PDF/A到PDF/A-4,PDF/UA-1和PDF/UA-2,加密,AcroForm 扁平化,字體管理,光柵化,壓縮和線性化); IronWord,IronXL和IronPPT用於DOCX,XLSX和PPTX的生成;
  • 實用工具:IronPrint,IronZIP,和IronWebscraper用於列印,檔案,和結構化抓取。

功能比較

條碼讀取

LicenseManager.InitLicense("YOUR_DYNAMSOFT_LICENSE_KEY", out string errorMsg);
CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("barcoded.png", PresetTemplate.PT_READ_BARCODES);
DecodedBarcodesResult barcodes = result.GetDecodedBarcodesResult();
foreach (BarcodeResultItem item in barcodes.GetItems())
    Console.WriteLine($"{item.GetFormatString()}: {item.GetText()}");
LicenseManager.InitLicense("YOUR_DYNAMSOFT_LICENSE_KEY", out string errorMsg);
CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("barcoded.png", PresetTemplate.PT_READ_BARCODES);
DecodedBarcodesResult barcodes = result.GetDecodedBarcodesResult();
foreach (BarcodeResultItem item in barcodes.GetItems())
    Console.WriteLine($"{item.GetFormatString()}: {item.GetText()}");
Imports System

Dim errorMsg As String
LicenseManager.InitLicense("YOUR_DYNAMSOFT_LICENSE_KEY", errorMsg)
Dim cvr As New CaptureVisionRouter()
Dim result As CapturedResult = cvr.Capture("barcoded.png", PresetTemplate.PT_READ_BARCODES)
Dim barcodes As DecodedBarcodesResult = result.GetDecodedBarcodesResult()
For Each item As BarcodeResultItem In barcodes.GetItems()
    Console.WriteLine($"{item.GetFormatString()}: {item.GetText()}")
Next
$vbLabelText   $csharpLabel

IronBarcode通過一次調用來閱讀條碼:

var results = BarcodeReader.Read("shipment-label.png");
foreach (var barcode in results)
{
    Console.WriteLine($"Value: {barcode.Value}");
    Console.WriteLine($"Format: {barcode.BarcodeType}");
}
var results = BarcodeReader.Read("shipment-label.png");
foreach (var barcode in results)
{
    Console.WriteLine($"Value: {barcode.Value}");
    Console.WriteLine($"Format: {barcode.BarcodeType}");
}
Dim results = BarcodeReader.Read("shipment-label.png")
For Each barcode In results
    Console.WriteLine($"Value: {barcode.Value}")
    Console.WriteLine($"Format: {barcode.BarcodeType}")
Next
$vbLabelText   $csharpLabel

Capture Vision通過其CaptureVisionRouter工作流物件使用預設模板(PT_READ_BARCODES)來路由條碼閱讀,適合其廣泛多模式捕獲管道。IronBarcode是一擊即中。 對於將條碼與MRZ或文件標準化結合在同一工作流中的管道,Capture Vision的路由模型是適當的抽象; 對於簡單的伺服器端條碼閱讀,IronBarcode是一行。

MRZ識別

Capture Vision的標籤識別器和程式碼解析器組合處理護照和ID的MRZ(機器可讀區),以TD1和TD3格式輸出結構化字段。

LicenseManager.InitLicense("YOUR_DYNAMSOFT_LICENSE_KEY", out string errorMsg);
CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("passport.jpg", "ReadPassportAndId");
ParsedResult parsed = result?.GetParsedResult();
foreach (ParsedResultItem item in parsed.GetItems())
{
    Console.WriteLine($"Surname:   {item.GetFieldValue("primaryIdentifier")}");
    Console.WriteLine($"Given:     {item.GetFieldValue("secondaryIdentifier")}");
    Console.WriteLine($"DOB:       {item.GetFieldValue("dateOfBirth")}");
    Console.WriteLine($"Doc#:      {item.GetFieldValue("documentNumber")}");
    Console.WriteLine($"Expiry:    {item.GetFieldValue("dateOfExpiry")}");
}
LicenseManager.InitLicense("YOUR_DYNAMSOFT_LICENSE_KEY", out string errorMsg);
CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("passport.jpg", "ReadPassportAndId");
ParsedResult parsed = result?.GetParsedResult();
foreach (ParsedResultItem item in parsed.GetItems())
{
    Console.WriteLine($"Surname:   {item.GetFieldValue("primaryIdentifier")}");
    Console.WriteLine($"Given:     {item.GetFieldValue("secondaryIdentifier")}");
    Console.WriteLine($"DOB:       {item.GetFieldValue("dateOfBirth")}");
    Console.WriteLine($"Doc#:      {item.GetFieldValue("documentNumber")}");
    Console.WriteLine($"Expiry:    {item.GetFieldValue("dateOfExpiry")}");
}
Imports System

Dim errorMsg As String
LicenseManager.InitLicense("YOUR_DYNAMSOFT_LICENSE_KEY", errorMsg)
Dim cvr As New CaptureVisionRouter()
Dim result As CapturedResult = cvr.Capture("passport.jpg", "ReadPassportAndId")
Dim parsed As ParsedResult = If(result?.GetParsedResult(), Nothing)

If parsed IsNot Nothing Then
    For Each item As ParsedResultItem In parsed.GetItems()
        Console.WriteLine($"Surname:   {item.GetFieldValue("primaryIdentifier")}")
        Console.WriteLine($"Given:     {item.GetFieldValue("secondaryIdentifier")}")
        Console.WriteLine($"DOB:       {item.GetFieldValue("dateOfBirth")}")
        Console.WriteLine($"Doc#:      {item.GetFieldValue("documentNumber")}")
        Console.WriteLine($"Expiry:    {item.GetFieldValue("dateOfExpiry")}")
    Next
End If
$vbLabelText   $csharpLabel

Iron Suite的套件專注於一般文件自動化:PDF、Office、OCR、條碼和QR。 需要針對護照和ID進行結構化MRZ(TD1/TD3)解析的生產KYC和邊界控制工作流,並且庫中內建了命名字段提取和格式驗證,是Capture Vision的標籤識別器和程式碼解析器被設計的工作負載。Iron Suite使用者在低容量KYC中將IronOCR與MRZ字段模式的自定義正則表達式解析結合使用,而結構化字段模型和格式驗證仍然是Capture Vision的優勢。

文件標準化

Capture Vision的文件標準化器檢測相機捕獲圖像中的文件邊界,校正透視,和去斜,將手機相機快照變為平整,裁剪的掃描件。

CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("phone-snapshot.jpg",
    PresetTemplate.PT_DETECT_AND_NORMALIZE_DOCUMENT);
ProcessedDocumentResult normalized = result?.GetProcessedDocumentResult();
DeskewedImageResultItem[] pages = normalized.GetDeskewedImageResultItems();
for (int i = 0; i < pages.Length; i++)
{
    ImageData img = pages[i].GetImageData();
    img.Save($"page_{i + 1}_normalized.png");
}
CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("phone-snapshot.jpg",
    PresetTemplate.PT_DETECT_AND_NORMALIZE_DOCUMENT);
ProcessedDocumentResult normalized = result?.GetProcessedDocumentResult();
DeskewedImageResultItem[] pages = normalized.GetDeskewedImageResultItems();
for (int i = 0; i < pages.Length; i++)
{
    ImageData img = pages[i].GetImageData();
    img.Save($"page_{i + 1}_normalized.png");
}
Imports System

Dim cvr As New CaptureVisionRouter()
Dim result As CapturedResult = cvr.Capture("phone-snapshot.jpg", PresetTemplate.PT_DETECT_AND_NORMALIZE_DOCUMENT)
Dim normalized As ProcessedDocumentResult = result?.GetProcessedDocumentResult()
Dim pages As DeskewedImageResultItem() = normalized.GetDeskewedImageResultItems()

For i As Integer = 0 To pages.Length - 1
    Dim img As ImageData = pages(i).GetImageData()
    img.Save($"page_{i + 1}_normalized.png")
Next
$vbLabelText   $csharpLabel

IronOCR在其輸入管道中包括去斜和去噪,以清理預標準化的掃描件。 四角邊界檢測加上任意手機相機照片的視角校正,將快照變為平整裁剪的掃描件,準備好進行OCR,是Capture Vision的文件標準化器圍繞的工作負載。 使用者用手機相機拍攝文件的移動捕獲應用程式需要依賴Capture Vision來進行該標準化步驟。

標籤識別(區域OCR)

CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("vin-plate.jpg", PresetTemplate.PT_RECOGNIZE_TEXT_LINES);
RecognizedTextLinesResult lines = result?.GetRecognizedTextLinesResult();
foreach (TextLineResultItem line in lines.GetItems())
    Console.WriteLine($"Line (conf={line.GetConfidence()}): {line.GetText()}");
CaptureVisionRouter cvr = new CaptureVisionRouter();
CapturedResult result = cvr.Capture("vin-plate.jpg", PresetTemplate.PT_RECOGNIZE_TEXT_LINES);
RecognizedTextLinesResult lines = result?.GetRecognizedTextLinesResult();
foreach (TextLineResultItem line in lines.GetItems())
    Console.WriteLine($"Line (conf={line.GetConfidence()}): {line.GetText()}");
Imports System

Dim cvr As New CaptureVisionRouter()
Dim result As CapturedResult = cvr.Capture("vin-plate.jpg", PresetTemplate.PT_RECOGNIZE_TEXT_LINES)
Dim lines As RecognizedTextLinesResult = If(result?.GetRecognizedTextLinesResult(), Nothing)

If lines IsNot Nothing Then
    For Each line As TextLineResultItem In lines.GetItems()
        Console.WriteLine($"Line (conf={line.GetConfidence()}): {line.GetText()}")
    Next
End If
$vbLabelText   $csharpLabel

IronOCR處理一般文件的OCR,進行預處理:

var ocr = new IronTesseract();
using var input = new OcrInput("scanned-document.png");
input.Deskew();
input.DeNoise();
var result = ocr.Read(input);
Console.WriteLine($"Extracted text: {result.Text}");
var ocr = new IronTesseract();
using var input = new OcrInput("scanned-document.png");
input.Deskew();
input.DeNoise();
var result = ocr.Read(input);
Console.WriteLine($"Extracted text: {result.Text}");
Imports IronOcr

Dim ocr As New IronTesseract()
Using input As New OcrInput("scanned-document.png")
    input.Deskew()
    input.DeNoise()
    Dim result = ocr.Read(input)
    Console.WriteLine($"Extracted text: {result.Text}")
End Using
$vbLabelText   $csharpLabel

Capture Vision的標籤識別器針對短而結構化的文字(如VIN牌、序列號、貨架標籤、車牌),該文字區域小且高對比度進行調整。IronOCR針對具多段落的整頁文件OCR進行調整。對小而高對比度區域(如VIN牌、序列號、貨架標籤)的標籤級短文字識別,並每行進行可信度評分,是Capture Vision的標籤識別器設計的用途——對於具備一般用途預處理的整頁掃描文件OCR,IronOCR更合適。

程式碼解析器

Capture Vision的程式碼解析器按程式碼型別(GS1、AAMVA駕駛執照、ICAO MRZ、HIBC醫療)將原始條碼/MRZ負載轉換成結構化字段。

CodeParser parser = new CodeParser();
string aamvaPayload = "@\nANSI 636000100002DL00410288ZV03290015DLDAQT64235789\n...";
ParsedResultItem item = parser.Parse(aamvaPayload, "AAMVA_DL_ID");
Console.WriteLine($"Last name:  {item.GetFieldValue("familyName")}");
Console.WriteLine($"License #:  {item.GetFieldValue("licenseNumber")}");
CodeParser parser = new CodeParser();
string aamvaPayload = "@\nANSI 636000100002DL00410288ZV03290015DLDAQT64235789\n...";
ParsedResultItem item = parser.Parse(aamvaPayload, "AAMVA_DL_ID");
Console.WriteLine($"Last name:  {item.GetFieldValue("familyName")}");
Console.WriteLine($"License #:  {item.GetFieldValue("licenseNumber")}");
Dim parser As New CodeParser()
Dim aamvaPayload As String = "@\nANSI 636000100002DL00410288ZV03290015DLDAQT64235789\n..."
Dim item As ParsedResultItem = parser.Parse(aamvaPayload, "AAMVA_DL_ID")
Console.WriteLine($"Last name:  {item.GetFieldValue("familyName")}")
Console.WriteLine($"License #:  {item.GetFieldValue("licenseNumber")}")
$vbLabelText   $csharpLabel

IronBarcode從受管制的符號(AAMVA駕駛執照、GS1、ICAO MRZ、HIBC醫療)讀取原始負載,而結構化字段提取在應用程式碼中組合下游。 在這些負載系列中通過標準符合的命名字段解析作為第一類庫能力,是Capture Vision的程式碼解析器售出的工作負載。

為什麼在捕捉深度不是主要要求時選擇鐵套裝

大規模文件自動化,無需以捕獲為先的SDK的每裝置訂閱機制:這就是Iron Suite涵蓋PDF生成、Office輸出、一般用途OCR(包括約90%的英語手寫)、條碼和QR閱讀以及相鄰工具的所涵蓋的內容。 Iron Suite中的識別堆棧處理日常的採購後表面,具有區別於Capture Vision的MRZ、AAMVA、GS1和文件標準化專業化工作負載,這些工作負載適合於攝像頭優先捕獲部署。

特別是當相關需要:

  • 一般用途條碼閱讀和OCR達到您的準確性標準
  • 您未使用手機相機拍攝文件(不需文件標準化)
  • 您未建構KYC、邊界控制或駕駛執照工作流(不需MRZ/AAMVA解析)
  • 您需要跨越的文件自動化:PDF + Word + Excel + Print + ZIP以及條碼和OCR
  • 您想要無需每裝置訂閱的永久每開發者定價

Iron Suite如何與Dynamsoft Capture Vision不同

  • Iron Suite涵蓋PDF、Word、Excel、PowerPoint、Print、ZIP和WebScraper,還有OCR、條碼和QR,而Capture Vision僅涵蓋捕獲和識別。
  • 永久公開定價與訂閱:Iron Suite從$2,998開始永續,無需每年續訂即可繼續使用; Capture Vision 是按裝置或實例的年訂閱。
  • 每開發者與每裝置:Iron Suite按開發者計費並可免版稅伺服器部署; Capture Vision按部署的裝置或實例收費。
  • 使用Capture Vision時的捕獲和IDP,這裡涵蓋了什麼。MRZ(TD1/TD3)、AAMVA駕駛執照、GS1、HIBC、和ICAO結構化解析、相機幀文件標準化,以及相機增強模組是Capture Vision針對的工作負載。 Iron Suite專注於伺服器端文件自動化,PDF、Office、OCR(包括約90%英語準確度的手寫),Barcode和QR,ZIP,Print,和WebScraper。
  • 工作流路由器與庫:Capture Vision暴露了一個帶有預設模板的CaptureVisionRouter協同器; Iron Suite組件是您自己組合的獨立庫。
  • 移動/邊緣優先與伺服器優先:Capture Vision針對iOS/Android/MAUI/React Native邊緣部署進行調整; Iron Suite針對伺服器端.NET部署進行調整。

結論

對於發送護照掃描器、倉庫條碼應用或自助KYC照片流程的移動或自助服務亭產品團隊來說,Capture Vision是合適的工具。 針對攝像頭優先捕獲和結構化負載解析進行設計,每裝置按年度訂閱計費,MRZ、AAMVA、GS1和文件標準化專業化是移動車隊部署所依賴的。 對於將文件自動化伺服器(將資料轉化為發票、對上傳的掃描進行OCR、對運單進行條碼掃描)打包為.NET後端團隊的一次性永久授權,Iron Suite是工具集。 從$2,998起每開發者可在ironsoftware.com/csharp/suite購買,對已授權席位免版稅,另有針對超出基本範圍的任何SaaS或OEM場景的再分發附加組件。

請注意Dynamsoft Capture Vision是該註冊商標所有者的註冊商標。 本網站與Dynamsoft Capture Vision無關,未經其授權或贊助。 所有產品名稱、商標和品牌均為其各自所有者的財產。 比較僅供資訊參考,反映撰寫時公開可用的資訊。)