Ngoptimalake lan ngompres file ing C++

Pustaka C++ kanthi kinerja dhuwur kanggo ngoptimalake isi lan ukuran file kanthi njaga kualitas asli lan data dasar

Gunakake C++ kanggo entuk kacepetan pangolahan dokumen maksimal. Iki minangka solusi sing kuat kanggo ngompres Word, dokumen Web ing C++. Coba online gratis!

Ndeleng potongan kode

Kompres Word lan HTML dokumen ing C++

Nggawe file gedhe luwih cilik tanpa mundhut kualitas. Mbusak data sing ora perlu lan ora digunakake. Nyilikake ukuran Word file lan HTML ing C++. C++ nyedhiyakake pangembang API terpadu kanggo ngoptimalake dokumen ing macem-macem format.

C++ iki minangka solusi mandiri lan ora mbutuhake piranti lunak pihak katelu sing diinstal.

Ngurangi ukuran Word file lan HTML nggunakake C++

Efek maksimal bisa dipikolehi kanthi ngoptimalake gambar kanthi resolusi dhuwur, uga dokumen sing ngemot gambar kasebut. C++ bakal mbantu sampeyan ngompres DOCX file, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.

Optimization saka dokumen tanpa mundhut saka kualitas digawe gampang karo 'Aspose.Words for C++'. Conto ing ngisor iki nuduhake carane nyilikake ukuran Word dokumen ing C++:

C++ conto kode kanggo ngoptimalake isi lan ukuran file
Unggah file sing pengin dioptimalake / kompres
Kode roto
Pilih format target saka dhaptar
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())
    {
        //  Iku nganti pangembang kanggo milih perpustakaan kanggo komprèsi gambar.
        auto image = 
           System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());

        // ...
        //  Compress gambar lan nyetel maneh menyang wangun.
        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()) { // Iku nganti pangembang kanggo milih perpustakaan kanggo komprèsi gambar. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Compress gambar lan nyetel maneh menyang wangun. 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 pangembang kanggo milih perpustakaan kanggo kompresi gambar. auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream()); // ... // Kompres gambar lan setel maneh menyang wangun. 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()) { // Iku nganti pangembang kanggo milih perpustakaan kanggo komprèsi gambar. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Compress gambar lan nyetel maneh menyang wangun. 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"); // Nganyari setelan kaca kanggo ngethok dokumen supaya pas karo 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);
Kode roto

Cara ngompres Word, JPG lan format file liyane ing C++

  1. Pasang Aspose.Words for C++.
  2. Tambah referensi perpustakaan (ngimpor perpustakaan) menyang proyek C++ sampeyan.
  3. Bukak file sumber ing C++.
  4. Kompres dokumen lan gambar tanpa kelangan kualitas.
  5. Telpon metode Document.Cleanup(). Kode asil bisa beda-beda gumantung saka format file input/output.
  6. Entuk asil minangka file sing dikompres.

Pustaka C++ kanggo ngoptimalake lan ngompres file

Ana telung opsi kanggo nginstal Aspose.Words for C++ kanggo lingkungan pangembang. Pilih salah siji sing cocog karo kabutuhan sampeyan lan tindakake pandhuan langkah demi langkah:

Syarat Sistem

Sampeyan bisa nggunakake perpustakaan C++ iki kanggo nggawe piranti lunak ing Microsoft Windows, Linux lan macOS:

  • GCC >= 6.3.0 lan Clang >= 3.9.1 dibutuhake kanggo Linux
  • Xcode >= 12.5.1, Clang lan libc++ dibutuhake kanggo macOS

Yen sampeyan nggawe piranti lunak kanggo Linux utawa macOS, priksa informasi babagan katergantungan perpustakaan tambahan (fontconfig lan paket sumber terbuka mesa-glu) ing Dokumentasi Produk.

Format file sing paling populer kanggo dioptimalake

5%

Langganan kanggo Aspose Update Product

Entuk buletin saben wulan lan tawaran langsung dikirim menyang kothak layang.

© Aspose Pty Ltd 2001-2024. Kabeh hak dilindhungi undhang-undhang.