相关疑难解决方法(0)

PDF使用iTextSharp进行压缩

我目前正在尝试重新压缩已经创建的pdf,我试图找到一种方法来重新压缩文档中的图像,以减小文件大小.

我一直在尝试使用DataLogics PDE和iTextSharp库来执行此操作,但我找不到对项目进行流重新压缩的方法.

我有关于循环xobjects并获取图像,然后将DPI降低到96或使用libjpeg C#implimentation来改变图像的质量但是将其恢复到pdf流似乎总是最终,内存损坏或其他一些问题.

任何样品将不胜感激.

谢谢

c# pdf itext

9
推荐指数
3
解决办法
3万
查看次数

当我尝试压缩不同级别的 pdf 文件时,ITextSharp 返回相同大小的 pdf

我正在阅读 pdf 并使用 itextsharp 注入一些内容。结果byte[]与压缩级别一起传递给下面的方法。

public static byte[] method(byte[] pdf,int compressionlevel)
        {
            using (MemoryStream outputPdfStream1 = new MemoryStream())
            {
                //PdfReader reader1 = new PdfReader(pdf);
                //PdfStamper stamper1 = new PdfStamper(reader1, outputPdfStream1);
                //int level = (int)compressionlevel;
                //if (level <= 9)
                //    stamper1.Writer.CompressionLevel = (int)compressionlevel;
                //else
                //    stamper1.Writer.SetFullCompression();
                //stamper1.SetFullCompression();
                //stamper1.Close();
                //byte[] newfile = outputPdfStream1.ToArray();
                //return newfile;

                PdfReader reader = new PdfReader(pdf);
                PdfStamper stamper = new PdfStamper(reader, outputPdfStream1,PdfWriter.VERSION_1_5);
                int level = (int)compressionlevel;
                if (level <= 9)
                {
                   stamper.Writer.CompressionLevel = level;
                }
                else …
Run Code Online (Sandbox Code Playgroud)

c# compression pdf itextsharp

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×2

pdf ×2

compression ×1

itext ×1

itextsharp ×1