นี่เป็นโซลูชันระดับมืออาชีพในการเพิ่มประสิทธิภาพและบีบอัด 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:
หากคุณพัฒนาซอฟต์แวร์สำหรับ Linux หรือ macOS โปรดตรวจสอบข้อมูลเกี่ยวกับการพึ่งพาไลบรารีเพิ่มเติม (แพ็คเกจโอเพ่นซอร์ส fontconfig และ mesa-glu) ในเอกสารประกอบผลิตภัณฑ์
คุณสามารถปรับไฟล์ให้เหมาะสมในรูปแบบไฟล์อื่นๆ ได้มากมาย: