Creați docx utilizând Mail merge în C++

Bibliotecă C++ de mare viteză pentru a executa operația de Mail merge pentru șabloane docx și date din sursa de date personalizată

Soluția noastră oferă un API puternic independent de platformă. Utilizați API ul nostru pentru documente de Mail merge pentru a dezvolta software de nivel înalt pentru platforma C++. Aceasta este o soluție software puternică pentru îmbinarea șabloanelor în Word formatele și PDF și a datelor din surse de date personalizate și pentru a exporta în continuare rezultatul în DOCX, PDF, HTML și în alte formate populare folosind C++.

Vizualizați fragmentul de cod

Mail merge Word fișier și Excel date în C++

Biblioteca rapidă C++ pentru a executa fuziunea corespondenței cu Excel datele.

Mail Merge SDK vă permite să completați un șablon Word cu datele dvs. din foaia Excel. Pe baza Mail Merge API, vă puteți crea propria soluție software folosind C++, care vă permite să automatizați e-mailurile din Excel și să generați rapoarte cu Excel date.

Pentru a Mail merge din Excel în Word, pur și simplu efectuați operația de Mail merge în C++ și exportați rezultatul în orice Word formate acceptate.

Mail merge din Excel în Word folosind C++

Cu ajutorul nostru puternic Mail merge API, puteți crea documente personalizate în C++ folosind doar un șablon Word Merge și date din Excel.

Cum se utilizează Mail merge din Excel:

  • Creați un șablon Word cu câmpuri speciale de îmbinare în care vor fi inserate datele dvs. din Excel.
  • Convertiți Excel documentul într-un fișier CSV și apoi într-un JSON fișier potrivit pentru analiza de către API ul nostru.
  • Efectuați operațiunea Mail îmbinând șablonul Word și datele convertite din Excel în CSV și apoi în JSON.

Mail merge cu Google Docs

Cu ajutorul Mail merge API de înaltă fidelitate, puteți efectua și o operație de Mail merge cu Google Docs. Doar descărcați datele necesare în Word format și Excel, asigurați-vă că șablonul Word conține câmpuri de îmbinare și efectuați operația de îmbinare prin corespondență în C++, similar algoritmului descris în secțiunea anterioară.

Pentru a încerca acest instrument web puternic de Mail merge, încărcați un șablon Word cu câmpuri speciale de îmbinare și date din Excel convertite așa cum este descris mai sus. După rularea codului, exportați rezultatul în orice format folosind C++.

Următorul exemplu arată cum să efectuați o operație de Mail merge pentru a genera un Word document în C++:

Executați o operațiune de Mail merge folosind șablonul docx în C++
Încărcați un șablon de Mail merge
Rulați codul
Încărcați datele de Mail merge
Selectați formatul țintă din listă
dotnet add package Aspose.Words.Cpp
Copie
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;
};
Rulați codul

Cum se utilizează Mail merge în docx fișiere

  1. Instalați Aspose.Words for C++.
  2. Adăugați o referință la bibliotecă (importați biblioteca) în proiectul dvs. C++.
  3. Creați un șablon de îmbinare docx cu câmpuri de îmbinare.
  4. Deschideți fișierul șablon în C++.
  5. Apelați metoda Execute(), trecând câmpurile de îmbinare și valorile acestora acolo.
  6. Apelați metoda Save(), pasând un nume de fișier de ieșire cu extensia necesară.
  7. Obțineți rezultatul operațiunii de Mail merge ca Word fișier.

C++ bibliotecă pentru a utiliza Mail merge în docx

Există trei opțiuni pentru a instala Aspose.Words for C++ în mediul dumneavoastră de dezvoltator. Alegeți unul care seamănă cu nevoile dvs. și urmați instrucțiunile pas cu pas:

Cerințe de sistem

Puteți utiliza această bibliotecă C++ pentru a dezvolta software pe Microsoft Windows, Linux și macOS:

  • GCC >= 6.3.0 și Clang >= 3.9.1 sunt necesare pentru Linux
  • Xcode >= 12.5.1, Clang și libc++ sunt necesare pentru macOS

Dacă dezvoltați software pentru Linux sau macOS, vă rugăm să verificați informații despre dependențe suplimentare de bibliotecă (fontconfig și pachete open-source mesa-glu) în Documentația produsului.

Alte formate de fișiere acceptate

Puteți efectua operația de Mail merge pentru alte formate de fișiere:

5%

Abonați-vă la Actualizări de produse Aspose

Primiți buletine informative lunare și oferte livrate direct în căsuța dvs. poștală.

© Aspose Pty Ltd 2001-2024. Toate drepturile rezervate.