Utveckla programvara med hjälp av avancerade dokumentoptimerande API, skapa högnivå, plattformsoberoende kod för .NET och .NET Core -plattformar. Detta är en kraftfull lösning för att komprimera dokument och bilder i C#, F#, VB.NET.
Gör stora filer mindre utan kvalitetsförlust. Radera onödig och oanvänd data. Krymp storleken på Word och HTML filer i C#. Vårt C# bibliotek ger utvecklare ett integrerat API för att optimera dokument i olika format.
Detta C# bibliotek är en fristående lösning och kräver ingen programvara från tredje part installerad.
Den maximala effekten kan uppnås genom att optimera högupplösta bilder, såväl som dokument som innehåller sådana bilder. Vårt C# bibliotek hjälper dig att komprimera DOCX, DOC, RTF, ODT, EPUB, HTML, JPG, PNG filer.
Optimering av dokument utan kvalitetsförlust på ett enkelt sätt med 'Aspose.Words for .NET'. Följande exempel visar hur man förminskar storleken på ett Word dokument 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.