Koda za stiskanje PDF v C#

Visoko zmogljiva knjižnica .NET za optimizacijo vsebine in velikosti PDF, pri čemer ohrani izvirno kakovost in osnovne podatke

To je profesionalna rešitev za stiskanje PDF s C#, F#, VB.NET. Uporabite naš API za optimizacijo PDF za razvoj programske opreme na visoki ravni, neodvisne od platforme za platforme .NET in .NET Core. Preizkusite na spletu brezplačno!

Oglejte si delček kode

Stisnite PDF v C#

Ta knjižnica C# razvijalcem omogoča hitro in učinkovito programsko stiskanje PDF dokumentov. Preprosto pripravite optimiziran izpis PDF, pripravljen za tiskanje, arhiviranje ali skupno rabo prek omrežja. Je samostojna rešitev za obdelavo PDF dokumentov za C#, ki ne zahteva namestitve programske opreme tretjih oseb.

Zmanjšajte velikost PDF ja z uporabo C#

Naš izdelek razvijalcem C# zagotavlja integriran API za zmanjšanje velikosti PDF datotek. Stiskanje PDF poteka v dveh prehodih. Med prvim prehodom se vse strani PDF ja pretvorijo v slikovni format. Naš izdelek uporablja prilagodljive in zelo učinkovite algoritme stiskanja slik, ki razvijalcem omogočajo kompakten izhod PDF, hkrati pa ohranjajo optimalno kakovost dokumenta. Pri naslednjem prehodu se zaporedje slik stisne in združi v vsebino nove, optimizirane PDF datoteke.

Stiskanje PDF jev je preprosto z 'Aspose.Words for .NET'. Naslednji primer prikazuje, kako zmanjšati velikost PDF datoteke v C#:

Primer kode v C# za stiskanje PDF datotek
Naložite datoteko, ki jo želite optimizirati/stisniti
Zaženi kodo
S seznama izberite ciljno obliko
50%
dotnet add package Aspose.Words
Kopirati
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)
{
    // Nastavite največjo velikost strani, da se izognete spreminjanju velikosti slike trenutne strani.
    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) { // Razvijalec mora izbrati knjižnico za stiskanje slike. using var image = Image.FromStream(shape.ImageData.ToStream()); // ... // Stisnite sliko in jo nastavite nazaj v obliko. 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) { // Razvijalec mora izbrati knjižnico za stiskanje slik. using var image = Image.Fromstream(shape.ImageData.ToStream()); // ... // Stisnite sliko in jo vrnite v obliko. 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) { // Razvijalec mora izbrati knjižnico za stiskanje slike. using var image = Image.FromStream(shape.ImageData.ToStream()); // ... // Stisnite sliko in jo nastavite nazaj v obliko. 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) { // Nastavite največjo velikost strani, da se izognete spreminjanju velikosti slike trenutne strani. 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; }
Zaženi kodo

Kako stisniti PDF v C#

  1. Namesti Aspose.Words for .NET.
  2. Dodajte referenco knjižnice (uvozite knjižnico) svojemu C# projektu.
  3. Odprite izvorno PDF datoteko v C#.
  4. Stisnite PDF brez izgube kakovosti.
  5. Pokličite metodo Document.Cleanup(). Nastala koda se lahko razlikuje glede na format izhodne datoteke.
  6. Pridobite stisnjen rezultat kot PDF datoteko.

Knjižnica C# za optimizacijo in stiskanje PDF datotek

Obstajajo tri alternativne možnosti za namestitev "Aspose.Words za .NET" v vaš sistem. Izberite tistega, ki ustreza vašim potrebam, in sledite navodilom po korakih:

Sistemske zahteve

Naš izdelek je popolnoma večplatformski in podpira vse glavne implementacije .NET:

  • .NET ≥ 5.0
  • .NET Core ≥ 2.0
  • .NET Standard ≥ 2.0
  • .NET Framework ≥ 3.5
  • MonoMac
  • MonoAndroid
  • Xamarin

Kar zadeva kodo .NET, ki ni odvisna od osnovne strojne opreme ali operacijskega sistema, ampak samo od navideznega stroja, lahko prosto razvijate kakršno koli programsko opremo za Windows, macOS, Android, iOS in Linux. Prepričajte se le, da ste namestili ustrezno različico .NET Framework, .NET Core, Windows Azure, Mono ali Xamarin.

Priporočamo uporabo integriranih razvojnih okolij Microsoft Visual Studio, Xamarin in MonoDevelop za ustvarjanje aplikacij C#, F#, VB.NET.

Za več podrobnosti glejte dokumentacijo izdelka.

Druge podprte optimizacije formata datotek

Datoteke lahko optimizirate v številnih drugih oblikah datotek:

5%

Naročite se na posodobitve izdelkov Aspose

Prejemajte mesečna glasila in ponudbe neposredno v vaš nabiralnik.

© Aspose Pty Ltd 2001-2024. Vse pravice pridržane.