ეს არის პროფესიონალური გადაწყვეტა, რომ შეკუმშოს PDF C#, F#, VB.NET გამოყენებით. გამოიყენეთ ჩვენი PDF ოპტიმიზაციის API, რათა განავითაროთ მაღალი დონის, პლატფორმისგან დამოუკიდებელი პროგრამული უზრუნველყოფა .NET და .NET Core პლატფორმებისთვის. სცადეთ ონლაინ უფასოდ!
ეს C# ბიბლიოთეკა დეველოპერებს აძლევს შესაძლებლობას სწრაფად და ეფექტურად შეკუმშონ PDF დოკუმენტები პროგრამულად. მარტივად მიიღეთ PDF ის ოპტიმიზირებული გამომავალი, რომელიც მზად არის დაბეჭდვის, დაარქივებისთვის ან ქსელში გასაზიარებლად. ეს არის PDF დოკუმენტის დამუშავების დამოუკიდებელი გადაწყვეტა C# ისთვის, რომელიც არ საჭიროებს მესამე მხარის პროგრამული უზრუნველყოფის ინსტალაციას.
ჩვენი პროდუქტი C# ის დეველოპერებს უზრუნველყოფს ინტეგრირებული API ით PDF ფაილების ზომის შესამცირებლად. PDF შეკუმშვა ხორციელდება ორ პასში. პირველი გავლის დროს, PDF ის ყველა გვერდი გარდაიქმნება გამოსახულების ფორმატში. ჩვენი პროდუქტი იყენებს ადაპტირებულ და მაღალეფექტურ გამოსახულების შეკუმშვის ალგორითმებს, რომლებიც დეველოპერებს საშუალებას აძლევს მიიღონ კომპაქტური PDF გამომავალი დოკუმენტის ოპტიმალური ხარისხის შენარჩუნებით. მომდევნო უღელტეხილზე, სურათების თანმიმდევრობა შეკუმშულია და გაერთიანებულია ახალი, ოპტიმიზებული PDF ფაილის შინაარსის შესაქმნელად.
PDF შეკუმშვა 'Aspose.Words for .NET'. შემდეგი მაგალითი გვიჩვენებს, თუ როგორ შეამციროთ PDF ფაილის ზომა C# ში:
dotnet add package Aspose.Words
კოპირება
using Aspose.Words;
using Aspose.Words.Pdf2Word.FixedFormats;
using var pdfStream = File.OpenRead("Input.pdf");
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.pdf", saveOptions);
private void SetPageSize(PageSetup pageSetup, double width, double height)
{
pageSetup.PageWidth = width;
pageSetup.PageHeight = height;
}
using Aspose.Words;
var doc = new Document("Input.pdf");
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.pdf", saveOptions);
using Aspose.Words;
var doc = new Document("Input.pdf");
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.pdf");
using Aspose.Words;
var doc = new Document("Input.pdf");
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.pdf", saveOptions);
using Aspose.Words;
var doc = new Document();
var builder = new DocumentBuilder(doc);
var shape = builder.InsertImage("Input.pdf");
var saveOptions = new ImageSaveOptions(SaveFormat.Pdf)
{
};
shape.GetShapeRenderer().Save("Output.pdf", saveOptions);
using Aspose.Words;
using Aspose.Words.Pdf2Word.FixedFormats;
using var pdfStream = File.OpenRead("Input.pdf");
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.pdf", saveOptions);
private void SetPageSize(PageSetup pageSetup, double width, double height)
{
pageSetup.PageWidth = width;
pageSetup.PageHeight = height;
}
არსებობს სამი ალტერნატიული ვარიანტი, რომ დააინსტალიროთ 'Aspose.Words .NET' თქვენს სისტემაში. გთხოვთ, აირჩიოთ ის, რომელიც შეესაბამება თქვენს საჭიროებებს და მიჰყევით ნაბიჯ-ნაბიჯ ინსტრუქციებს:
ჩვენი პროდუქტი სრულად არის კროს-პლატფორმული და მხარს უჭერს ყველა ძირითად .NET განხორციელებას:
რამდენადაც .NET კოდი არ არის დამოკიდებული ძირითად აპარატურაზე ან ოპერაციულ სისტემაზე, არამედ მხოლოდ ვირტუალურ მანქანაზე, თქვენ თავისუფლად შეგიძლიათ განავითაროთ ნებისმიერი სახის პროგრამული უზრუნველყოფა Windows, macOS, Android, iOS და Linux-ისთვის. უბრალოდ დარწმუნდით, რომ დააინსტალირეთ .NET Framework, .NET Core, Windows Azure, Mono ან Xamarin ის შესაბამისი ვერსია.
ჩვენ გირჩევთ გამოიყენოთ Microsoft Visual Studio, Xamarin და MonoDevelop ინტეგრირებული განვითარების გარემო C#, F#, VB.NET აპლიკაციების შესაქმნელად.
დამატებითი ინფორმაციისთვის გთხოვთ იხილეთ პროდუქტის დოკუმენტაცია.
თქვენ შეგიძლიათ ფაილების ოპტიმიზაცია მრავალი სხვა ფაილის ფორმატში: