Compress existing PDF using C# programming using freeware libraries

前端 未结 4 2365
南旧
南旧 2021-02-12 11:52

I have been searching a lot on Google about how to compress existing pdf (size). My problem is

  1. I can\'t use any application, because it needs to b

4条回答
  •  不要未来只要你来
    2021-02-12 11:59

    Using PdfSharp

    public static void CompressPdf(string targetPath)
    {
        using (var stream = new MemoryStream(File.ReadAllBytes(targetPath)) {Position = 0})
        using (var source = PdfReader.Open(stream, PdfDocumentOpenMode.Import))
        using (var document = new PdfDocument())
        {
            var options = document.Options;
            options.FlateEncodeMode = PdfFlateEncodeMode.BestCompression;
            options.UseFlateDecoderForJpegImages = PdfUseFlateDecoderForJpegImages.Automatic;
            options.CompressContentStreams = true;
            options.NoCompression = false;
            foreach (var page in source.Pages)
            {
                document.AddPage(page);
            }
    
            document.Save(targetPath);
        }
    }
    

提交回复
热议问题