如何使用itextSharp将字节[]写入PDF文档

如何使用itextSharp将字节[]写入PDF文档,pdf,itext,Pdf,Itext,我有一个字节[],我想将字节[]写入PDF文档。我看过段落,ShowText方法来打印文本,但我不知道如何传递字节[]。在下面的代码中,我想将fileBytes写入PDF。怎么做 BaseFont f_cb = BaseFont.CreateFont("c:\\windows\\fonts\\calibrib.ttf", BaseFont.CP1252, BaseFont.NOT_EMBEDDED); BaseFont f_cn = BaseFon

我有一个字节[],我想将字节[]写入PDF文档。我看过段落,ShowText方法来打印文本,但我不知道如何传递字节[]。在下面的代码中,我想将fileBytes写入PDF。怎么做

            BaseFont f_cb = BaseFont.CreateFont("c:\\windows\\fonts\\calibrib.ttf", BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
            BaseFont f_cn = BaseFont.CreateFont("c:\\windows\\fonts\\calibri.ttf", BaseFont.CP1252, BaseFont.NOT_EMBEDDED);

            byte[] fileBytes = File.ReadAllBytes(@"D:\196836f7-9cf5-4044-b11e-2e3d06888c43.pdf");

            using (FileStream fs = new FileStream(@"D:\result_196836f7-9cf5-4044-b11e-2e3d06888c43.pdf", FileMode.Create))
            {
                Document document = new Document(PageSize.LETTER, 25, 25, 30, 30);
                PdfWriter writer = PdfWriter.GetInstance(document, fs);

                // Add meta information to the document
                document.AddAuthor("John");
                document.AddCreator("itestSharp demo");
                document.AddKeywords("ItextSharp tutorial");
                document.AddSubject("Steps to write byte[] to PDF using c#");
                document.AddTitle("Steps to write byte[] to PDF using c#");

                document.Open();

                PdfContentByte cb = writer.DirectContent;
                cb.SetFontAndSize(f_cb, 16);

                cb.BeginText();

                cb.SetTextMatrix(25, 400);                
                cb.ShowText("Hello World");

                cb.EndText();                

                document.Close();
                writer.Close();
                fs.Close();
            }

您想打印哪些字节?您想用十六进制转储文件填充PDF吗?@mkl我的目标是制作另一个页面大小与原始文件不同的PDF。我的原始pdf有A4页面大小,我想创建另一个具有US信函页面大小的pdf,并重写原始pdf的内容。有没有办法做到这一点?好吧,如果你的PDF在顶部和底部有足够的自由空间,你可以简单地改变页面的尺寸,让内容保持原样。或者你可以将A4页缩小一点,以完全适合信件页。不过,尝试回流PDF内容通常很难实现。不过,无论如何,“将byte[]写入PDF文档”都不是解决方案的一部分,您真的应该重新构建/发布您的文章,并询问您的实际问题。