Δημιουργήστε PDF έγγραφα ή Word στο C++

Δημιουργήστε ένα νέο έγγραφο σχεδόν σε οποιαδήποτε μορφή μέσω προγραμματισμού χρησιμοποιώντας τη βιβλιοθήκη μας υψηλής πιστότητας C++

Χρησιμοποιώντας το API προγραμματισμού μας, οι προγραμματιστές C++ μπορούν εύκολα να δημιουργήσουν ένα έγγραφο σε PDF, DOC, DOCX, HTML, EPUB και πολλές άλλες μορφές με λίγες μόνο γραμμές κώδικα.

Προβολή αποσπάσματος κώδικα

Δημιουργήστε ένα έγγραφο χρησιμοποιώντας C++

Με το δεδομένο ισχυρό API, οι προγραμματιστές C++ μπορούν να δημιουργήσουν έγγραφα σχεδόν σε οποιαδήποτε μορφή. Για να το κάνετε αυτό, πρέπει να ακολουθήσετε μερικά βήματα χρησιμοποιώντας τη βιβλιοθήκη C++:

  1. Προσθήκη ονόματος αρχείου
  2. Ξεκινήστε τη δημιουργία ενός εγγράφου χρησιμοποιώντας C++
  3. Αποθηκεύστε το έγγραφο που δημιουργήθηκε στην επιλεγμένη μορφή

Αξίζει να σημειωθεί ότι ένα κενό έγγραφο τεχνικά υποτίθεται ότι περιέχει μία παράγραφο, επομένως όταν δημιουργείτε μέσω προγραμματισμού ένα έγγραφο, θα έχετε ακριβώς αυτή τη βασική δομή εγγράφου.

Σημειώστε ότι μπορείτε να προσθέσετε άμεσα περιεχόμενο σε ένα έγγραφο που δημιουργήθηκε πρόσφατα. Έτσι, δεν θα λάβετε απλώς ένα κενό έγγραφο, αλλά ένα έγγραφο που περιέχει το απαραίτητο περιεχόμενο. Για περισσότερες πληροφορίες σχετικά με τον τρόπο επεξεργασίας ενός εγγράφου, ανατρέξτε στη σελίδα Επεξεργασία.

Δημιουργήστε ένα έγγραφο σε C++ μέσω προγραμματισμού

Η δεδομένη βιβλιοθήκη C++ σάς επιτρέπει να δημιουργήσετε μέσω προγραμματισμού ένα έγγραφο σε οποιαδήποτε υποστηριζόμενη μορφή – PDF, DOCX, DOC, RTF, ODT, EPUB, HTML και άλλα.

Δοκιμάστε την ισχυρή μας λειτουργικότητα και δείτε πώς μπορείτε να δημιουργήσετε ένα έγγραφο σε ορισμένες μορφές χρησιμοποιώντας το ακόλουθο παράδειγμα:

Δημιουργήστε ένα νέο έγγραφο χρησιμοποιώντας το C++
Επιλέξτε τη μορφή προορισμού από τη λίστα
Εκτέλεση κώδικα
using namespace Aspose::Words;

auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);

auto font = builder->get_Font();
font->set_Name(u"Courier New");
font->set_Color(System::Drawing::Color::get_Blue());
font->set_Size(36);
font->set_HighlightColor(System::Drawing::Color::get_Yellow());

builder->Write(u"Morbi enim nunc faucibus a.");

doc->Save(u"Output.docx");
using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); doc->Save(u"Output.docx"); using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); auto saveOptions = MakeObject<PdfSaveOptions>(); saveOptions->get_OutlineOptions()->get_BookmarksOutlineLevels()->Add(u"Aspose bookmark", 1); doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words;

auto doc = MakeObject<Document>();

auto run = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed.");
auto para = doc->get_FirstSection()->get_Body()->get_FirstParagraph();
para->AppendChild(run);

auto comment = MakeObject<Comment>(doc, u"John Doe", u"JD", System::DateTime::get_Today());
comment->SetText(u"Quisque fringilla leo.");

auto commentRangeStart = MakeObject<CommentRangeStart>(doc, comment->get_Id());
auto commentRangeEnd = MakeObject<CommentRangeEnd>(doc, comment->get_Id());

run->get_ParentNode()->InsertBefore(commentRangeStart, run);
run->get_ParentNode()->InsertAfter(commentRangeEnd, run);
commentRangeEnd->get_ParentNode()->InsertAfter(comment, commentRangeEnd);

comment->AddReply(u"Jane Doe", u"JD", System::DateTime::get_Now(),
    u"Pellentesque vel sapien justo.");

doc->Save(u"Output.docx");
using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); doc->Save(u"Output.docx"); using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); auto saveOptions = MakeObject<PdfSaveOptions>(); saveOptions->get_OutlineOptions()->get_BookmarksOutlineLevels()->Add(u"Aspose bookmark", 1); doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words;

auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);

auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. ");
auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a.");
doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun);
doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun);

builder->MoveTo(secondRun);
builder->StartBookmark(u"Aspose bookmark");
// Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο.
if (secondRun->get_NextSibling() != NULL)
    builder->MoveTo(secondRun->get_NextSibling());
else
    builder->MoveTo(secondRun->get_ParentParagraph());
builder->EndBookmark(u"Aspose bookmark");

doc->Save(u"Output.docx");
using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); doc->Save(u"Output.docx"); using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); auto saveOptions = MakeObject<PdfSaveOptions>(); saveOptions->get_OutlineOptions()->get_BookmarksOutlineLevels()->Add(u"Aspose bookmark", 1); doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words;

auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);

auto shape = builder->InsertChart(ChartType::Pie, 432, 252);
auto chart = shape->get_Chart();
chart->get_Title()->set_Text(u"Demo Chart");

chart->get_Series()->Clear();
chart->get_Series()->Add(u"Series 1",
    MakeArray<String>({ u"Category1", u"Category2", u"Category3" }),
    MakeArray<double>({ 2.7, 3.2, 0.8 }));

doc->Save(u"Output.docx");
using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); doc->Save(u"Output.docx"); using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto firstRun = MakeObject<Run>(doc, u"Proin eros metus, sagittis sed. "); auto secondRun = MakeObject<Run>(doc, u"Morbi enim nunc faucibus a."); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(firstRun); doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(secondRun); builder->MoveTo(secondRun); builder->StartBookmark(u"Aspose bookmark"); // Εάν NextSibling είναι μηδενικό, τότε πιθανότατα αυτό είναι το τελευταίο Run στην Παράγραφο. if (secondRun->get_NextSibling() != NULL) builder->MoveTo(secondRun->get_NextSibling()); else builder->MoveTo(secondRun->get_ParentParagraph()); builder->EndBookmark(u"Aspose bookmark"); auto saveOptions = MakeObject<PdfSaveOptions>(); saveOptions->get_OutlineOptions()->get_BookmarksOutlineLevels()->Add(u"Aspose bookmark", 1); doc->Save(u"Output.docx", saveOptions);
Εκτέλεση κώδικα

Πώς να δημιουργήσετε ένα έγγραφο στο C++

  1. Εγκαταστήστε Aspose.Words for C++
  2. Προσθέστε μια αναφορά βιβλιοθήκης (εισαγωγή της βιβλιοθήκης) στο έργο σας C++
  3. Δημιουργήστε ένα νέο έγγραφο
  4. Καλέστε τη μέθοδο Save(), περνώντας το όνομα του αρχείου
  5. Λάβετε το αποτέλεσμα ως ξεχωριστό αρχείο

C++ βιβλιοθήκη για τη δημιουργία εγγράφων

Υπάρχουν τρεις επιλογές για να εγκαταστήσετε το 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) στην τεκμηρίωση προϊόντος.

Οι πιο δημοφιλείς μορφές αρχείων

5%

Εγγραφείτε στις ενημερώσεις προϊόντων Aspose

Λάβετε μηνιαία ενημερωτικά δελτία και προσφορές απευθείας στο γραμματοκιβώτιό σας.

© Aspose Pty Ltd 2001-2024. Ολα τα δικαιώματα διατηρούνται.