Ustvarite docx s Mail merge v C++

Hitra knjižnica C++ za izvedbo operacije Mail merge za predloge docx in podatke iz vira podatkov po meri

Naša rešitev ponuja zmogljiv od platforme neodvisen API. Uporabite naš API za dokumente za Mail merge za razvoj programske opreme na visoki ravni za platformo C++. To je zmogljiva programska rešitev za združevanje predlog v Word formatih in PDF ter podatkov iz virov podatkov po meri ter nadaljnji izvoz rezultatov v DOCX, PDF, HTML in druge priljubljene formate z uporabo C++.

Oglejte si delček kode

Mail merge Word dokumentov in Excelovih podatkov v C++

Hitra knjižnica C++ za izvajanje spajanja dokumentov z Excelovimi podatki.

Naš Mail Merge SDK dokumentov vam omogoča, da Wordovo predlogo izpolnite s svojimi podatki iz Excelovega lista. Na osnovi našega Mail Merge API dokumentov lahko ustvarite lastno programsko rešitev z uporabo C++, ki vam omogoča avtomatizacijo e-pošte iz Excela in ustvarjanje poročil z Excelovimi podatki.

Če želite Mail merge dokumente iz Excela v Word, preprosto izvedite operacijo Mail merge dokumentov v C++ in izvozite rezultat v vse podprte Word formate.

Mail merge dokumentov iz Excela v Word z uporabo C++

Z našim zmogljivim Mail merge API dokumentov lahko ustvarite prilagojene dokumente v C++ z uporabo samo predloge Word Merge in podatkov iz Excela.

Kako uporabljati Mail merge dokumentov iz Excela:

  • Ustvarite Wordovo predlogo s posebnimi spojnimi polji, v katera bodo vstavljeni vaši podatki iz Excela.
  • Pretvorite Excelov dokument v datoteko CSV in nato v JSON datoteko, primerno za razčlenjevanje z našim API jem.
  • Izvedite operacijo pošte, ki združi Wordovo predlogo in podatke, pretvorjene iz Excela v CSV in nato v JSON.

Mail merge dokumentov z Google Dokumenti

Z našim Mail merge API za spajanje dokumentov visoke ločljivosti lahko izvedete tudi operacijo Mail merge dokumentov z Google Dokumenti. Samo prenesite potrebne podatke v Word formatu in Excel, poskrbite, da Wordova predloga vsebuje polja za spajanje in izvedite operacijo spajanja dokumentov v C++, podobno kot algoritem, opisan v prejšnjem razdelku.

Če želite preizkusiti to zmogljivo spletno orodje za Mail merge dokumentov, naložite Wordovo predlogo s posebnimi spajalnimi polji in podatki iz Excela, pretvorjenimi, kot je opisano zgoraj. Po zagonu kode izvozite rezultat v poljubno obliko z C++.

Naslednji primer prikazuje, kako izvesti operacijo Mail merge dokumentov za ustvarjanje Wordovega dokumenta v C++:

Izvedite operacijo Mail merge s predlogo docx v C++
Naložite predlogo za Mail merge
Zaženi kodo
Naloži podatke za Mail merge
S seznama izberite ciljno obliko
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;
};
Zaženi kodo

Kako uporabljati Mail merge v docx datotekah

  1. Namesti Aspose.Words for C++.
  2. Dodajte referenco knjižnice (uvozite knjižnico) svojemu C++ projektu.
  3. Ustvarite predlogo za spajanje docx s polji za spajanje.
  4. Odprite datoteko predloge v C++.
  5. Pokličite metodo Execute() in tam posredujete spojena polja in njihove vrednosti.
  6. Pokličite metodo Save() in posredujte ime izhodne datoteke z zahtevano končnico.
  7. Pridobite rezultat operacije Mail merge dokumentov kot Word datoteko.

C++ knjižnica za uporabo Mail merge v docx

Obstajajo tri možnosti za namestitev Aspose.Words for C++ v okolje razvijalca. Izberite tistega, ki ustreza vašim potrebam, in sledite navodilom po korakih:

Sistemske zahteve

To knjižnico C++ lahko uporabite za razvoj programske opreme v Microsoft Windows, Linux in macOS:

  • GCC >= 6.3.0 in Clang >= 3.9.1 sta potrebna za Linux
  • Xcode >= 12.5.1, za macOS sta potrebna Clang in libc++

Če razvijate programsko opremo za Linux ali macOS, preverite informacije o dodatnih odvisnostih knjižnic (odprtokodni paketi fontconfig in mesa-glu) v dokumentaciji izdelka.

Drugi podprti formati datotek

Operacijo Mail merge lahko izvedete za druge formate datotek:

5%

Naročite se na posodobitve izdelkov Aspose

Prejemajte mesečna glasila in ponudbe neposredno v vaš nabiralnik.

© Aspose Pty Ltd 2001-2024. Vse pravice pridržane.