1. Produkte
  2.   Textverarbeitung
  3.   C++
  4.   DuckX  

DuckX  

 
 

Open-Source-C++-API für Word-OOXML-Dokumente

 Erstellen, lesen, aktualisieren und exportieren Sie Microsoft Office Word DOCX-Dateien in C++-Anwendungen.

DuckX ist eine kostenlose Open-Source-C++-Bibliothek, die es Softwareentwicklern ermöglicht, mit Microsoft Word (DOCX) in ihren eigenen Anwendungen zu arbeiten. Die API kann MS Word-Dokumente mit der Dateierweiterung .docx lesen, schreiben und bearbeiten.

Die API ist sehr stabil und bietet Unterstützung für viele wichtige Textverarbeitungsfunktionen wie das Erstellen und Speichern von DOCX-Dokumenten, Hinzufügen von Absätzen, Überschriften, Einfügen von Text, Hinzufügen von Tabellen, Hinzufügen von Bildern, Absatzstilen, Anwenden von Textformatierungen und vieles mehr.

Previous Next

Erste Schritte mit DuckX

Die bevorzugte Methode besteht darin, einen Erstellungsordner zu erstellen.

Erstellen Sie einen Build-Ordner für DuckX

git clone https://github.com/amiremohamadi/DuckX.git
cd DuckX
mkdir build
cd build
cmake ..
cmake --build;

C++-API zum Öffnen und Lesen von Word-DOCX-Dokumenten

Die DuckX-Bibliothek ermöglicht es Softwareprofis, vorhandene Word-DOCX-Dokumente in ihren eigenen Anwendungen zu öffnen, ohne Microsoft Word zu verwenden. Sie können Absätze und Läufe durchgehen und drucken. Es bietet auch Funktionen zum Ändern von Word-Dokumenten. Sie können auch Bilder, Text, Schriftarten, Textformatierungen und mehr hinzufügen.

How to Open and Read Word Documents via 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;
}

Insert & Road Table in Word DOCX File

Die DuckX-Bibliothek gibt Entwicklern die Möglichkeit, Tabellen in ein Word-DOCX-Dokument in C++-Anwendungen einzufügen. MS Word-Tabellen spielen eine sehr wichtige Rolle bei der Gestaltung gut formatierter Daten. Tabellen sind eine gute Möglichkeit, Daten in Zeilen und Spalten darzustellen. Sie sind sehr einfach in Word-Dateien einzufügen und zu manipulieren.

Tabellenunterstützung in Word-Dokumenten über 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;
}

Hinzufügen von Bildern zu Word-DOCX-Dateien

Die DuckX-Bibliothek bietet Funktionen zum Einfügen von Bildern in ein Word-DOCX-Dokument. Um ein Bild hinzuzufügen, müssen Sie den Namen und den Speicherort des Bildes angeben. Entwickler können auch sowohl die Breite als auch die Höhe des Bildes angeben.

 Deutsch