Ovo je profesionalno rješenje za komprimiranje Word pomoću C#, F#, VB.NET. Koristite naš Word API za optimizaciju za razvoj softvera visoke razine, neovisnog o platformi za platforme .NET i .NET Core. Isprobajte online besplatno!
Smanjite velike Word datoteke bez gubitka kvalitete. Izbrišite nepotrebne i neiskorištene podatke. Smanjite veličinu Word datoteke u kodu. C# biblioteka programerima pruža integrirani API za optimizaciju sadržaja Word.
C# knjižnica je samostalno rješenje i ne zahtijeva instaliran softver treće strane.
Kompresija bez gubitaka i duboka optimizacija sadržaja olakšani su uz 'Aspose.Words for .NET'. Sljedeći primjer pokazuje kako optimizirati sadržaj Word datoteke u C#:
dotnet add package Aspose.Words
Kopirati
using Aspose.Words;
var doc = new Document("Input.docx");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Na programeru je da odabere biblioteku za kompresiju slike.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Komprimirajte sliku i vratite je u oblik.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new OoxmlSaveOptions
{
CompressionLevel = CompressionLevel.Maximum
};
doc.Save("Output.docx", saveOptions);
using Aspose.Words;
var doc = new Document("Input.docx");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Na programeru je da odabere biblioteku za kompresiju slike.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Komprimirajte sliku i vratite je u oblik.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new PdfSaveOptions
{
CacheBackgroundGraphics = true
};
doc.Save("Output.docx", saveOptions);
using Aspose.Words;
var doc = new Document("Input.docx");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Na programeru je da odabere biblioteku za kompresiju slike.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Komprimirajte sliku i vratite je u oblik.
shape.ImageData.SetImage("yourCompressedImage");
}
}
doc.Save("Output.docx");
using Aspose.Words;
var doc = new Document("Input.docx");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Na programeru je da odabere biblioteku za kompresiju slike.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Komprimirajte sliku i vratite je u oblik.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new OoxmlSaveOptions
{
CompressionLevel = CompressionLevel.Maximum
};
doc.Save("Output.docx", saveOptions);
using Aspose.Words;
var doc = new Document();
var builder = new DocumentBuilder(doc);
var shape = builder.InsertImage("Input.docx");
var saveOptions = new ImageSaveOptions(SaveFormat.Docx)
{
};
shape.GetShapeRenderer().Save("Output.docx", saveOptions);
using Aspose.Words;
using Aspose.Words.Pdf2Word.FixedFormats;
using var pdfStream = File.OpenRead("Input.docx");
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)
{
// Postavite maksimalnu veličinu stranice kako biste izbjegli skaliranje trenutne slike stranice.
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.docx", saveOptions);
private void SetPageSize(PageSetup pageSetup, double width, double height)
{
pageSetup.PageWidth = width;
pageSetup.PageHeight = height;
}
Postoje tri alternativne opcije za instalaciju "Aspose.Words za .NET" na vaš sustav. Odaberite onaj koji odgovara vašim potrebama i slijedite upute korak po korak:
Naš je proizvod u potpunosti višeplatformski i podržava sve glavne implementacije .NET-a:
Što se tiče .NET koda koji ne ovisi o osnovnom hardveru ili operativnom sustavu, već samo o virtualnom stroju, slobodni ste razvijati bilo koju vrstu softvera za Windows, macOS, Android, iOS i Linux. Samo provjerite jeste li instalirali odgovarajuću verziju .NET Framework, .NET Core, Windows Azure, Mono ili Xamarin.
Preporučujemo korištenje integriranih razvojnih okruženja Microsoft Visual Studio, Xamarin i MonoDevelop za izradu C#, F#, VB.NET aplikacija.
Za više detalja pogledajte dokumentaciju proizvoda.
Možete optimizirati datoteke u mnogim drugim formatima datoteka: