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 и преобразовать его в PDF, встроенный в черно-белое изображение JBig2. Я получаю ошибку InvalidCastException между "iTextSharp.text.ImageRaw" и "iTextSharp.text.ImageJBig2" ... есть ли альтернатива тому, что у меня есть выше?
EDIT
ImgJBig2 просто представляет изображение, уже закодированное в JBig2, я верю сейчас. То, что я ищу, - это что-то, что возьмет растровое изображение и закодирует его в растровое изображение BW JBig2, которое я могу поместить в PDF.