Aceasta este o soluție profesională pentru a comprima JPG folosind C#, F#, VB.NET. Utilizați API ul nostru de optimizare JPG pentru a dezvolta software de nivel înalt, independent de platformă, pentru platformele .NET și .NET Core. Încercați online gratuit!
Reduceți fișierele mari JPG fără pierderi de calitate. Ștergeți datele inutile și neutilizate. Reduceți dimensiunea unui JPG fișier în cod. C# biblioteca oferă dezvoltatorilor un API integrat pentru a optimiza conținutul JPG.
C# biblioteca este o soluție autonomă și nu necesită instalarea unui software terță parte.
Compresie fără pierderi și optimizare profundă a conținutului simplificate cu 'Aspose.Words for .NET'. Următorul exemplu demonstrează cum să optimizați conținutul unui JPG fișier în C#:
dotnet add package Aspose.Words
Copie
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)
{
// Depinde de dezvoltator să aleagă biblioteca pentru compresia imaginii.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Comprimați imaginea și setați-o înapoi la 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)
{
// Depinde de dezvoltator să aleagă biblioteca pentru compresia imaginii.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Comprimați imaginea și setați-o înapoi la 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)
{
// Depinde de dezvoltator să aleagă biblioteca pentru compresia imaginii.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Comprimați imaginea și setați-o înapoi la 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)
{
// Setați dimensiunea maximă a paginii pentru a evita scalarea imaginii paginii curente.
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;
}
Există trei opțiuni alternative pentru a instala "Aspose.Words pentru .NET" pe sistemul dumneavoastră. Alegeți unul care seamănă cu nevoile dvs. și urmați instrucțiunile pas cu pas:
Produsul nostru este complet multiplatform și acceptă toate implementările majore .NET:
În ceea ce privește codul .NET nu depinde de hardware-ul sau sistemul de operare de bază, ci doar de o mașină virtuală, sunteți liber să dezvoltați orice fel de software pentru Windows, macOS, Android, iOS și Linux. Asigurați-vă că ați instalat versiunea corespunzătoare de .NET Framework, .NET Core, Windows Azure, Mono sau Xamarin.
Vă recomandăm să utilizați mediile de dezvoltare integrate Microsoft Visual Studio, Xamarin și MonoDevelop pentru a crea aplicații C#, F#, VB.NET.
Pentru mai multe detalii, consultați documentația produsului.
Puteți optimiza fișiere în multe alte formate de fișiere: