Kod untuk memampatkan EPUB dalam C++

Pustaka C++ berprestasi tinggi untuk mengoptimumkan EPUB kandungan dan saiz mengekalkan kualiti asal dan data garis dasar

Ini ialah penyelesaian profesional untuk mengoptimumkan dan memampatkan EPUB dalam C++. Gunakan C++ untuk memaksimumkan EPUB kelajuan pengoptimuman/mampatan. Cuba dalam talian secara percuma!

Lihat coretan kod

Mampatkan DOCX dalam C++

Pada masa ini kami tidak menerima fail DOCX sebagai input. Tetapi kami boleh menghasilkan fail DOCX sebagai ouput. Kami mengharapkan sokongan penuh DOCX dalam masa terdekat.

C++ ialah penyelesaian yang berdiri sendiri dan tidak memerlukan sebarang perisian pihak ketiga dipasang.

Kurangkan saiz fail DOCX menggunakan C++

Jadikan fail DOCX lebih kecil tanpa kehilangan kualiti. C++ menyediakan pembangun dengan API bersepadu untuk mengoptimumkan kandungan DOCX. Pengoptimuman DOCX berlaku dengan memampatkan imej di dalam fail DOCX, serta dengan mengalih keluar data yang tidak digunakan.

Pemampatan tanpa kehilangan e-buku dan pengoptimuman kandungan dipermudahkan dengan 'Aspose.Words for C++'. Contoh berikut menunjukkan cara mengoptimumkan kandungan fail DOCX dalam C++:

Contoh kod dalam C++ untuk memampatkan EPUB fail
Muat naik fail yang anda mahu optimumkan/mampatkan
Jalankan kod
Pilih format sasaran daripada senarai
dotnet add package Aspose.Words.Cpp
Salinan
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())
    {
        // Terpulang kepada pembangun untuk memilih perpustakaan untuk pemampatan imej.
        auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream());

        // ...
        // Mampatkan imej dan tetapkan semula kepada bentuk.
        shape->get_ImageData()->SetImage("yourCompressedImage");
    }
}

doc->Save(u"Output.epub");
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()) { // kepada pembangun untuk memilih perpustakaan untuk pemampatan imej. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Mampatkan imej dan tetapkannya semula kepada bentuk. shape->get_ImageData()->SetImage("yourCompressedImage"); } } auto saveOptions = MakeObject<PdfSaveOptions>(); saveOptions->set_CacheBackgroundGraphics(true); doc->Save(u"Output.epub", 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()) { // Terpulang kepada pembangun untuk memilih perpustakaan untuk pemampatan imej. auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream()); // ... // Mampatkan imej dan tetapkan semula kepada bentuk. shape->get_ImageData()->SetImage("yourCompressedImage"); } } doc->Save(u"Output.epub"); 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()) { // kepada pembangun untuk memilih perpustakaan untuk pemampatan imej. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Mampatkan imej dan tetapkannya semula kepada bentuk. shape->get_ImageData()->SetImage("yourCompressedImage"); } } auto saveOptions = MakeObject<OoxmlSaveOptions>(); saveOptions->set_CompressionLevel(CompressionLevel::Maximum); doc->Save(u"Output.epub", 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.epub", saveOptions);
Jalankan kod

Bagaimana untuk memampatkan DOCX dalam C++

  1. Pasang Aspose.Words for C++.
  2. Tambahkan rujukan perpustakaan (import pustaka) ke projek C++ anda.
  3. Buka DOCX fail sumber dalam C++.
  4. Mampat DOCX tanpa kehilangan kualiti.
  5. Panggil kaedah Document.Cleanup(). Kod yang terhasil mungkin berbeza-beza bergantung pada format fail output.
  6. Dapatkan hasil termampat sebagai DOCX fail.

Pustaka C++ untuk mengoptimumkan dan memampatkan EPUB fail

Terdapat tiga pilihan untuk memasang Aspose.Words for C++ ke persekitaran pembangun anda. Sila pilih satu yang menyerupai keperluan anda dan ikut arahan langkah demi langkah:

Keperluan Sistem

Anda boleh menggunakan perpustakaan C++ ini untuk mengembangkan perisian 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

Sekiranya anda mengembangkan perisian untuk Linux atau macOS, sila periksa maklumat mengenai pergantungan perpustakaan tambahan (pakej sumber terbuka fontconfig dan mesa-glu) dalam Dokumentasi Produk.

Pengoptimuman format fail lain yang disokong

Anda boleh mengoptimumkan fail dalam banyak format fail lain:

5%

Langgan Kemas Kini Produk Aspose

Dapatkan surat berita bulanan dan tawaran yang dihantar terus ke peti mel anda.

© Aspose Pty Ltd 2001-2025. Hak cipta terpelihara.