Det här är en professionell lösning för att komprimera EPUB med C#, F#, VB.NET. Använd vårt EPUB optimerings API för att utveckla plattformsoberoende programvara på hög nivå för .NET och .NET Core -plattformar. Prova det gratis online!
Vi accepterar för närvarande inte DOCX filer som indata. Men vi kan producera DOCX filer som en utdata. Vi ser fram emot fullt DOCX stöd inom en snar framtid.
C# biblioteket är en fristående lösning och kräver ingen programvara från tredje part installerad.
Gör DOCX filer mindre utan kvalitetsförlust. C# biblioteket ger utvecklare ett integrerat API för att optimera DOCX innehåll. DOCX optimering sker genom att komprimera bilder inuti DOCX filer, samt genom att ta bort oanvänd data.
E-bok förlustfri komprimering och innehållsoptimering på ett enkelt sätt med 'Aspose.Words for .NET'. Följande exempel visar hur man optimerar innehållet i en DOCX 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");
}
}
doc.Save("Output.epub");
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.epub", 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.epub");
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.epub", 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.epub", 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.epub", 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: