تحسين وضغط الملفات في C++

مكتبة C++ عالية الأداء لتحسين محتوى الملف وحجمه مع الاحتفاظ بالجودة الأصلية وبيانات الأساس

استخدم C++ للحصول على أقصى سرعة لمعالجة المستندات. هذا حل قوي لضغط Word و PDF ومستندات الويب في C++. جربه على الإنترنت مجانا!

اعرض مقتطف الشفرة

ضغط مستندات Word و HTML في C++

جعل الملفات الكبيرة أصغر دون فقدان الجودة. احذف البيانات غير الضرورية وغير المستخدمة. تقليص حجم ملفات Word و HTML في C++. توفر مكتبة C++ للمطورين واجهة برمجة تطبيقات متكاملة لتحسين المستندات بتنسيقات مختلفة.

تعد مكتبة C++ حلاً مستقلاً ولا تتطلب تثبيت أي برنامج تابع لجهة خارجية.

تقليل حجم ملفات Word و HTML باستخدام C++

يمكن الحصول على أقصى تأثير من خلال تحسين الصور عالية الدقة، وكذلك المستندات التي تحتوي على مثل هذه الصور. ستساعدك مكتبة C++ على ضغط ملفات HTML و DOCX و DOC و RTF و ODT و EPUB و HTML و JPG و PNG.

أصبح تحسين المستندات دون فقدان الجودة أمرًا سهلاً باستخدام 'Aspose.Words for C++'. يوضح المثال التالي كيفية تقليص حجم Word في C++:

C++ مثال على رمز لتحسين محتوى وحجم الملف
قم بتحميل الملف الذي تريد تحسينه / ضغطه
قم بتشغيل الكود
حدد التنسيق الهدف من القائمة
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 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);
قم بتشغيل الكود

كيفية ضغط تنسيقات ملفات PDF و Word و JPG وتنسيقات ملفات أخرى بتنسيق C++

  1. ثبّت Aspose.Words for C++.
  2. أضف مرجع مكتبة (استيراد المكتبة) إلى مشروع C++ الخاص بك.
  3. افتح الملف المصدر في C++.
  4. ضغط المستندات والصور دون فقدان الجودة.
  5. قم باستدعاء طريقة Document.Cleanup(). قد يختلف الكود الناتج بناءً على تنسيقات ملف الإدخال / الإخراج.
  6. احصل على النتيجة كملف مضغوط.

C++ مكتبة لتحسين وضغط الملفات

هناك ثلاثة خيارات لتثبيت Aspose.Words for C++ في بيئة المطور لديك. يرجى اختيار واحد يناسب احتياجاتك واتبع التعليمات خطوة بخطوة:

متطلبات النظام

يمكنك استخدام مكتبة C++ هذه لتطوير البرامج على Microsoft Windows و Linux و macOS:

  • GCC >= 6.3.0 و Clang >= 3.9.1 مطلوبان لنظام التشغيل Linux
  • Xcode >= 12.5.1، Clang و libc++ مطلوبة لنظام التشغيل macOS

إذا قمت بتطوير برنامج لنظام التشغيل Linux أو macOS، فالرجاء التحقق من المعلومات حول التبعيات الإضافية للمكتبة (fontconfig mesa-glu مفتوحة المصدر) في وثائق المنتج.

تنسيقات الملفات الأكثر شيوعًا للتحسين

5%

اشترك في Aspose Product Updates

احصل على رسائل إخبارية وعروض شهرية يتم تسليمها مباشرة إلى صندوق البريد الخاص بك.

© Aspose Pty Ltd 2001-2024. كل الحقوق محفوظة.