این یک راه حل حرفه ای برای بهینه سازی و فشرده سازی JPG در C++ است. از C++ برای به حداکثر رساندن سرعت بهینه سازی/فشرده سازی JPG استفاده کنید. آن را به صورت آنلاین به صورت رایگان امتحان کنید!
فایل های بزرگ JPG را بدون افت کیفیت کوچکتر کنید. داده های غیر ضروری و استفاده نشده را حذف کنید. اندازه فایل JPG را در کد کوچک کنید. کتابخانه C++ یک API یکپارچه برای بهینه سازی محتوای JPG در اختیار توسعه دهندگان قرار می دهد.
کتابخانه C++ یک راه حل مستقل است و نیازی به نصب نرم افزار شخص ثالث ندارد.
فشرده سازی بدون اتلاف و بهینه سازی محتوای عمیق با 'Aspose.Words for C++' آسان شده است. مثال زیر نحوه بهینه سازی محتوای یک فایل JPG در C++ را نشان می دهد:
dotnet add package Aspose.Words.Cpp
کپی 🀄
using namespace Aspose::Words;
auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);
auto shape = builder->InsertImage(u"Input.jpg");
auto saveOptions = MakeObject<ImageSaveOptions>(SaveFormat::Jpeg);
saveOptions->set_JpegQuality(50);
shape->GetShapeRenderer()->Save(u"Output.jpg", saveOptions);
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.jpg");
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.jpg", saveOptions);
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.jpg");
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.jpg");
using namespace Aspose::Words;
auto doc = MakeObject<Document>(u"Input.jpg");
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.jpg", saveOptions);
using namespace Aspose::Words;
auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);
auto shape = builder->InsertImage(u"Input.jpg");
auto saveOptions = MakeObject<ImageSaveOptions>(SaveFormat::Jpeg);
saveOptions->set_JpegQuality(50);
shape->GetShapeRenderer()->Save(u"Output.jpg", saveOptions);
سه گزینه برای نصب Aspose.Words for C++ در محیط توسعه دهنده شما وجود دارد. لطفاً یکی را انتخاب کنید که شبیه نیازهای شما باشد و دستورالعمل های گام به گام را دنبال کنید:
می توانید از این کتابخانه C++ برای توسعه نرم افزار روی Microsoft Windows، Linux و macOS استفاده کنید:
در صورت توسعه نرم افزار برای لینوکس یا macOS، لطفاً اطلاعات مربوط به وابستگی های بیشتر کتابخانه (fontconfig و بسته های منبع باز mesa-glu) را در Documentation Product بررسی کنید.
شما می توانید فایل ها را در بسیاری از فرمت های فایل دیگر بهینه سازی کنید: