Procijenili smo 12 .NET biblioteka za obradu dokumenata Microsoft Word, od besplatnog Open XML SDK i NPOI, preko komercijalnih opcija srednjeg ranga kao što su IronWord, GemBox.Document i Spire.Doc, do poslovnih rješenja kao što su Aspose.Words i Syncfusion DocIO. Nijedna C# Word biblioteka nije pobjednik u svim dimenzijama. Aspose.Words prednjači u značajkama, Syncfusion DocIO u početnoj vrijednosti (besplatna licencna oznaka zajednice), GemBox.Document u performansama, IronWord u modernom API dizajnu i sinergiji Iron Suitea, a Open XML SDK u slobodi bez troškova. Ovaj članak vam pruža tablice značajki, usporedne kodne primjere, tablice cijena i okvir za odlučivanje za odabir pravih softverskih rješenja za vaš projekt. TL;DR: Odaberite pogrešnu Word API biblioteku za vašu .NET aplikaciju i problem ćete otkriti šest mjeseci kasnije, kada klijent zatraži spajanje pošte (mail merge), a vaša biblioteka to ne podržava, kada vam se CI pipeline pokvari jer biblioteka zahtijeva instaliran Microsoft Office, ili kada shvatite da je "besplatno" došlo s klauzulom o nekomercijalnoj upotrebi koju ste propustili. Procijenili smo 12 .NET biblioteka za kreiranje i manipulaciju dokumentima Microsoft Word korištenjem C#, pokrećući svaku kroz identične zadatke: osnovno postavljanje novog dokumenta, stiliziranje, generiranje tablica, ugrađivanje slika i izlaz temeljen na predlošku. Usporedili smo API-je, testirali prekograničnu primjenu, provjerili podršku za .NET 8 i .NET 10, katalogizirali značajke i dokumentirali zamke licenciranja koje spotaknu timove usred projekta. Ovaj članak je rezultat. Puno obavještenje: mi smo tim koji stoji iza IronWorda, jedne od biblioteka u ovoj usporedbi. To je rečeno, vjerujemo da iskreni evaluacije služe programerima bolje nego marketinški spin. Pokazat ćemo našu metodologiju, priznati naše predrasude i pustiti da kod govori sam za sebe. Tamo gdje konkurent istinski nadmaši IronWord, to ćemo i reći. Evo kako izgleda samo nekoliko redaka modernog C# Word API koda za generiranje dokumenata s IronWordom, samo da bismo postavili pozornicu za ono što je moguće s današnjim bibliotekama: using IronWord; using IronWord.Models; WordDocument doc = new WordDocument(); doc.AddText("Hello from IronWord — no Office required."); doc.SaveAs("hello.docx"); Generirani DOCX fajl Svaka biblioteka u ovoj usporedbi može proizvesti isti dokument. Razlike, API dizajn, dubina značajki, mogućnosti konverzije, cijene i podrška za platforme, određuju koja pripada vašem projektu. To je ono o čemu se radi u ovoj usporedbi. Zašto vaš izbor DOCX biblioteke ima važnost Odabir Word biblioteke je dugoročna arhitektonska odluka. Migriranje s jedne nakon izgradnje Word predložaka, logike formatiranja i cjevovoda za generiranje dokumenata oko njenog API-ja je skupo. Vidjeli smo timove zaključane u bibliotekama koje se ne mogu pokrenuti na .NET Coreu, ne mogu se implementirati u Docker, ili ne mogu rukovati više dokumenata istovremeno. Kriteriji evaluacije koje smo koristili tijekom ove usporedbe: — Koliko redaka koda je potrebno za izvršavanje uobičajenih zadataka? Koliko je intuitivan objektni model? Kako rukuje Word dokumentima? API dizajn — Tekst, , , zaglavlja/podnožja, spajanje pošte, praćenje promjena, digitalni potpisi, mogućnost uređivanja postojećih Word dokumenata Dubina značajki tablice slike — Pretvara li Word dokumente u PDF datoteku ili druge formate datoteka? Može li održati dosljedno formatiranje? Podrška za formate — Potrošnja memorije i propusnost za scenarije batch generiranja Performanse — .NET verzije, operativni sustavi, Docker, cloud implementacija Podrška za platforme — Besplatno, freemium, po programeru, po serveru, poslovne licencije Cijene — Primjeri koda, API reference, vodiči za početak rada Kvaliteta dokumentacije — Trendovi preuzimanja s Nugeta, aktivnost na GitHubu, ritam izdavanja Zajednica i održavanje Kratka napomena o tome kako DOCX funkcionira: DOCX datoteka je ZIP arhiva koja sadrži XML datoteke u skladu s . Svaka biblioteka u ovoj usporedbi manipulira tim XML datotekama na različite načine, neke vam daju sirov pristup XML-u, druge pružaju objektni model na visokoj razini. Ta arhitektonska razlika pokreće većinu ergonomije API-ja i kompromisa značajki s kojima ćete se susresti. definira formalni standard, a Microsoftov je referentna implementacija. Office Open XML (OOXML) standardom ECMA-376 specifikacija Open XML SDK na GitHubu Potpuni sastav — Tablica za brzu referencu Prije nego što zaronimo u pojedinačne profile, evo cjelokupnog krajolika na prvi pogled. Označite ovu tablicu, to je najbrži način da suzite svoj uži izbor. Biblioteka Tip Licenca .NET 8 (LTS) .NET 10 Word→PDF Spajanje pošte Najbolje za Open XML SDK OSS MIT ✅ ✅ ❌ ❌ XML kontrola bez zavisnosti NPOI OSS Apache 2.0 ✅ ✅ ❌ ❌ Višestruki formati (Word + Excel) Xceed DocX OSS* Zajednica (nekomercijalna) ✅ ✅ ❌ ❌ Prototipiranje čistog API-ja OfficeIMO OSS MIT ✅ ❓ ❌ ❌ Jednostavni Word zadaci FileFormat.Words OSS MIT ✅ ❓ ❌ ❌ Lagane DOCX operacije Aspose.Words Komercijalni Po programeru ✅ ✅ ✅ ✅ Maksimalna dubina značajki Syncfusion DocIO Komercijalni Po programeru (besplatni nivo zajednice) ✅ ✅ ✅ ✅ Startupovi i korisnici Syncfusiona Spire.Doc Komercijalni Po programeru (dostupno besplatno izdanje) ✅ ✅ ✅ ✅ Konverzija formata srednjeg ranga GemBox.Document Komercijalni Po programeru (besplatni nivo: 20 paragrafa) ✅ ✅ ✅ ✅ Aplikacije kritične za performanse IronWord Komercijalni Po programeru ✅ ✅ ❌ ❌ Moderni API + Iron Suite sinergija Telerik WordsProcessing Komercijalni Uključeno uz Telerik UI ✅ ✅ ✅ ✅ Timovi unutar Telerik ekosistema Document Solutions for Word Komercijalni Po programeru ✅ ✅ ✅ ✅ Generiranje temeljeno na predlošku MS Office Interop Naslijeđeno Zahtijeva Office licencu ⚠️ ⚠️ ✅ ✅ Samo za desktop, Office prisutan Tablica 1: Usporedna tablica za brzu referencu svih 12 C# Word biblioteka koje su procijenjene. ✅ = podržano, ❌ = nije podržano, ⚠️ = ograničena/naslijeđena podrška, ❓ = nepotvrđeno. *Xceed DocX je besplatan pod Licencom zajednice za nekomercijalnu upotrebu. Produkcijska upotreba zahtijeva komercijalnu licencu Xceed Words for .NET. Sada pogledajmo svaku biblioteku detaljno. Grupirali smo ih u tri kategorije: besplatne/otvorenog koda, komercijalne i naslijeđene (Office Interop). Besplatne i biblioteke otvorenog koda Ove biblioteke ne koštaju ništa za korištenje, ali "besplatno" ne znači "bez kompromisa". Svaka ima različita ograničenja koja određuju gdje se uklapa. Open XML SDK (Microsoft) je Microsoftova službena, niskonaponska biblioteka za manipulaciju Office Open XML dokumentima. Daje vam direktan pristup XML strukturi unutar .docx datoteka s tipiziranim .NET klasama. Open XML SDK using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Wordprocessing; using var doc = WordprocessingDocument.Create("hello.docx", WordprocessingDocumentType.Document); var mainPart = doc.AddMainDocumentPart(); mainPart.Document = new Document( new Body( new Paragraph( new Run( new Text("Hello from Open XML SDK"))))); Izlaz Open XML SDK To je 8 redaka — uključujući `using` izjave — za proizvodnju jednog paragrafa neobrađenog teksta. Dodavanje formatiranja, tablica ili slika značajno povećava opširnost jer eksplicitno gradite XML čvorove. : Nulta cijena (MIT licenca), nula vanjskih zavisnosti, masivna zajednica, službena Microsoftova podrška, potpuna pokrivenost Open XML specifikacije, . Dostupno na s preko 300 milijuna kumulativnih preuzimanja. Izdanja v3.4.x (kraj 2025.) dodala su optimizacije performansi smanjujući veličinu JIT i AOT kompilacije. Prednosti odlična dokumentacija na Microsoft Learnu NuGet : Nema apstrakcije modela dokumenata, vi sastavljate XML. Nema konverzije Word u PDF, nema renderiranja, nema spajanja pošte. Krivulja učenja je strma; morate razumjeti Open XML specifikaciju da biste je efikasno koristili. Ograničenja : Timove kojima je potrebna granularna XML kontrola bez zavisnosti, koji su udobni s opširnošću i ne trebaju značajke renderiranja ili konverzije. Najbolje za NPOI je .NET port Apache POI-a, Java biblioteke za Microsoft Office formate. Rukuje Word (DOCX/DOC) i Excel (XLSX/XLS) dokumentima. S preko tijekom svog životnog vijeka, to je jedna od najutvrđenijih biblioteka otvorenog koda za Office u .NET ekosistemu. NPOI 700 milijuna NuGet preuzimanja : Besplatno (Apache 2.0), rukuje i Wordom i Excelom s jednom zavisnošću, podržava naslijeđeni .doc format (ne samo DOCX), cross-platform, zreo projekt s dugom povijesti. Prednosti Evo kako izgleda osnovno NPOI generiranje Word dokumenata: using NPOI.XWPF.UserModel; XWPFDocument doc = new XWPFDocument(); XWPFParagraph para = doc.CreateParagraph(); XWPFRun run = para.CreateRun(); run.SetText("Hello from NPOI"); run.IsBold = true; run.FontSize = 14; using FileStream fs = new FileStream("hello.docx", FileMode.Create); doc.Write(fs); Izlaz NPOI Ako ste koristili Apache POI u Javi, ovo će izgledati poznato, to je i prednost (prebacivanje znanja među jezicima) i nedostatak (Java idiomi u C# kodu). : API odražava Java konvencije, što može djelovati neidiomatski u C#. Dokumentacija je oskudna, većina smjernica dolazi od prevođenja Java POI primjera. Podrška za DOCX je funkcionalna, ali manje uglađena nego na strani XLSX. Aktivnost zajednice je usporena posljednjih godina, s manje izdanja nego tijekom vrhunca biblioteke. Ograničenja : Timove koji već koriste NPOI za obradu Excela i kojima su potrebne osnovne Word mogućnosti iz iste biblioteke, ili projekte koji zahtijevaju podršku za naslijeđeni .doc format. Najbolje za Xceed DocX / Xceed Words for .NET je jedna od najpopularnijih biblioteka otvorenog koda za Word na GitHubu, izvorno stvorena od Cathala Coffeya, a sada ju održava . Besplatna verzija licence Zajednice rukuje većinom uobičajenih zadataka; komercijalni dodaje izvoz u PDF, grafikone, digitalne potpise i napredne značajke. Xceed DocX Xceed Software Xceed Words for .NET // Xceed DocX (Community License) using Xceed.Document.NET; using Xceed.Words.NET; using var doc = DocX.Create("hello.docx"); doc.InsertParagraph("Hello from Xceed DocX") .FontSize(14) .Bold() .Color(System.Drawing.Color.DarkBlue); doc.Save(); Izlaz Xceed DocX To je čist, tečan .NET Word API, jedan od najboljih u otvorenom izvornom rangu. : Intuitivan tečni API, aktivan razvoj (v5.0.0 izdan 2025. septembra), dobra dokumentacija, podrška za grafikone, paralelna obrada dokumenata, primjena predložaka. Komercijalno ažuriranje dodaje konverziju u PDF i podršku za .NET 9+ bez zavisnosti od System.Drawing.Common. Prednosti : Licenca Zajednice ograničava upotrebu na nekomercijalne projekte. Čim implementirate u produkciju, potreban vam je Xceed Words for .NET (komercijalna licenca). Neki programeri to ne shvataju do kasno u razvoju. Ograničenja : Prototipiranje i nekomercijalne projekte kojima je potreban čist API. Timovi voljni kupiti komercijalnu licencu za produkciju dobivaju jedan od najergonomičnijih DOCX API-ja dostupnih. Najbolje za OfficeIMO je pojednostavljeni omotač izgrađen na vrhu Open XML SDK-a, kreiran od strane Przemysława Klysa ( ). Cilj mu je pojednostaviti uobičajene Word operacije bez opširnosti sirovog Open XML-a. OfficeIMO Evotec : Besplatno (MIT), dramatično jednostavnije nego direktno korištenje Open XML SDK-a, rukuje zaglavljima/podnožjima/sekcijama s minimalnim kodom, dobro za jednostavne zadatke. Prednosti : Ograničen skup značajki, samo osnovno formatiranje i struktura dokumenta. Nema konverzije u PDF, nema naprednog stiliziranja, nema spajanja pošte. Projekt ima nižu učestalost izdavanja od nekih alternativa. Podrška za .NET 10 je nepotvrđena u trenutku pisanja. Ograničenja : Male uslužne programe ili interne alate kojima je potrebno generirati jednostavne Word dokumente bez budžeta ili složenih zahtjeva. Najbolje za FileFormat.Words je biblioteka otvorenog koda izgrađena na vrhu , pružajući API više razine za kreiranje i konverziju dokumenata. FileFormat.Words OpenXML SDK-a : Besplatno (MIT), izgrađeno na dobro testiranoj OpenXML SDK osnovi, podržava konverziju dokumenata (Word u PDF, HTML i slike bez potrebe za Wordom), lagano. Prednosti : Manja zajednica u usporedbi s Open XML SDK ili Xceed DocX. Napredne opcije formatiranja su ograničene. Rukovanje dokumentima zaštićenim lozinkom je prijavljeno nedosljedno. Dokumentacija još uvijek raste. Ograničenja : Lagane projekte kojima je potrebna osnovna DOCX manipulacija s nekim mogućnostima konverzije, i gdje programer preferira rješenje otvorenog koda. Najbolje za Komercijalne biblioteke Komercijalne biblioteke zamjenjuju troškove licenciranja za dubinu značajki, podršku i brzinu razvoja. Raspon cijena ovdje se kreće od besplatnih nivoa zajednice do poslovnih licenci od više tisuća dolara. Aspose.Words for .NET je najsveobuhvatnija biblioteka za obradu Word dokumenata u .NET ekosustemu. Ako značajka postoji u Microsoft Wordu, Aspose.Words je gotovo sigurno podržava. Aspose.Words using Aspose.Words; var doc = new Document(); var builder = new DocumentBuilder(doc); builder.Font.Size = 14; builder.Font.Bold = true; builder.Writeln("Hello from Aspose.Words"); doc.Save("hello.docx"); doc.Save("hello.pdf"); // Ugrađeni izvoz u PDF Obrazac `DocumentBuilder` pruža API temeljen na kursoru koji je pristupačan za uobičajene zadatke, dok puni DOM daje naprednu kontrolu. : 30+ ulaznih/izlaznih formata (DOCX, DOC, RTF, ODT, HTML, PDF, Markdown, EPUB i više), visokovjerni rendering Word u PDF, moćan motor za spajanje pošte, usporedba dokumenata (praćenje promjena između verzija), podržava složene rasporede i mogućnost lakog dodavanja vizualnih elemenata. Naprednije funkcionalnosti uključuju mogućnost primjene zaštite lozinkom, pronalaženje i zamjenu teksta pomoću regexa za dinamički sadržaj, digitalne potpise, popunjavanje obrazaca, LINQ izvještajni motor, . Biblioteka je u aktivnom razvoju gotovo dva desetljeća i dostupna je na . Prednosti opsežni primjeri koda na GitHubu NuGet : Najviša cjenovna točka u ovoj usporedbi, licence za male poslovne korisnike počinju od 1.199 USD/godini, a OEM licence za poslovne korisnike koštaju znatno više. Veličina sklopa je velika. Za timove kojima je potrebna samo osnovna izrada DOCX dokumenata, Aspose.Words je poput korištenja teretnog broda za prelazak preko bare. Površina API-ja je ogromna, što može preplaviti programere kojima je samo potrebno generirati fakture. Ograničenja : Poslovne cjevovode za obradu dokumenata koji zahtijevaju maksimalnu podršku za formate, visokovjerne konverzije i spajanje pošte u velikim razmjerima. Ako vaši zahtjevi uključuju pretvaranje Word-a u PDF s preciznošću piksela, Aspose.Words je mjerilo. Najbolje za Syncfusion DocIO dio je Syncfusionovog masivnog paketa za obradu dokumenata. Ističe se iz jednog ključnog razloga: čini ga . Syncfusion DocIO Licenca Zajednice besplatnim za pojedince i tvrtke s manje od 1 milijun USD godišnjeg prihoda using Syncfusion.DocIO; using Syncfusion.DocIO.DLS; WordDocument doc = new WordDocument(); IWSection section = doc.AddSection(); IWParagraph para = section.AddParagraph(); IWTextRange text = para.AppendText("Hello from Syncfusion DocIO"); text.CharacterFormat.FontSize = 14; text.CharacterFormat.Bold = true; doc.Save("hello.docx", FormatType.Docx); doc.Close(); Izlaz Syncfusion DocIO : Bogato spajanje pošte s ugniježđenim regijama i uvjetnim poljima, usporedba dokumenata, konverzija Word u PDF, uvoz HTML u Word, popunjavanje obrazaca, s više od 100 primjera koda, cross-platform (.NET MAUI, Blazor, Xamarin). je zaista velikodušna za kvalificirane timove. Aktivna suradnja s Microsoftom na .NET ekosustavu. Prednosti opsežna dokumentacija Licenca zajednice : API koristi tradicionalniji, opširniji objektni model (sličan Word DOM-u). Ako ne ispunjavate uvjete za licencu zajednice, primjenjuju se komercijalne cijene po programeru. Eko-sustav Syncfusion paketa je velik, povlačenje DocIO može donijeti više zavisnosti nego što očekujete. Krivulja učenja za puni skup značajki je umjerena. Ograničenja : Startupove koji ispunjavaju uvjete za licencu zajednice i kojima je potrebno spajanje pošte i konverzija dokumenata poslovne razine. Također snažno za timove koji već koriste Syncfusion UI komponente, integracija je besprijekorna. Najbolje za Spire.Doc za .NET (e-iceblue) je komercijalna biblioteka bogata značajkama od e-icebluea koja pokriva kreiranje, uređivanje i konverziju MS Word dokumenata u širokom rasponu formata. Biblioteka je dostupna na s besplatnim i plaćenim izdanjima. Spire.Doc NuGet : Široka podrška za formate (DOCX, DOC, RTF, TXT, HTML, PDF, slike, EPUB, Markdown i više), spajanje pošte, podržava elemente Word dokumenata kao što su polja obrasca, usporedba dokumenata, digitalni potpisi, pronalaženje i zamjena, LaTeX matematički simboli. Dostupno je besplatno izdanje (ograničeno na 500 paragrafa i 25 tablica po dokumentu). Podržava .NET 10 Prednosti