Sukurkite docx naudodami Mail merge C++

Didelės spartos C++ biblioteka, skirta atlikti docx šablonų ir duomenų iš tinkintų duomenų šaltinio Mail merge operaciją

Mūsų sprendimas suteikia galingą nuo platformos nepriklausomą API. Naudokite mūsų Mail merge dokumento API, kad sukurtumėte aukšto lygio programinę įrangą C++ platformai. Tai galingas programinės įrangos sprendimas, skirtas sujungti Word ir PDF formatų šablonus ir duomenis iš pasirinktinių duomenų šaltinių ir toliau eksportuoti rezultatus į DOCX, PDF, HTML ir kitus populiarius formatus naudojant C++.

Peržiūrėkite kodo fragmentą

Mail merge "Word" failas ir "Excel" duomenys C++

Greita C++ biblioteka, leidžianti atlikti pašto suliejimą su Excel duomenimis.

Mūsų Mail Merge SDK leidžia "Word" šabloną užpildyti duomenimis iš "Excel" lapo. Remdamiesi mūsų Mail Merge API, galite sukurti savo programinės įrangos sprendimą naudodami C++, kuris leidžia automatizuoti el. laiškus iš Excel ir generuoti ataskaitas su Excel duomenimis.

Norėdami Mail merge iš "Excel" į "Word", tiesiog atlikite Mail merge operaciją C++ ir eksportuokite rezultatą į bet kurį palaikomą "Word" formatą.

Mail merge iš "Excel" į "Word" naudojant C++

Naudodami mūsų galingą Mail merge API, galite kurti suasmenintus dokumentus C++ naudodami tik Word Merge šabloną ir duomenis iš Excel.

Kaip naudoti Mail merge iš "Excel":

  • Sukurkite Word šabloną su specialiais sujungimo laukais, į kuriuos bus įterpti jūsų duomenys iš Excel.
  • Konvertuokite "Excel" dokumentą į CSV failą, tada į JSON failą, tinkamą mūsų API analizei.
  • Atlikite pašto operaciją, sujungdami Word šabloną ir duomenis, konvertuotus iš Excel į CSV, o paskui į JSON.

Mail merge su "Google" dokumentais

Naudodami mūsų didelio tikslumo Mail merge API, taip pat galite atlikti Mail merge operaciją su "Google" dokumentais. Tiesiog atsisiųskite reikiamus duomenis Word ir Excel formatu, įsitikinkite, kad Word šablone yra sujungimo laukai ir atlikite pašto suliejimo operaciją C++, panašiai kaip ankstesniame skyriuje aprašytas algoritmas.

Norėdami išbandyti šį galingą Mail merge žiniatinklio įrankį, įkelkite "Word" šabloną su specialiais sujungimo laukais ir "Excel" duomenimis, konvertuotais, kaip aprašyta aukščiau. Paleidę kodą, eksportuokite rezultatą į bet kurį formatą naudodami C++.

Šiame pavyzdyje parodyta, kaip atlikti Mail merge operaciją, kad būtų sukurtas Word dokumentas C++:

Atlikite Mail merge operaciją naudodami docx šabloną C++
Įkelkite Mail merge šabloną
Vykdyti kodą
Įkelkite Mail merge duomenis
Iš sąrašo pasirinkite tikslinį formatą
dotnet add package Aspose.Words.Cpp
Kopijuoti
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;
};
Vykdyti kodą

Kaip naudoti Mail merge docx failuose

  1. Įdiekite Aspose.Words for C++.
  2. Pridėkite bibliotekos nuorodą (importuokite biblioteką) prie savo C++ projekto.
  3. Sukurkite docx sujungimo šabloną su sujungimo laukais.
  4. Atidarykite šablono C++ failą.
  5. Iškvieskite metodą Execute(), perduodami ten sujungimo laukus ir jų reikšmes.
  6. Iškvieskite metodą Save(), perduodant išvesties failo pavadinimą su reikiamu plėtiniu.
  7. Gaukite Mail merge operacijos rezultatą kaip Word failą.

C++ biblioteka, skirta naudoti Mail merge docx

Yra trys parinktys, kaip įdiegti " Aspose.Words for C++ " kūrėjo aplinkoje. Pasirinkite tą, kuris atitinka jūsų poreikius, ir vadovaukitės nuosekliomis instrukcijomis:

Sistemos reikalavimai

Šią C++ biblioteką galite naudoti kurdami programinę įrangą " Microsoft Windows, "Linux" ir "MacOS" operacinėse sistemose:

  • "Linux" reikalingi GCC >= 6.3.0 ir Clang >= 3.9.1
  • "MacOS" reikalingi Xcode >= 12.5.1, " Clang ir " libc++

Jei jums sukurti programinės įrangos Linux ar MacOS, prašome patikrinti informaciją apie papildomų bibliotekų priklausomybių (fontconfig ir mesa-glu atviro kodo paketus) į gaminio dokumentuose.

Kiti palaikomi failų formatai

Mail merge operaciją galite atlikti kitiems failų formatams:

5%

Prenumeruokite "Aspose" produktų naujinius

Gaukite mėnesinius naujienlaiškius ir pasiūlymus, pristatomus tiesiai į jūsų pašto dėžutę.

© Aspose Pty Ltd 2001-2024. Visos teisės saugomos.