Cree docx mediante Mail merge de correspondencia en C++

Biblioteca de C++ de alta velocidad para ejecutar la operación de Mail merge de correspondencia para docx plantillas y datos de una fuente de datos personalizada

Nuestra solución proporciona una potente API independiente de la plataforma. Utilice nuestra API de documento de Mail merge de correspondencia para desarrollar software de alto nivel para la plataforma C++. Esta es una poderosa solución de software para fusionar plantillas en Word formatos y PDF y datos de fuentes de datos personalizadas y luego exportar el resultado a DOCX, PDF, HTML y otros formatos populares usando C++.

Ver fragmento de código

Combinación de correspondencia de archivos de Word y datos de Excel en C++ Mail merge

Biblioteca Fast C++ para ejecutar la combinación de correo con datos de Excel.

Nuestro Mail Merge SDK de correspondencia le permite completar una plantilla de Word con sus datos de la hoja de Excel. Basado en nuestra Mail Merge API de correspondencia, puede crear su propia solución de software utilizando C++, que le permite automatizar correos electrónicos desde Excel y generar informes con datos de Excel.

Para Mail merge de Excel a Word, simplemente realice la operación de Mail merge de correspondencia en C++ y exporte el resultado a cualquier formato de Word compatible.

Combinar correspondencia de Excel a Word usando C++ Mail merge

Con nuestra poderosa Mail merge API, puede crear documentos personalizados en C++ usando solo una plantilla de Word Merge y datos de Excel.

Cómo usar Mail merge desde Excel:

  • Cree una plantilla de Word con campos de combinación especiales en los que se insertarán sus datos de Excel.
  • Convierta el documento de Excel en un archivo CSV y luego en un JSON archivo adecuado para que nuestra API lo analice.
  • Realiza la operación de Mail fusionando la plantilla de Word y los datos convertidos de Excel a CSV y luego a JSON.

Mail merge con Documentos de Google

Con nuestra Mail merge API de correspondencia de alta fidelidad, también puede realizar una operación de Mail merge de correspondencia con Google Docs. Simplemente descargue los datos necesarios en Word formato y Excel, asegúrese de que la plantilla de Word contenga campos de combinación y realice la operación de combinación de correo en C++, similar al algoritmo descrito en la sección anterior.

Para probar esta poderosa herramienta web de Mail merge, cargue una plantilla de Word con campos de combinación especiales y datos de Excel convertidos como se describe arriba. Después de ejecutar el código, exporte el resultado a cualquier formato usando C++.

El siguiente ejemplo muestra cómo realizar una operación de Mail merge de correspondencia para generar un documento de Word en C++:

Ejecute una operación de Mail merge de correspondencia utilizando la plantilla docx en C++
Subir una plantilla de Mail merge de correspondencia
Ejecutar código
Cargar datos de Mail merge de correspondencia
Seleccione el formato de destino de la lista
dotnet add package Aspose.Words.Cpp
Copiar
using namespace Aspose::Words;
using namespace Aspose::Cells;

auto doc = MakeObject<Document>(u"Input1.docx");        
auto workbook = Factory::CreateIWorkbook(new String("Input2.xlsx"));
auto worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
auto dataRange = worksheet->GetICells()->GetMaxDisplayIRange();

auto dataTable = worksheet->GetICells()->ExportArray(
   0, 0, dataRange->GetRowCount(), dataRange->GetColumnCount());
auto customersDataSource = MakeObject<BaseOperations::CustomerMailMergeDataSource>(dataTable);

doc->get_MailMerge()->Execute(customersDataSource);
doc->Save(u"Output.docx");

class ExcelDataSource : public IMailMergeDataSource
{
public:
    System::String convertCellsString(String cellsValue)
    {
        auto valCh = cellsValue.charValue();
        auto convertedString = System::String(valCh);
        String::deleteCharValue(valCh);
        return convertedString;
    }

    System::String get_TableName() override
    {
        return nullptr;
    }

    CustomerMailMergeDataSource(
     intrusive_ptr<Aspose::Cells::Systems::Array2D<Aspose::Cells::Systems::Object*>> data)
    {
        dataIn = data;

        for (int i = 0; i < data->At(0)->GetLength(); i++) {
            auto fieldName = data->GetValue(0, i)->ToString();
            m.insert({ convertCellsString(fieldName), i });
            i++;
        }

        mRecordIndex = 0;
    }        

    bool GetValue(System::String fieldName, SharedPtr<System::Object>& fieldValue) override
    {
        auto value = dataIn->GetValue(mRecordIndex, m.at(fieldName))->ToString();
        if (value == new String(""))
            return false;

        fieldValue = System::ObjectExt::Box<System::String>(convertCellsString(value));
        return true;        
    }

    bool MoveNext() override
    {
        mRecordIndex++;
        return mRecordIndex < dataIn->GetLength();            
    }

    SharedPtr<IMailMergeDataSource> GetChildDataSource(System::String tableName) override
    {
        return nullptr;            
    }

    intrusive_ptr<Aspose::Cells::Systems::Array2D<Aspose::Cells::Systems::Object*>> dataIn;
    std::unordered_map<System::String, int> m;
    int mRecordIndex;
};
Ejecutar código

Cómo utilizar la Mail merge de correspondencia en docx archivos

  1. Instale Aspose.Words for C++.
  2. Agregue una referencia de biblioteca (importe la biblioteca) a su proyecto C++.
  3. Cree una plantilla de combinación docx con campos de combinación.
  4. Abra el archivo de plantilla en C++.
  5. Llame al método Execute(), pasando los campos de combinación y sus valores allí.
  6. Llame al método Save(), pasando un nombre de archivo de salida con la extensión requerida.
  7. Obtenga el resultado de la operación de Mail merge de correspondencia como Word archivo.

C++ biblioteca para usar la Mail merge de correspondencia en docx

Hay tres opciones para instalar Aspose.Words for C++ en su entorno de desarrollador. Elija uno que se adapte a sus necesidades y siga las instrucciones paso a paso:

Requisitos del sistema

Puede utilizar esta biblioteca C++ para desarrollar software en los Microsoft Windows, Linux y macOS:

  • GCC >= 6.3.0 y Clang >= 3.9.1 son necesarios para Linux
  • Xcode >= 12.5.1, Clang y libc++ son necesarios para macOS

Si desarrolla software para Linux o macOS, consulte la información sobre las dependencias de bibliotecas adicionales (paquetes de código abierto fontconfig y mesa-glu) en la Documentación del producto.

Otros formatos de archivo compatibles

Puede realizar la operación de Mail merge de correspondencia para otros formatos de archivo:

5%

Suscríbase a las actualizaciones de productos de Aspose

Reciba boletines y ofertas mensuales directamente en su buzón.

© Aspose Pty Ltd 2001-2024. Reservados todos los derechos.