Використовуйте C++, щоб отримати максимальну швидкість обробки документів. Це потужне рішення для стиснення Word документів, Web на C++. Спробуйте онлайн безкоштовно!
Зменште великі файли без втрати якості. Видаліть непотрібні та невикористані дані. Зменшити розмір Word файлів і HTML у C++. Наша бібліотека C++ надає розробникам інтегрований API для оптимізації документів у різних форматах.
Ця бібліотека C++ є самостійним рішенням і не вимагає встановлення стороннього програмного забезпечення.
Максимальний ефект можна отримати при оптимізації зображень з високою роздільною здатністю, а також документів, що містять такі зображення. Наша бібліотека C++ допоможе вам стиснути DOCX файли, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.
Оптимізація документів без втрати якості стала легкою за допомогою 'Aspose.Words for C++'. У наступному прикладі показано, як зменшити розмір Word документа у C++:
dotnet add package Aspose.Words.Cpp
Копія
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.docx");
doc->Cleanup();
auto nodes = doc->GetChildNodes(NodeType::Shape, true);
for (const auto& shape : System::IterateOver<Shape>(nodes))
{
if (shape->get_HasImage())
{
// Вибір бібліотеки для стиснення зображень залежить від розробника.
auto image =
System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());
// ...
// Стискаємо зображення та повертаємо його до форми.
shape->get_ImageData()->SetImage("yourCompressedImage");
}
}
auto saveOptions = MakeObject<OoxmlSaveOptions>();
saveOptions->set_CompressionLevel(CompressionLevel::Maximum);
doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.docx");
doc->Cleanup();
auto nodes = doc->GetChildNodes(NodeType::Shape, true);
for (const auto& shape : System::IterateOver<Shape>(nodes))
{
if (shape->get_HasImage())
{
// Вибір бібліотеки для стиснення зображень залежить від розробника.
auto image =
System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());
// ...
// Стискаємо зображення та повертаємо його до форми.
shape->get_ImageData()->SetImage("yourCompressedImage");
}
}
auto saveOptions = MakeObject<PdfSaveOptions>();
saveOptions->set_CacheBackgroundGraphics(true);
doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.docx");
doc->Cleanup();
auto nodes = doc->GetChildNodes(NodeType::Shape, true);
for (const auto& shape : System::IterateOver<Shape>(nodes))
{
if (shape->get_HasImage())
{
// Розробник повинен вибрати бібліотеку для стиснення зображень.
auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream());
// ...
// Стисніть зображення та поверніть його до форми.
shape->get_ImageData()->SetImage("yourCompressedImage");
}
}
doc->Save(u"Output.docx");
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.docx");
doc->Cleanup();
auto nodes = doc->GetChildNodes(NodeType::Shape, true);
for (const auto& shape : System::IterateOver<Shape>(nodes))
{
if (shape->get_HasImage())
{
// Вибір бібліотеки для стиснення зображень залежить від розробника.
auto image =
System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());
// ...
// Стискаємо зображення та повертаємо його до форми.
shape->get_ImageData()->SetImage("yourCompressedImage");
}
}
auto saveOptions = MakeObject<OoxmlSaveOptions>();
saveOptions->set_CompressionLevel(CompressionLevel::Maximum);
doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words;
auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);
auto shape = builder->InsertImage(u"Input.docx");
auto saveOptions = MakeObject<ImageSaveOptions>(SaveFormat::Docx);
shape->GetShapeRenderer()->Save(u"Output.docx", saveOptions);
Існує три варіанти встановлення Aspose.Words for C++ у ваше середовище розробника. Будь ласка, виберіть той, який відповідає вашим потребам, і дотримуйтесь покрокових інструкцій:
Ви можете використовувати цю бібліотеку C++ для розробки програмного забезпечення в Microsoft Windows, Linux та macOS:
Якщо ви розробляєте програмне забезпечення для Linux або macOS, будь ласка, перевірте інформацію про додаткові бібліотечні залежності (пакети з відкритим кодом fontconfig та mesa-glu) у документації до продукту.