iTextSharp jbig2 编码器

发布于 2024-10-25 07:20:06 字数 914 浏览 0 评论 0原文

string imgfile = @"C:\users\me\desktop\test.jpg";

Bitmap bmp = new Bitmap(imgfile);
Bitmap bw = ConvertTo1Bpp(bmp); //make b+w

Document doc = 
    new Document(new iTextSharp.text.Rectangle(bmp.Width, bmp.Height));

PdfWriter.GetInstance(doc, 
    new System.IO.FileStream(
        @"C:\users\me\desktop\test.pdf", 
        System.IO.FileMode.Create, 
        System.IO.FileAccess.ReadWrite));

iTextSharp.text.ImgJBIG2 i = 
    ((iTextSharp.text.ImgJBIG2)iTextSharp.text.ImgJBIG2.GetInstance(
        bmp, System.Drawing.Imaging.ImageFormat.Bmp));

doc.Open();
doc.Add(i);
doc.Close();

我找不到任何关于 iTextSharp 的好的文档。我想做的是将 Jpeg 文件转换为嵌入为黑白 JBig2 图像的 pdf。我得到的错误是“iTextSharp.text.ImageRaw”和“iTextSharp.text.ImageJBig2”之间的 InvalidCastException...除了上面的内容之外还有其他选择吗?

编辑
我现在相信 ImgJBig2 只是代表已经在 J​​Big2 中编码的图像。我正在寻找的是一种能够获取位图并将其编码为 BW JBig2 位图的东西,我可以将其放入 Pdf 中。

string imgfile = @"C:\users\me\desktop\test.jpg";

Bitmap bmp = new Bitmap(imgfile);
Bitmap bw = ConvertTo1Bpp(bmp); //make b+w

Document doc = 
    new Document(new iTextSharp.text.Rectangle(bmp.Width, bmp.Height));

PdfWriter.GetInstance(doc, 
    new System.IO.FileStream(
        @"C:\users\me\desktop\test.pdf", 
        System.IO.FileMode.Create, 
        System.IO.FileAccess.ReadWrite));

iTextSharp.text.ImgJBIG2 i = 
    ((iTextSharp.text.ImgJBIG2)iTextSharp.text.ImgJBIG2.GetInstance(
        bmp, System.Drawing.Imaging.ImageFormat.Bmp));

doc.Open();
doc.Add(i);
doc.Close();

I cant find any good documentation for this with iTextSharp. What I am trying to do is take a Jpeg file and convert it into a pdf embedded as a black and white JBig2 image. The error I get is an InvalidCastException between "iTextSharp.text.ImageRaw" and "iTextSharp.text.ImageJBig2"... is there an alternative to what I have above?

EDIT
ImgJBig2 just represents an image already encoded in JBig2 I believe now. What I am looking for is something that will take a Bitmap and encode it into a BW JBig2 Bitmap that I can put into a Pdf.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

此岸叶落 2024-11-01 07:20:06

据我所知,编码 JBig2 的选项并不多,也没有原生的免费选项。

最后一个创建一个 CLI 程序,您可以 P/Invoke 到该程序,或者最坏的情况是针对脚本,所以我认为如果您不想付费,这是您的最佳选择。 JBIG2 是否能提供比其他格式更高的压缩率?

As far as I can tell there's not a lot of options for encoding JBig2 and no native free ones.

The last creates a CLI program that you might be able to P/Invoke into or at worst script against so I think that's your best option if you don't want to pay. Does JBIG2 offer such greater compression over other formats?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文