Ini adalah solusi profesional untuk mengompres JPG menggunakan C#, F#, VB.NET. Gunakan JPG API pengoptimalan kami untuk mengembangkan perangkat lunak tingkat tinggi yang tidak bergantung pada platform untuk platform .NET dan .NET Core. Cobalah secara online gratis!
Buat JPG file besar menjadi lebih kecil tanpa kehilangan kualitas. Hapus data yang tidak perlu dan tidak digunakan. Kecilkan ukuran JPG file dalam kode. C# menyediakan pengembang dengan API terintegrasi untuk mengoptimalkan konten JPG.
C# adalah solusi yang berdiri sendiri dan tidak memerlukan perangkat lunak pihak ketiga yang diinstal.
Kompresi lossless dan pengoptimalan konten mendalam menjadi mudah dengan 'Aspose.Words for .NET'. Contoh berikut menunjukkan cara mengoptimalkan konten JPG file di C#:
dotnet add package Aspose.Words
Salinan
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)
{
// Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Kompres gambar dan atur kembali ke bentuk.
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)
{
// Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Kompres gambar dan atur kembali ke bentuk.
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)
{
// Terserah pengembang untuk memilih perpustakaan untuk kompresi gambar.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Kompres gambar dan atur kembali ke bentuk.
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)
{
// Setel ukuran halaman maksimum untuk menghindari penskalaan gambar halaman saat ini.
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;
}
Ada tiga opsi alternatif untuk menginstal "Aspose.Words untuk .NET" ke sistem Anda. Silakan pilih salah satu yang sesuai dengan kebutuhan Anda dan ikuti petunjuk langkah demi langkah:
Produk kami sepenuhnya lintas platform dan mendukung semua implementasi .NET utama:
Sejauh kode .NET tidak bergantung pada perangkat keras atau sistem operasi yang mendasarinya, tetapi hanya pada Mesin Virtual, Anda bebas mengembangkan perangkat lunak apa pun untuk Windows, macOS, Android, iOS, dan Linux. Pastikan Anda telah menginstal versi .NET Framework, .NET Core, Windows Azure, Mono , atau Xamarin yang sesuai.
Kami merekomendasikan penggunaan lingkungan pengembangan terintegrasi Microsoft Visual Studio, Xamarin, dan MonoDevelop untuk membuat aplikasi C#, F#, VB.NET.
Untuk lebih jelasnya silakan lihat Dokumentasi Produk.
Anda dapat mengoptimalkan file dalam banyak format file lainnya: