1. Produkter
  2.   Tekstbehandling
  3.   C++
  4.   DuckX  

DuckX  

 
 

Open Source C++ API til Word OOXML-dokumenter

 Opret, læs, opdater og eksportér Microsoft Office Word DOCX-filer i C++ applikationer.

DuckX er et Open Source gratis C++ bibliotek, der gør det muligt for softwareudviklere at arbejde med Microsoft Word (DOCX) i deres egne applikationer. API'et kan læse, skrive og redigere MS Word-dokumenter, som har filtypen .docx.

API'et er meget stabilt og understøtter mange vigtige tekstbehandlingsfunktioner, såsom oprettelse og lagring af DOCX-dokumenter, tilføjelse af afsnit, overskrift, indsættelse af tekst, tilføjelse af tabeller, tilføjelse af billeder, afsnitsformater, anvendelse af tekstformatering og meget mere.

Previous Next

Kom godt i gang med DuckX

Den foretrukne måde er at oprette en build-mappe.

Opret Build-mappe til DuckX

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

C++ API til at åbne og læse Word DOCX-dokumenter

DuckX-biblioteket gør det muligt for softwareprofessionelle at åbne et eksisterende ord DOCX-dokumenter i deres egne applikationer uden at bruge Microsoft Word. Du kan gennemgå afsnit, kørsler og udskrive dem. Det giver også funktionalitet til at ændre word-dokumenter. Du kan også tilføje billeder, tekst, skrifttyper, tekstformatering og mere.

Hvordan man åbner og læser Word-dokumenter 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;
}

Indsæt & Rdad-tabel i Word DOCX-fil

DuckX-biblioteket giver udviklere mulighed for at indsætte tabeller i et Word DOCX-dokument i C++-applikationer. MS Word-tabeller spiller en meget vigtig rolle i udformningen af velformaterede data. Tabeller er en god måde at præsentere data på i rækker og kolonner. De er meget enkle at indsætte og manipulere i Word-filer.

Understøttelse af tabellæsning i Word-dokumenter via 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;
}

Tilføjelse af billeder til Word DOCX-filer

DuckX-biblioteket giver funktionalitet til at indsætte billeder i Word DOCX-dokument. For at tilføje et billede skal du angive navnet og placeringen af billedet. Udviklere kan også angive både bredden og højden af billedet.

 Dansk