Tối ưu hóa và nén các tệp trong C++

Thư viện C++ hiệu suất cao để tối ưu hóa nội dung và kích thước của tệp, giữ lại chất lượng ban đầu và dữ liệu cơ sở

Sử dụng C++ để có được tốc độ xử lý tài liệu tối đa. Đây là một giải pháp mạnh mẽ để nén Word tài liệu, Web bằng C++. Hãy thử nó trực tuyến miễn phí!

Xem đoạn mã

Nén Word tài liệu và HTML trong C++

Làm cho các tệp lớn nhỏ hơn mà không làm giảm chất lượng. Xóa dữ liệu không cần thiết và không sử dụng. Thu nhỏ kích thước của Word tệp và HTML trong C++. Thư viện C++ của chúng tôi cung cấp cho các nhà phát triển một API tích hợp để tối ưu hóa tài liệu ở nhiều định dạng khác nhau.

Thư viện C++ này là một giải pháp độc lập và không yêu cầu cài đặt bất kỳ phần mềm bên thứ ba nào.

Giảm kích thước Word tệp và HTML bằng C++

Hiệu ứng tối đa có thể đạt được bằng cách tối ưu hóa các hình ảnh có độ phân giải cao, cũng như các tài liệu có chứa các hình ảnh đó. Thư viện C++ của chúng tôi sẽ giúp bạn nén các DOCX tệp, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.

Việc tối ưu hóa tài liệu mà không làm giảm chất lượng trở nên dễ dàng với 'Aspose.Words for C++'. Ví dụ sau cho thấy cách thu nhỏ kích thước của Word tài liệu trong C++:

C++ mã ví dụ để tối ưu hóa nội dung và kích thước của tệp
Tải lên tệp bạn muốn tối ưu hóa / nén
Mã vận hành
Chọn định dạng mục tiêu từ danh sách
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())
    {
        //  Tùy nhà phát triển chọn thư viện để nén ảnh.
        auto image = 
           System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());

        // ...
        //  Nén hình ảnh và đặt nó trở lại hình dạng.
        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()) { // Tùy nhà phát triển chọn thư viện để nén ảnh. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Nén hình ảnh và đặt nó trở lại hình dạng. 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()) { // Tùy nhà phát triển chọn thư viện để nén ảnh. auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream()); // ... // Nén hình ảnh và đặt nó trở lại hình dạng. 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()) { // Tùy nhà phát triển chọn thư viện để nén ảnh. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Nén hình ảnh và đặt nó trở lại hình dạng. 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"); // Cập nhật cài đặt trang để cắt tài liệu cho vừa với kích thước của ảnh. auto pageSetup = builder->get_PageSetup(); pageSetup->set_PageWidth(shape->get_Width()); pageSetup->set_PageHeight(shape->get_Height()); pageSetup->set_TopMargin(0); pageSetup->set_LeftMargin(0); pageSetup->set_BottomMargin(0); pageSetup->set_RightMargin(0); auto saveOptions = MakeObject<ImageSaveOptions>(SaveFormat::Docx); doc->Save(u"Output.docx", saveOptions);
Mã vận hành

Cách nén Word, JPG và các định dạng tệp khác trong C++

  1. Cài đặt Aspose.Words for C++.
  2. Thêm tham chiếu thư viện (nhập thư viện) vào dự án C++ của bạn.
  3. Mở tệp nguồn trong C++.
  4. Nén tài liệu và hình ảnh mà không làm giảm chất lượng.
  5. Gọi phương thức Document.Cleanup(). Mã kết quả có thể khác nhau tùy thuộc vào định dạng tệp đầu vào / đầu ra.
  6. Nhận kết quả dưới dạng tệp nén.

C++ thư viện để tối ưu hóa và nén tệp

Có ba tùy chọn để cài đặt Aspose.Words for C++ vào môi trường nhà phát triển của bạn. Vui lòng chọn một cái giống với nhu cầu của bạn và làm theo hướng dẫn từng bước:

yêu cầu hệ thống

Bạn có thể sử dụng thư viện C++ này để phát triển phần mềm trên Microsoft Windows, Linux và macOS:

  • GCC >= 6.3.0 và Clang >= 3.9.1 là bắt buộc đối với Linux
  • Xcode >= 12.5.1, Clang và libc++ là bắt buộc đối với macOS

Nếu bạn phát triển phần mềm cho Linux hoặc macOS, vui lòng kiểm tra thông tin về các phụ thuộc thư viện bổ sung (gói mã nguồn mở fontconfig và mesa-glu) trong Tài liệu Sản phẩm.

Các định dạng tệp phổ biến nhất để tối ưu hóa

5%

Đăng ký cập nhật sản phẩm của Aspose

Nhận bản tin hàng tháng và ưu đãi gửi trực tiếp đến hộp thư của bạn.

© Aspose Pty Ltd 2001-2024. Đã đăng ký Bản quyền.