Tai profesionalus sprendimas suspausti JPG naudojant C#, F#, VB.NET. Naudokite mūsų JPG optimizavimo API, kad sukurtumėte aukšto lygio, nuo platformos nepriklausomą programinę įrangą, skirtą .NET ir .NET Core platformoms. Išbandykite internetu nemokamai!
Sumažinkite didelius JPG failus neprarandant kokybės. Ištrinkite nereikalingus ir nenaudojamus duomenis. JPG failo dydį kode. C# biblioteka suteikia kūrėjams integruotą API, skirtą JPG turiniui optimizuoti.
C# biblioteka yra atskiras sprendimas ir jai nereikia įdiegti jokios trečiosios šalies programinės įrangos.
Su 'Aspose.Words for .NET' lengvas glaudinimas ir gilus turinio optimizavimas. Toliau pateiktame pavyzdyje parodyta, kaip optimizuoti JPG failo C#:
dotnet add package Aspose.Words
Kopijuoti
using Aspose.Words;
var doc = new Document();
var builder = new DocumentBuilder(doc);
var shape = builder.InsertImage("Input.jpg");
var saveOptions = new ImageSaveOptions(SaveFormat.Jpeg)
{
JpegQuality = 50
};
shape.GetShapeRenderer().Save("Output.jpg", saveOptions);
using Aspose.Words;
var doc = new Document("Input.jpg");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Kūrėjas turi pasirinkti vaizdo glaudinimo biblioteką.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Suspausti vaizdą ir grąžinti jį į formą.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new PdfSaveOptions
{
CacheBackgroundGraphics = true
};
doc.Save("Output.jpg", saveOptions);
using Aspose.Words;
var doc = new Document("Input.jpg");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Kūrėjas turi pasirinkti vaizdo glaudinimo biblioteką.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Suspausti vaizdą ir grąžinti jį į formą.
shape.ImageData.SetImage("yourCompressedImage");
}
}
doc.Save("Output.jpg");
using Aspose.Words;
var doc = new Document("Input.jpg");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Kūrėjas turi pasirinkti vaizdo glaudinimo biblioteką.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Suspausti vaizdą ir grąžinti jį į formą.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new OoxmlSaveOptions
{
CompressionLevel = CompressionLevel.Maximum
};
doc.Save("Output.jpg", saveOptions);
using Aspose.Words;
var doc = new Document();
var builder = new DocumentBuilder(doc);
var shape = builder.InsertImage("Input.jpg");
var saveOptions = new ImageSaveOptions(SaveFormat.Jpeg)
{
JpegQuality = 50
};
shape.GetShapeRenderer().Save("Output.jpg", saveOptions);
using Aspose.Words;
using Aspose.Words.Pdf2Word.FixedFormats;
using var pdfStream = File.OpenRead("Input.jpg");
var renderer = new PdfFixedRenderer();
var pdfReadOptions = new PdfFixedOptions
{
ImageFormat = FixedImageFormat.Jpeg,
JpegQuality = 50
};
const double maxPageDimension = 1584;
var pagesStream = renderer.SavePdfAsImages(pdfStream, pdfReadOptions);
var builder = new DocumentBuilder();
for (var i = 0; i < pagesStream.Count; ++i)
{
// Nustatykite maksimalų puslapio dydį, kad išvengtumėte dabartinio puslapio vaizdo mastelio.
var pageSetup = builder.PageSetup;
SetPageSize(pageSetup, maxPageDimension, maxPageDimension);
var pageImage = builder.InsertImage(pagesStream[i]);
SetPageSize(pageSetup, pageImage.Width, pageImage.Height);
pageSetup.TopMargin = 0;
pageSetup.LeftMargin = 0;
pageSetup.BottomMargin = 0;
pageSetup.RightMargin = 0;
if (i != pagesStream.Count - 1)
builder.InsertBreak(BreakType.SectionBreakNewPage);
}
var saveOptions = new PdfSaveOptions
{
CacheBackgroundGraphics = true
};
builder.Document.Save("Output.jpg", saveOptions);
private void SetPageSize(PageSetup pageSetup, double width, double height)
{
pageSetup.PageWidth = width;
pageSetup.PageHeight = height;
}
Yra trys alternatyvios parinktys, kaip įdiegti " "Aspose.Words for .NET" savo sistemoje. Pasirinkite tą, kuris atitinka jūsų poreikius, ir vadovaukitės nuosekliomis instrukcijomis:
Mūsų produktas yra visiškai kelių platformų ir palaiko visus pagrindinius .NET diegimus:
Kadangi .NET kodas nepriklauso nuo pagrindinės aparatinės įrangos ar operacinės sistemos, o tik nuo virtualios mašinos, galite laisvai kurti bet kokią programinę įrangą, skirtą "Windows", "MacOS", "Android", "iOS" ir "Linux". Tiesiog įsitikinkite, kad įdiegėte atitinkamą .NET Framework, .NET Core, Windows Azure, Mono arba Xamarin versiją.
Rekomenduojame naudoti Microsoft Visual Studio, Xamarin ir MonoDevelop integruotas kūrimo aplinkas kuriant C#, F#, VB.NET programas.
Daugiau informacijos rasite gaminio dokumentacijoje.
Galite optimizuoti daugelio kitų failų formatų failus: