Optimalkan dan kompres file di C++

Pustaka C++ berkinerja tinggi untuk mengoptimalkan konten dan ukuran file dengan mempertahankan kualitas asli dan data dasar

Gunakan C++ untuk mendapatkan kecepatan pemrosesan dokumen maksimum. Ini adalah solusi ampuh untuk mengompresi Word dokumen, Web dalam C++. Cobalah secara online gratis!

Lihat cuplikan kode

Kompres Word dokumen dan HTML di C++

Buat file besar menjadi lebih kecil tanpa kehilangan kualitas. Hapus data yang tidak perlu dan tidak digunakan. Kecilkan ukuran Word file dan HTML di C++. C++ kami menyediakan pengembang dengan API terintegrasi untuk mengoptimalkan dokumen dalam berbagai format.

C++ ini adalah solusi yang berdiri sendiri dan tidak memerlukan perangkat lunak pihak ketiga yang diinstal.

Kurangi ukuran Word file dan HTML menggunakan C++

Efek maksimal dapat diperoleh dengan mengoptimalkan gambar resolusi tinggi, serta dokumen yang berisi gambar tersebut. C++ kami akan membantu Anda mengompresi DOCX file, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.

Optimalisasi dokumen tanpa kehilangan kualitas menjadi mudah dengan 'Aspose.Words for C++'. Contoh berikut menunjukkan cara mengecilkan ukuran Word dokumen di C++:

C++ contoh kode untuk mengoptimalkan konten dan ukuran file
Unggah file yang ingin Anda optimalkan/kompres
Jalankan kode
Pilih format target dari daftar
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())
    {
        //  Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar.
        auto image = 
           System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());

        // ...
        //  Kompres gambar dan atur kembali ke bentuk.
        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()) { // Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Kompres gambar dan atur kembali ke bentuk. 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()) { // Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar. auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream()); // ... // Kompres gambar dan atur kembali ke bentuknya. 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()) { // Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Kompres gambar dan atur kembali ke bentuk. 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"); // Perbarui pengaturan halaman untuk memotong dokumen agar sesuai dengan ukuran gambar. 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);
Jalankan kode

Cara kompres file C++: Word, PDF, GIF, ZIP

  1. Instal Aspose.Words for C++.
  2. Tambahkan referensi perpustakaan (impor perpustakaan) ke proyek C++ Anda.
  3. Buka file sumber di C++.
  4. Kompres dokumen dan gambar tanpa kehilangan kualitas.
  5. Panggil metode Document.Cleanup(). Kode yang dihasilkan dapat bervariasi tergantung pada format file input/output.
  6. Dapatkan hasilnya sebagai file terkompresi.

C++ perpustakaan untuk mengoptimalkan dan mengompresi file

Ada tiga opsi untuk menginstal Aspose.Words for C++ ke lingkungan pengembang Anda. Silakan pilih salah satu yang sesuai dengan kebutuhan Anda dan ikuti petunjuk langkah demi langkah:

Persyaratan sistem

Anda dapat menggunakan pustaka C++ ini untuk mengembangkan perangkat lunak pada Microsoft Windows, Linux, dan macOS:

  • GCC >= 6.3.0 dan Clang >= 3.9.1 diperlukan untuk Linux
  • Xcode >= 12.5.1, Clang dan libc++ diperlukan untuk macOS

Jika Anda mengembangkan perangkat lunak untuk Linux atau macOS, silakan periksa informasi tentang dependensi perpustakaan tambahan (paket sumber terbuka fontconfig dan mesa-glu glu) di Dokumentasi Produk.

Format file paling populer untuk dioptimalkan

5%

Berlangganan Pembaruan Produk Aspose

Dapatkan buletin bulanan dan penawaran langsung dikirim ke kotak surat Anda.

© Aspose Pty Ltd 2001-2024. Seluruh hak cipta.