DuckX
Open Source C++ API dla dokumentów Word OOXML
Twórz, czytaj, aktualizuj i eksportuj pliki Microsoft Office Word DOCX w aplikacjach C++.
DuckX to bezpłatna biblioteka C ++ Open Source, która umożliwia programistom pracę z Microsoft Word (DOCX) we własnych aplikacjach. API może czytać, pisać i edytować dokumenty MS Word, które mają rozszerzenie pliku .docx.
Interfejs API jest bardzo stabilny i zapewnia obsługę wielu ważnych funkcji przetwarzania programu Word, takich jak tworzenie i zapisywanie dokumentów DOCX, dodawanie akapitów, nagłówki, wstawianie tekstu, dodawanie tabel, dodawanie obrazów, style akapitów, stosowanie formatowania tekstu i wiele innych.
Pierwsze kroki z DuckX
Preferowanym sposobem jest utworzenie folderu kompilacji.
Utwórz folder kompilacji dla DuckX
git clone https://github.com/amiremohamadi/DuckX.git
cd DuckX
mkdir build
cd build
cmake ..
cmake --build;
C++ API do otwierania i czytania dokumentów Word DOCX
Biblioteka DuckX umożliwia profesjonalistom ds. oprogramowania otwieranie istniejących dokumentów Word DOCX w ich własnych aplikacjach bez korzystania z programu Microsoft Word. Możesz przeglądać akapity, biegi i drukować je. Daje również funkcjonalność modyfikowania dokumentów tekstowych, możesz także dodawać obrazy, tekst, czcionki, formatowanie tekstu i inne.
Jak otwierać i czytać dokumenty Word przez C++ API
#include
#include
int main() {
duckx::Document doc("file.docx");
doc.open();
for (auto p : doc.paragraphs())
for (auto r : p.runs())
std::cout << r.get_text() << std::endl;
}
Wstaw & Road Table wewnątrz Word DOCX File
Biblioteka DuckX daje programistom możliwość wstawiania tabel do dokumentu Word DOCX w aplikacjach C++. Tabele MS Word odgrywają bardzo ważną rolę w układaniu dobrze sformatowanych danych. Tabele to dobry sposób prezentacji danych w wierszach i kolumnach. Są bardzo proste do wstawiania i manipulowania w plikach Word.
Wsparcie odczytu tabeli w dokumentach Word przez C++ API
#include "../src/duckx.hpp"
using namespace std;
// Print a paragraph and all children runs
void print_paragraph(duckx::Paragraph& p) {
for (auto r = p.runs(); r.has_next(); r.next()) {
cout << r.get_text() << endl;
}
}
int main() {
duckx::Document doc("my_test.docx");
doc.open();
cout << "Paragraph content:" << endl;
for (auto p = doc.paragraphs(); p.has_next(); p.next()) {
for (auto r = p.runs(); r.has_next(); r.next()) {
cout << r.get_text() << endl;
}
print_paragraph(p);
}
cout << "Table content:" << endl;
for (auto t = doc.tables(); t.has_next(); t.next()) {
for (auto tr = t.rows(); tr.has_next(); tr.next()) {
for (auto tc = tr.cells(); tc.has_next(); tc.next()) {
for (auto p = tc.paragraphs(); p.has_next(); p.next()) {
print_paragraph(p);
}
}
}
}
return 0;
}
Dodawanie obrazów do plików Word DOCX
Biblioteka DuckX zapewnia funkcjonalność wstawiania obrazów do dokumentu Word DOCX. Aby dodać obraz, musisz podać nazwę i lokalizację obrazu. Deweloperzy mogą również określić zarówno szerokość, jak i wysokość obrazu.