Toto je profesionální řešení pro optimalizaci a kompresi JPG v C++. Použijte C++ k maximalizaci JPG optimalizace/rychlosti komprese. Vyzkoušejte to online zdarma!
Zmenšit velké JPG soubory bez ztráty kvality. Odstraňte nepotřebná a nepoužívaná data. Zmenšete velikost JPG souboru v kódu. Knihovna C++ poskytuje vývojářům integrované API pro optimalizaci obsahu JPG.
C++ knihovna je samostatné řešení a nevyžaduje instalaci žádného softwaru třetích stran.
Bezeztrátová komprese a hluboká optimalizace obsahu usnadněná s 'Aspose.Words for C++'. Následující příklad ukazuje, jak optimalizovat obsah JPG souboru v C++:
dotnet add package Aspose.Words.Cpp
Kopírovat
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())
{
// Je na vývojáři, aby si vybral knihovnu pro kompresi obrázků.
auto image =
System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());
// ...
// Komprimujte obrázek a nastavte jej zpět do tvaru.
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())
{
// Je na vývojáři, aby si vybral knihovnu pro kompresi obrázků.
auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream());
// ...
// Komprimujte obrázek a nastavte jej zpět do tvaru.
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())
{
// Je na vývojáři, aby si vybral knihovnu pro kompresi obrázků.
auto image =
System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());
// ...
// Komprimujte obrázek a nastavte jej zpět do tvaru.
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);
Existují tři možnosti instalace Aspose.Words for C++ do vašeho vývojářského prostředí. Vyberte si prosím ten, který odpovídá vašim potřebám, a postupujte podle pokynů krok za krokem:
Tuto knihovnu C++ můžete použít k vývoji softwaru v Microsoft Windows, Linux a macOS:
Pokud vyvíjíte software pro Linux nebo macOS, zkontrolujte informace o dalších závislostech knihovny (fontconfig a mesa-glu ) v dokumentaci produktu.
Můžete optimalizovat soubory v mnoha dalších formátech souborů: