Създайте docx чрез Mail merge в C++

Високоскоростна библиотека на C++ за изпълнение на операция за Mail merge за docx шаблони и данни от персонализиран източник на данни

Нашето решение предоставя мощен независим от платформата API. Използвайте нашия API за документи за Mail merge, за да разработите софтуер на високо ниво за C++ платформа. Това е мощно софтуерно решение за обединяване на шаблони в Word и PDF формати и данни от персонализирани източници на данни и по-нататъшно експортиране на резултата в DOCX, PDF, HTML и други популярни формати с помощта на C++.

Вижте кодовия фрагмент

Mail merge на Word файл и данни на Excel в C++

Бърза C++ библиотека за изпълнение на циркулярни документи с данни на Excel.

Нашият Mail Merge SDK документи ви позволява да попълвате шаблон на Word с вашите данни от лист на Excel. Въз основа на нашия Mail Merge API имейли можете да създадете свое собствено софтуерно решение с помощта на C++, което ви позволява да автоматизирате имейли от Excel и да генерирате отчети с данни от Excel.

За да Mail merge от Excel към Word, просто изпълнете операцията по Mail merge в C++ и експортирайте резултата във всички поддържани формати на Word.

Mail merge от Excel към Word с помощта на C++

С нашия мощен Mail merge API можете да създавате персонализирани документи в C++, като използвате само шаблон за обединяване на Word и данни от Excel.

Как да използвате Mail merge от Excel:

  • Създайте шаблон на Word със специални полета за обединяване, в които ще бъдат вмъкнати вашите данни от Excel.
  • Конвертирайте Excel документа в CSV файл и след това в JSON файл, подходящ за анализиране от нашия API.
  • Извършете операцията по пощата, обединяваща шаблона на Word и данните, преобразувани от Excel в CSV и след това в JSON.

Mail merge на документи с Google Документи

С нашия висококачествен Mail merge API можете също да извършите операция по Mail merge с Google Документи. Просто изтеглете необходимите данни във Word формат и Excel, уверете се, че шаблонът на Word съдържа полета за сливане и изпълнете операцията за сливане в C++, подобно на алгоритъма, описан в предишния раздел.

За да изпробвате този мощен уеб инструмент за Mail merge, заредете шаблон на Word със специални полета за сливане и данни от Excel, конвертирани, както е описано по-горе. След като стартирате кода, експортирайте резултата във всеки формат с помощта на C++.

Следният пример показва как да изпълните операция за Mail merge, за да генерирате Word документ в C++:

Изпълнете операция за Mail merge, като използвате шаблон docx в C++
Качете шаблон за Mail merge
Изпълнение на код
Качете данни за Mail merge
Изберете целевия формат от списъка
dotnet add package Aspose.Words.Cpp
копие
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;
};
Изпълнение на код

Как да използвате Mail merge в docx файлове

  1. Инсталирайте Aspose.Words for C++.
  2. Добавете препратка към библиотеката (импортирайте библиотеката) към вашия C++ проект.
  3. Създайте шаблон за сливане docx с полета за сливане.
  4. Отворете шаблонния файл в C++.
  5. Извикайте метода Execute(), предавайки полетата за сливане и техните стойности там.
  6. Извикайте метода Save(), предавайки име на изходен файл с необходимото разширение.
  7. Вземете резултата от операцията за Mail merge като Word файл.

C++ библиотека за използване на Mail merge в docx

Има три опции за инсталиране на Aspose.Words for C++ във вашата среда за разработчици. Моля, изберете такъв, който прилича на вашите нужди и следвайте инструкциите стъпка по стъпка:

Системни изисквания

Можете да използвате тази C++ библиотека за разработване на софтуер за Microsoft Windows, Linux и macOS:

  • GCC >= 6.3.0 и Clang >= 3.9.1 са необходими за Linux
  • Xcode >= 12.5.1, Clang и libc++ са необходими за macOS

Ако разработвате софтуер за Linux или macOS, моля, проверете информация за допълнителни библиотечни зависимости (fontconfig и mesa-glu пакети с отворен код) в документацията на продукта.

Други поддържани файлови формати

Можете да извършите операция за Mail merge за други файлови формати:

5%

Абонирайте се за актуализации на продуктите на Aspose

Получавайте месечни бюлетини и оферти директно до вашата пощенска кутия.

© Aspose Pty Ltd 2001-2024. Всички права запазени.