IRONSOFTWAREHOME
PORÓWNAJ Z INNYMI KOMPONENTAMI

Porównanie pomiędzy IronOCR a Dynamsoft OCR

Kannaopat Udonpant
Kannapat Udonpant
Updated: 8 maja 2026

Microsoft Office Document Imaging (MODI) był kiedyś komponentem OCR zainstalowanym w pakiecie MS Office 2003 i 2007, umożliwiającym programistom ekstrakcję tekstu z zeskanowanych obrazów bezpośrednio poprzez model obiektu oparty na COM. Przez lata klasa MODI.Document napędzała niezliczone projekty cyfryzacji dokumentów, konwertując pliki obrazu TIFF i BMP na tekst maszynowy w ramach rozwiązań Visual Studio.

Jednak historia MODI ma znaczącą trudność: Microsoft usunął go z wersji Office 2010 i późniejszych, pozostawiając programistom poleganie na przestarzałych instalacjach biurowych lub samodzielnych instalatorach, aby utrzymać swoją funkcjonalność OCR. Dla nowoczesnych projektów .NET skierowanych na wdrożenia ogólnokrajowe, środowiska chmurowe lub nowsze wersje Windows, MODI stanowi poważne utrudnienie.

W tym artykule przeanalizowano, jakMODI OCRw C# porównuje się z IronOCR, biblioteka OCR .NET zaprojektowaną specjalnie do optycznego rozpoznawania znaków, pod kątem implementacji kodu, funkcji, wsparcia platformy i licencjonowania. Niezależnie od obsługi kodu dziedziczonego czy zaczynania nowego projektu, szczegóły tutaj pomogą podjąć właściwą decyzję.

Wypróbuj IronOCR za darmo przez 30 dni, aby śledzić przykłady kodu poniżej.

Jak wygląda porównanie w skrócie?

KategoriaMODI OCRIronOCR
Architektura podstawowaCOM Interop; wymaga odniesienia do biblioteki DLL Microsoft Office Document ImagingCzysta biblioteka .NET; Silnik Tesseract 5 zoptymalizowany dla C#
Obsługa platformTylko Windows; wymaga zainstalowania Office 2003/2007 na komputerzeWindows, Linux, macOS, Azure, Docker, iOS, Android
Formaty obrazówTIFF, MDI, BMPTIFF, PNG, JPEG, BMP, GIF, PDF, obrazy wielostronicowe
Obsługa języków~22 języki poprzez parametr miLANG125+ języków poprzez paczki językowe NuGet
Dokładność OCRWysoka na czystych dokumentach o standardowej czcionce99,8%+ z automatycznymi filtrami korekcji obrazów
Opcje wyjścioweZwykły tekst z obiektu LayoutZwykły tekst, przeszukiwalny PDF, dane strukturalne (strony, linie, słowa, kody kreskowe)
InstalacjaInstalator Office + odniesienie COM w Eksploratorze RozwiązańPaczka NuGet: Install-Package IronOcr
Aktywny rozwójPrzerwano po Office 2007Utrzymywane aktywnie z regularnymi aktualizacjami
LicencjonowanieWymaga odpowiedniej licencji Microsoft OfficeLicencje wieczyste od $999; bezpłatna 30-dniowa wersja próbna
WsparcieTylko fora społecznościoweBezpośrednie wsparcie inżynieryjne poprzez email, czat na żywo i telefon

How Does Microsoft Office Document Imaging Perform OCR in C#?

MODI wykonuje optyczne rozpoznawanie znaków (OCR) poprzez model obiektowy oparty na COM. Proces rozpoczyna się od stworzenia obiektu MODI.Document, załadowania ścieżki pliku obrazu i wezwania metody OCR w celu analizy obrazów i identyfikacji znaków. Po zakończeniu procesu OCR, tekst i informacje o układzie są dostępne poprzez obiekty Image i Layout dla każdej strony.

Aby używać MODI w projekcie Visual Studio, trzeba dodać odniesienie do Biblioteki Typów Microsoft Office Document Imaging. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem myszy folder Odwołania, wybierz kartę COM i wybierz odpowiednią wersję MODI (11.0 dla Office 2003 lub 12.0 dla Office 2007).

// MODI OCR: Extracting text from a scanned TIFF document
private string ExtractTextFromImage(string path)
{
    string extractedText = "";
    MODI.Document doc = new MODI.Document();
    try
    {
        // Create the document object from the image file path
        doc.Create(path);
        // Run optical character recognition with English language
        doc.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true);
        // Access the first page image and retrieve recognized text
        MODI.Image modiImage = (MODI.Image)doc.Images[0];
        extractedText = modiImage.Layout.Text;
    }
    catch (Exception ex)
    {
        // Handle OCR exceptions for unsupported or corrupted image files
        string message = ex.Message;
        Console.WriteLine(message);
    }
    finally
    {
        doc.Close(false);
        System.Runtime.InteropServices.Marshal.ReleaseComObject(doc);
    }
    return extractedText;
}

Ta funkcja demonstruje standardowy przepływ pracy MODI: metoda Create ładuje plik, metoda OCR wykonuje rozpoznanie przy użyciu określonego języka, a Layout.Text dostarcza wyekstrahowany ciąg znaków. Instrukcja zwrotu extractedText dostarcza dane wyjściowe do wywołującego.

Podczas gdy MODI oferuje przyzwoitą dokładność dla czystych, wysokiej jakości obrazów dokumentów, ma znaczące ograniczenia. Obsługuje tylko formaty TIFF, MDI i BMP. Wymaga instalacji Microsoft Office na każdym komputerze, który uruchamia aplikację, w tym serwerach produkcyjnych. Nie ma wbudowanego wsparcia dla skanowania obrazów niskiej jakości, korekcji przekosu ani redukcji cyfrowego szumu. Ponadto, ponieważ MODI polega na COM Interop, nie można go używać w .NET Core, .NET 5+ ani w żadnym scenariuszu ogólnokrajowym, co czyni go nieodpowiednim dla nowoczesnych celów wdrożeniowych, takich jak kontenery Docker czy usługi aplikacji Azure.

Jak nowoczesna biblioteka .NET obsługuje funkcjonalność OCR?

IronOCR zastępuje podejście COM Interop czystym API .NET, które instaluje się za pośrednictwem pojedynczego pakietu NuGet. Klasa IronTesseract owija mocno zoptymalizowany silnik Tesseract 5, a klasa OcrInput obsługuje ładowanie obrazów, wstępne przetwarzanie i obsługę wielu formatów, wszystko bez potrzeby Microsoft Office lub jakiejkolwiek zewnętrznej zależności na docelowym komputerze.

using IronOcr;
// Create the IronTesseract OCR engine object
var ocr = new IronTesseract();
using var input = new OcrInput();
// Load images in any common format — PNG, JPEG, TIFF, BMP, GIF, or PDF
input.LoadImage("scanned-document.tiff");
// Apply filters to correct low-quality scans automatically
input.Deskew();   // Straighten skewed page images
input.DeNoise();  // Remove digital noise from scanning artifacts
// Read text from the processed document
var result = ocr.Read(input);
// Output plain text
Console.WriteLine(result.Text);
// Save as a searchable PDF for document management system integration
result.SaveAsSearchablePdf("output-searchable.pdf");

Wynik IronOCR

MODI OCR C# vs. IronOCR: Wybor odpowiedniej biblioteki optycznego rozpoznawania znakow w C#: Obraz 1 - przyklad wyjscia IronOCR

Powyższy kod pokazuje, jak IronOCR przetwarza skan TIFF poprzez kompletny proces OCR w zaledwie kilku liniach. Obiekt OcrInput akceptuje praktycznie dowolny plik obrazu lub dokument PDF, podczas gdy Deskew() i DeNoise() korygują typowe artefakty skanowania, które mogłyby spowodować, że MODI wygenerowałoby słabe wyniki. Metoda Read zwraca obiekt OcrResult zawierający nie tylko tekst, ale i uporządkowane dane zorganizowane według strony, akapitu, linii i słowa, każdy z wynikami pewności i informacją o współrzędnych

Dla projektów przetwarzających faktury, formularze lub pliki TIFF wielostronicowe,IronOCR zawiera także możliwości widzenia komputerowego lokalizujące regiony tekstowe automatycznie, czytanie kodów kreskowych i QR w jednym przejściu oraz wsparcie dla 125+ języków instalowanych jako pakiety NuGet.

Jakie są kluczowe różnice przy ekstrakcji tekstu z obrazów?

Rzeczywista różnica między tymi dwoma opcjami ujawnia się, gdy przestaniesz używać "idealnych" plików i zaczniesz przetwarzać dokumenty z rzeczywistego świata. Mówimy o tych chaotycznych skanach z plamami po kawie, przechylonymi stronami lub zdjęciami o niskiej rozdzielczości z telefonu.

MODI zostało stworzone na inną epokę, specjalnie dla czystych, wysokokontrastowych dokumentów biurowych. Jeśli masz wyraźny plik TIFF z wysokiej klasy skanera, to będzie działać dobrze. Ale jeśli twój obraz jest nawet lekko obrócony lub zawiera trochę cyfrowego "szumu", dokładność MODI drastycznie spada. Ponieważ nie ma wbudowanych filtrów do naprawy tych problemów, musisz samodzielnie wstępnie przetworzyć obrazy, używając drugiej biblioteki jak GDI+ lub System.Drawing, zanim rozpoczniesz proces OCR. Zarządzanie pamięcią jest również dość uciążliwe; jeśli nie wywołasz ręcznie Marshal.ReleaseComObject, najprawdopodobniej natkniesz się na wycieki pamięci w produkcji.

IronOCR wykonuje tę ciężką pracę za Ciebie od razu po wyjęciu z pudełka. Zamiast pisać własny kod do oczyszczania obrazu, po prostu wywołujesz input.Deskew() lub input.DeNoise(). Te filtry przygotowują obraz, aby silnik osiągnął 99,8% dokładności, nawet na "brzydkich" dokumentach.

Porada: Jeśli migrujesz z MODI, nie zamieniaj tylko kodu, skorzystaj z danych o układzie. W przeciwieństwie do MODI, które głównie dawają ogromną "bryłę" tekstu,IronOCR dzieli go na akapity i linie z wynikami pewności. To jest niezastąpione, jeśli tworzysz automatyczny procesor faktur i musisz oznaczać dokumenty, które mogą potrzebować weryfikacji przez człowieka.

Warto również zauważyć, że IronOCR obsługuje TIFFy i PDFy wielostronicowe jako jeden obiekt. Nie musisz manulanie przechodzić przez obrazy jak w starej kolekcji MODI.Images. Jest po prostu szybsze, czystsze i naprawdę dużo mniej podatne na awarie.

Jak programiści mogą migrować z podejścia legacy?

Zastąpienie MODI w istniejącym projekcie jest proste. Główna migracja polega na zamianie referencji COM na pakiet NuGet i aktualizacji wywołań metod OCR. Oto jak wzorzec MODI przekłada się na nowoczesny odpowiednik:

using IronOcr;
// Replace: MODI.Document doc = new MODI.Document();
var ocr = new IronTesseract();
// Replace: doc.Create(filePath); with OcrInput
using var input = new OcrInput();
input.LoadImage("document.tiff");  // Accepts the same TIFF files MODI used
// Replace: doc.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true);
ocr.Language = OcrLanguage.English;
// Replace: modiImage.Layout.Text
var result = ocr.Read(input);
string text = result.Text;
Console.WriteLine(text);

Mapowanie jest niemal jeden-do-jednego: MODI.Document.Create staje się OcrInput.LoadImage, metoda OCR z parametrami językowymi staje się ocr.Language wraz z ocr.Read, a Layout.Text staje się result.Text. Bez referencji COM, bez zależności Office, bez Marshal.ReleaseComObject do ręcznego zarządzania pamięcią.

Poza bezpośrednią zamianą, migracja również odblokowuje funkcje, które po prostu nie istnieją w MODI: wdrożenie wieloplatformowe do Linuxa i macOS, wdrożenie w chmurze i kontenerze, wyjście w postaci przeszukiwalnego PDF i kompletny silnik Tesseract 5 z możliwościami treningu czcionek.

Które rozwiązanie najlepiej odpowiada współczesnym potrzebom OCR?

MODI spełniało swoją rolę w epoce, gdy Microsoft Office był standardowym wyposażeniem każdego komputera z Windows. Dla zespołów utrzymujących systemy legacy, które już zależą od Office 2003 lub 2007, może nadal działać, ale stanowi kruche uzależnienie od porzuconego oprogramowania bez drogi naprzód.

Dla każdego nowego projektu, lub każdego systemu legacy zmierzającego ku modernizacji,IronOCR zapewnia kompletną, aktywnie utrzymywaną rozwiązanie. Całkowicie eliminuje zależność od Office, działa na każdej głównej platformie, obsługuje niskiej jakości obrazy, które zatrzymałyby starsze podejście, i dostarcza strukturalne wyjście OCR daleko wykraczające poza zwykły tekst. Z rozbudowana dokumentacja, bezposrednim wsparciem inzynierskim i licencjonowaniem wieczystym od $999, jest przeznaczony do przetwarzania dokumentow klasy produkcyjnej na duza skale.

Pierwszy krok:
arrow pointer

Gotowy na wdrożenie OCR w produkcji? Zobacz opcje licencjonowania IronOCR by znaleźć odpowiednie dla Twojego zespołu.

Zwróć uwagę: Microsoft MODI i Tesseract są zarejestrowanymi znakami towarowymi ich odpowiednich właścicieli}. Ta strona nie jest powiązana, zatwierdzona ani sponsorowana przez Google ani Microsoft. Wszystkie nazwy produktów, logo i marki są własnością ich odpowiednich właścicieli. Porównania mają charakter wyłącznie informacyjny i odzwierciedlają informacje dostępne publicznie w momencie pisania.

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Otrzymaj swoją Konsultację Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta