Αυτή είναι μια επαγγελματική λύση για τη συμπίεση του DOCX χρησιμοποιώντας C#, F#, VB.NET. Χρησιμοποιήστε το API βελτιστοποίησης DOCX για να αναπτύξετε λογισμικό υψηλού επιπέδου, ανεξάρτητο από πλατφόρμα για πλατφόρμες .NET και .NET Core. Δοκιμάστε το online δωρεάν!
Κάντε τα μεγάλα DOCX αρχεία μικρότερα χωρίς απώλεια ποιότητας. Διαγράψτε τα περιττά και αχρησιμοποίητα δεδομένα. Μειώστε το μέγεθος ενός DOCX αρχείου σε κώδικα. Η βιβλιοθήκη C# παρέχει στους προγραμματιστές ένα ενσωματωμένο API για τη βελτιστοποίηση του περιεχομένου DOCX.
Η βιβλιοθήκη C# είναι μια αυτόνομη λύση και δεν απαιτεί εγκατάσταση λογισμικού τρίτων.
Η συμπίεση χωρίς απώλειες και η βελτιστοποίηση περιεχομένου σε βάθος έγιναν εύκολα με 'Aspose.Words for .NET'. Το ακόλουθο παράδειγμα δείχνει πώς να βελτιστοποιήσετε το περιεχόμενο ενός DOCX αρχείου στο C#:
dotnet add package Aspose.Words
αντίγραφο
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)
{
// Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για συμπίεση εικόνας.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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)
{
// Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για συμπίεση εικόνας.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Συμπίεση της εικόνας και επαναφορά της στο σχήμα.
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)
{
// Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για τη συμπίεση εικόνας.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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)
{
// Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για συμπίεση εικόνας.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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)
{
// Ορίστε μέγιστο μέγεθος σελίδας για να αποφύγετε την κλιμάκωση της τρέχουσας εικόνας σελίδας.
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;
}
Υπάρχουν τρεις εναλλακτικές επιλογές για να εγκαταστήσετε το "Aspose.Words για .NET" στο σύστημά σας. Επιλέξτε αυτό που μοιάζει με τις ανάγκες σας και ακολουθήστε τις οδηγίες βήμα προς βήμα:
Το προϊόν μας είναι πλήρως cross-platform και υποστηρίζει όλες τις σημαντικές υλοποιήσεις .NET:
Όσον αφορά τον κώδικα .NET δεν εξαρτάται από το υποκείμενο υλικό ή το λειτουργικό σύστημα, αλλά μόνο από μια Εικονική Μηχανή, είστε ελεύθεροι να αναπτύξετε οποιοδήποτε είδος λογισμικού για Windows, macOS, Android, iOS και Linux. Απλώς βεβαιωθείτε ότι έχετε εγκαταστήσει την αντίστοιχη έκδοση των .NET Framework, .NET Core, Windows Azure, Mono ή Xamarin.
Συνιστούμε τη χρήση ολοκληρωμένων περιβαλλόντων ανάπτυξης Microsoft Visual Studio, Xamarin και MonoDevelop για τη δημιουργία εφαρμογών C#, F#, VB.NET.
Για περισσότερες λεπτομέρειες, ανατρέξτε στην τεκμηρίωση προϊόντος.
Μπορείτε να βελτιστοποιήσετε αρχεία σε πολλές άλλες μορφές αρχείων: