Izradi docx pomoću Mail merge u C++

Knjižnica C++ velike brzine za izvođenje operacije Mail merge za docx predloške i podatke iz prilagođenog izvora podataka

Naše rješenje nudi moćan platformski neovisan API. Koristite naš API za dokumente Mail merge za razvoj softvera visoke razine za C++ platformu. Ovo je moćno softversko rješenje za spajanje predložaka u Word i PDF formatima i podataka iz prilagođenih izvora podataka i daljnji izvoz rezultata u DOCX, PDF, HTML i druge popularne formate koristeći C++.

Pogledajte isječak koda

Spojite Word datoteku i Excel podatke u C++ Mail merge

Brza biblioteka C++ za izvršavanje spajanja pošte s Excel podacima.

Naš Mail Merge SDK omogućuje vam da popunite predložak programa Word svojim podacima iz Excel lista. Na temelju našeg Mail Merge API -ja za spajanje pisama možete izraditi vlastito softversko rješenje koristeći C++, koje vam omogućuje automatiziranje e-pošte iz programa Excel i generiranje izvješća s podacima programa Excel.

Za Mail merge iz Excel u Word, jednostavno izvedite operaciju Mail merge u C++ i izvezite rezultat u bilo koji podržani Word format.

Mail merge iz Excel u Word pomoću C++

S našim snažnim Mail merge API možete stvarati personalizirane dokumente u C++ koristeći samo Word Merge predložak i podatke iz Excel.

Kako koristiti Mail merge iz Excel:

  • Napravite Word predložak s posebnim poljima za spajanje u koja će se umetati vaši podaci iz Excel.
  • Pretvorite Excel dokument u CSV datoteku, a zatim u JSON datoteku prikladnu za analizu pomoću našeg API ja.
  • Izvršite operaciju spajanja pošte Word predloška i podataka pretvorenih iz Excel u CSV, a zatim u JSON.

Mail merge s Google dokumentima

S našim Mail merge API visoke vjernosti možete izvesti operaciju Mail merge s Google dokumentima. Samo preuzmite potrebne podatke u Word i Excel formatu, provjerite sadrži li Word predložak polja za spajanje i izvedite operaciju spajanja pošte u C++, slično algoritmu opisanom u prethodnom odjeljku.

Da biste isprobali ovaj moćni web alat za Mail merge, učitajte Wordov predložak s posebnim poljima za spajanje i podatke iz Excel pretvorene kako je gore opisano. Nakon pokretanja koda, eksportirajte rezultat u bilo koji format koristeći C++.

Sljedeći primjer pokazuje kako izvesti operaciju Mail merge za generiranje Word dokumenta u C++:

Izvrši operaciju Mail merge pomoću predloška docx u C++
Prenesite predložak Mail merge
Pokreni kôd
Prenesite podatke o Mail merge
Odaberite ciljni format s popisa
dotnet add package Aspose.Words.Cpp
Kopirati
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;
};
Pokreni kôd

Kako koristiti Mail merge u docx datotekama

  1. Instalirajte Aspose.Words for C++.
  2. Dodajte referencu biblioteke (uvezite biblioteku) svom C++ projektu.
  3. Izradite docx predložak spajanja s poljima spajanja.
  4. Otvorite datoteku predloška u C++.
  5. Pozovite metodu Execute(), prosljeđujući tamo polja spajanja i njihove vrijednosti.
  6. Pozovite metodu Save(), proslijeđujući naziv izlazne datoteke s potrebnim nastavkom.
  7. Dobijte rezultat operacije Mail merge kao Word datoteku.

Biblioteka C++ za korištenje Mail merge u docx

Postoje tri opcije za instalaciju Aspose.Words for C++ u okruženje razvojnog programera. Odaberite onaj koji odgovara vašim potrebama i slijedite upute korak po korak:

Zahtjevi sustava

Ovu biblioteku C++ možete koristiti za razvoj softvera na Microsoft Windows, Linux i macOS:

  • GCC >= 6.3.0 i Clang >= 3.9.1 potrebni su za Linux
  • Xcode >= 12.5.1, Clang i libc++ su potrebni za macOS

Ako razvijate softver za Linux ili macOS, provjerite informacije o dodatnim ovisnostima o knjižnici (fontconfig i mesa-glu paketi otvorenog koda) u dokumentaciji proizvoda.

Ostali podržani formati datoteka

Možete izvesti operaciju Mail merge za druge formate datoteka:

5%

Pretplatite se na Aspose ažuriranja proizvoda

Primajte mjesečne biltene i ponude izravno u vaš poštanski sandučić.

© Aspose Pty Ltd 2001-2024. Sva prava pridržana.