В тази тема ще научим как да създадем DOCX в C++. Документите на Word се създават програмно, особено в C++ и използват много приложения за постигане на автоматизация, като генериране на сметки за комунални услуги. Можете да създавате DOCX в движение в C++, като използвате прост API интерфейс.
Стъпки за създаване на DOCX в C++
- Включете Aspose.Words.Cpp с помощта на NuGet Package Manager
- Добавете препратка към Aspose::Words и Aspose::Words::Saving и System::Drawing пространства от имена
- Създайте екземпляр на Document Class, за да добавите празен документ на Word
- Създайте екземпляр DocumentBuilder Class за обработка на Word документа
- Добавете текст в документа заедно с форматирането
- Запазете документа на Word с персонализирано форматиране във формат DOCX, като използвате метода за запазване
В следващия пример показахме как можете да създадете документ на Word в C++, като добавите текст и зададете неговото форматиране. Ще видите също как можете да поставите хипервръзка към текста във вашия документ.
Код за създаване на DOCX в C++
#include <Aspose.Words.Cpp/Document.h> | |
#include <Aspose.Words.Cpp/DocumentBuilder.h> | |
#include <Aspose.Words.Cpp/Saving/DocSaveOptions.h> | |
#include <Aspose.Words.Cpp/Saving/SaveOutputParameters.h> | |
#include <Aspose.Words.Cpp/Font.h> | |
#include <Aspose.Words.Cpp/Border.h> | |
#include <Aspose.Words.Cpp/License.h> | |
#include <Aspose.Words.Cpp/Saving/CompressionLevel.h> | |
#include <Aspose.Words.Cpp/Saving/OoxmlCompliance.h> | |
#include <Aspose.Words.Cpp/Saving/OoxmlSaveOptions.h> | |
#include <system/io/file.h> | |
#include <drawing/color.h> | |
using System::ArrayPtr; | |
using System::MakeArray; | |
using System::MakeObject; | |
using System::SharedPtr; | |
using System::String; | |
using namespace Aspose::Words; | |
using namespace Aspose::Words::Saving; | |
using namespace System::Drawing; | |
class CreatingWordDocumentinCPP | |
{ | |
public: | |
void CreateWordDocumentinCPP() | |
{ | |
// Access liense file and set for API | |
System::String WordsLicenseFileName = u"Aspose.Total.NET.lic"; | |
SharedPtr<License> wordsLic = System::MakeObject<License>(); | |
wordsLic->SetLicense(WordsLicenseFileName); | |
// Create Document Class instance to add a blank Word document | |
SharedPtr<Document> WordDocUsingCPP = MakeObject<Document>(); | |
// Create instance of DocumentBuilder class to process the Word Document | |
SharedPtr<DocumentBuilder> WordDocBuilder = MakeObject<DocumentBuilder>(WordDocUsingCPP); | |
// Insert a string surrounded by a border | |
WordDocBuilder->get_Font()->get_Border()->set_Color(Color::get_Green()); | |
WordDocBuilder->get_Font()->get_Border()->set_LineWidth(2.5); | |
WordDocBuilder->get_Font()->get_Border()->set_LineStyle(LineStyle::DashDotStroker); | |
WordDocBuilder->Write(u"Text with a green border around it."); | |
// Remove the font formatting and set it explicitly | |
WordDocBuilder->get_Font()->ClearFormatting(); | |
// Adding paragraph break for text | |
WordDocBuilder->InsertBreak(BreakType::ParagraphBreak); | |
WordDocBuilder->Write(u"For more info, please visit oue site"); | |
// Add a hyperlink and using custom formatting. The hyperlink shall | |
// be a clickable text which will redirect to URL set inside it | |
WordDocBuilder->get_Font()->set_Color(Color::get_Blue()); | |
WordDocBuilder->get_Font()->set_Underline(Underline::Single); | |
WordDocBuilder->InsertHyperlink(u"Aspose Knowledge Base", u"https://kb.aspose.com/", false); | |
WordDocBuilder->get_Font()->ClearFormatting(); | |
WordDocBuilder->Writeln(u"."); | |
SharedPtr <OoxmlSaveOptions> DocSaveOptions = MakeObject<OoxmlSaveOptions>(); | |
DocSaveOptions->set_Compliance(OoxmlCompliance::Iso29500_2008_Strict); | |
DocSaveOptions->set_SaveFormat(SaveFormat::Docx); | |
// Save the generated DOCX file using Save method | |
WordDocUsingCPP->Save(u"Word_Doc_Created_using_CPP.docx", DocSaveOptions); | |
} | |
}; |
В предишния пример разгледахме Как да добавяте редове към таблица в DOCX с помощта на C++. Тази тема се фокусира върху генерирането на Word документ от нулата с помощта на C++.