Det här är en professionell lösning för att komprimera Word med C#, F#, VB.NET. Använd vårt Word optimerings API för att utveckla plattformsoberoende programvara på hög nivå för .NET och .NET Core -plattformar. Prova det gratis online!
Gör stora Word filer mindre utan kvalitetsförlust. Radera onödig och oanvänd data. Krympa storleken på en Word fil i kod. C# biblioteket ger utvecklare ett integrerat API för att optimera Word innehåll.
C# biblioteket är en fristående lösning och kräver ingen programvara från tredje part installerad.
Förlustfri komprimering och djup innehållsoptimering på ett enkelt sätt med 'Aspose.Words for .NET'. Följande exempel visar hur man optimerar innehållet i en Word fil i C#:
dotnet add package Aspose.Words
Kopiera
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)
{
// Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Komprimera bilden och ställ tillbaka den till formen.
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)
{
// Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Komprimera bilden och ställ tillbaka den till formen.
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)
{
// Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Komprimera bilden och ställ tillbaka den till formen.
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)
{
// Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Komprimera bilden och ställ tillbaka den till formen.
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)
{
// Ställ in maximal sidstorlek för att undvika skalning av den aktuella sidbilden.
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;
}
Det finns tre alternativa alternativ för att installera "Aspose.Words för .NET" på ditt system. Välj en som liknar dina behov och följ steg-för-steg-instruktionerna:
Vår produkt är helt plattformsoberoende och stöder alla större .NET-implementeringar:
Såvitt .NET-koden inte beror på den underliggande hårdvaran eller operativsystemet, utan bara på en virtuell maskin, är du fri att utveckla vilken typ av programvara som helst för Windows, macOS, Android, iOS och Linux. Se bara till att du har installerat motsvarande version av .NET Framework, .NET Core, Windows Azure, Mono eller Xamarin.
Vi rekommenderar att du använder Microsoft Visual Studio, Xamarin och MonoDevelop integrerade utvecklingsmiljöer för att skapa C#, F#, VB.NET applikationer.
För mer information, se Produktdokumentation.
Du kan optimera filer i många andra filformat: