我正在尝试使用 Itextsharp 和 Bitmiracle 从 pdf 文件创建 tif 图像。
首先,我尝试使用 iTextsharp 获取 pdf 文件每一页的字节详细信息。
string bpp = pd.Get(PdfName.BITSPERCOMPONENT).ToString();
PixelFormat pixelFormat;
switch (bpp)
{
case "1":
pixelFormat = PixelFormat.Format1bppIndexed;
break;
case "8":
pixelFormat = PixelFormat.Format24bppRgb;
break;
default:
throw new Exception(String.Format("Unknown pixel format {0}.", bpp));
}
之后使用 bitmiracle 我将该图像保存为 tiff 格式。但是图像是不可见的。
string filter = PDFStremObj.Get(PdfName.FILTER).ToString();
switch (filter)
{
case "/FlateDecode":
byte[] arr = PdfReader.GetStreamBytes((PRStream)PDFStremObj);
Bitmap bmp = new Bitmap(Int32.Parse(width), Int32.Parse(height), PixelFormat.Format24bppRgb);
BitmapData bmd = bmp.LockBits(new System.Drawing.Rectangle(0, 0, Int32.Parse(width), Int32.Parse(height)), ImageLockMode.WriteOnly,
PixelFormat.Format24bppRgb);
Marshal.Copy(arr, 0, bmd.Scan0, arr.Length);
bmp.UnlockBits(bmd);
bmp.Save(strFileNewName, System.Drawing.Imaging.ImageFormat.Tiff);
bmp.Dispose();
page++;
break;
}
请帮助我解决代码中的问题或建议我进行更改。
在此先感谢您的帮助。