Questa è una soluzione professionale per comprimere JPG usando C#, F#, VB.NET. Utilizza la nostra API di ottimizzazione JPG per sviluppare software di alto livello indipendente dalla piattaforma per piattaforme .NET e .NET Core. Provalo online gratuitamente!
Riduci i JPG file di grandi dimensioni senza perdita di qualità. Elimina i dati non necessari e non utilizzati. Riduci le dimensioni di un JPG file nel codice. La libreria C# fornisce agli sviluppatori un'API integrata per ottimizzare il contenuto JPG.
La libreria C# è una soluzione autonoma e non richiede l'installazione di software di terze parti.
Compressione senza perdita di dati e ottimizzazione approfondita del contenuto semplificate con 'Aspose.Words for .NET'. L'esempio seguente mostra come ottimizzare il contenuto di un JPG file in C#:
dotnet add package Aspose.Words
Copia
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)
{
// Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Comprime l'immagine e riportala alla forma.
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)
{
// Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Comprime l'immagine e riportala alla forma.
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)
{
// Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Comprime l'immagine e riportala alla forma.
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)
{
// Imposta la dimensione massima della pagina per evitare il ridimensionamento dell'immagine della pagina corrente.
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;
}
Ci sono tre opzioni alternative per installare "Aspose.Words per .NET" sul tuo sistema. Scegline uno che corrisponda alle tue esigenze e segui le istruzioni passo passo:
Il nostro prodotto è completamente multipiattaforma e supporta tutte le principali implementazioni .NET:
Poiché il codice .NET non dipende dall'hardware o dal sistema operativo sottostante, ma solo da una macchina virtuale, sei libero di sviluppare qualsiasi tipo di software per Windows, macOS, Android, iOS e Linux. Assicurati solo di aver installato la versione corrispondente di .NET Framework, .NET Core, Windows Azure, Mono o Xamarin.
È consigliabile utilizzare gli ambienti di sviluppo integrati Microsoft Visual Studio, Xamarin e MonoDevelop per creare applicazioni C#, F#, VB.NET.
Per maggiori dettagli fare riferimento alla documentazione del prodotto.
Puoi ottimizzare i file in molti altri formati di file: