DuckX  

 
 

API C++ de código abierto para documentos Word OOXML

 Cree, lea, actualice y exporte archivos DOCX de Microsoft Office Word dentro de aplicaciones C++.

DuckX es una biblioteca C++ gratuita de código abierto que permite a los desarrolladores de software trabajar con Microsoft Word (DOCX) dentro de sus propias aplicaciones. La API puede leer, escribir y editar documentos de MS Word, que tienen la extensión de archivo .docx.

La API es muy estable y brinda soporte para muchas funciones importantes de procesamiento de textos, como crear y guardar documentos DOCX, agregar párrafos, encabezados, insertar texto, agregar tablas, agregar imágenes, estilos de párrafo, aplicar formato de texto y mucho más.

Previous Next

Primeros pasos con DuckX

La forma preferida es crear una carpeta de compilación.

Crear carpeta de compilación para DuckX

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

API de C++ para abrir y leer documentos DOCX de Word

La biblioteca DuckX permite a los profesionales de software abrir documentos DOCX de Word existentes dentro de sus propias aplicaciones sin usar Microsoft Word. Puede repasar párrafos, ejecutarlos e imprimirlos. También brinda funcionalidad para modificar documentos de Word. También puede agregar imágenes, texto, fuentes, formato de texto y más.

Cómo abrir y leer documentos de Word vía 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;
}

Insertar Tabla de ruta en el archivo Word DOCX

La biblioteca DuckX brinda a los desarrolladores la capacidad de insertar tablas en un documento DOCX de Word dentro de las aplicaciones C++. Las tablas de MS Word juegan un papel muy importante en el diseño de datos bien formateados. Las tablas son una buena manera de presentar datos en filas y columnas. Son muy simples de insertar y manipular en archivos de Word.

Tabla de lectura Soporte en documentos de Word vía 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;
}

Adición de imágenes a archivos DOCX de Word

La biblioteca DuckX proporciona funcionalidad para insertar imágenes dentro del documento Word DOCX. Para agregar una imagen, debe proporcionar el nombre y la ubicación de la imagen. Los desarrolladores también pueden especificar tanto el ancho como el alto de la imagen.

 Español