当前位置: 首页 > 编程语言 > C#

如何使用iTextSharp给页面添加边框?分享

时间:2023-04-11 02:27:07 C#

如何使用iTextSharp给页面添加边框?是否可以使用iTextSharp为PDF文档中的页面添加边框?我正在从头开始生成PDF文件,因此我不需要为现有文档添加边框。这是我的代码示例:DocumentpdfDocument=newDocument(PageSize.LETTER);字体headerFont=newFont(baseFont,13);字体font=newFont(baseFont,10);PdfWriterwriter=PdfWriter.GetInstance(pdfDocument,newFileStream(fileName,FileMode.Create));pdfDocument.Open();//我在这里添加IElements.pdfDocument.Close();这是C#中的答案(改编自MarkStorer)。此示例使用页面的边距绘制边框,有时我发现这对调试页面布局很有用。publicoverridevoidOnEndPage(PdfWriterwriter,Documentdocument){base.OnEndPage(writer,document);varcontent=writer.DirectContent;varpageBorderRect=newRectangle(document.PageSize);pageBorderRect.Left+=document.LeftMargin;pageBorderRectRight-=document.RightMargin;pageBorderRect.Top-=document.TopMargin;pageBorderRect.Bottom+=document.BottomMargin;content.SetColorStroke(BaseColor.RED);content.Rectangle(pageBorderRect.Left,pageBorderRect.Bottom,pageBorderRect.Width,pageBorderRect.Height);内容.描边();我建议您在生成和使用PdfContentByte边框时获取当前页面的即时内容。您可能需要一个PdfPageEventHelper派生类来在onEndPage事件中进行绘图。您可以通过文档参数的getPageSize()查询当前页面大小,并使用它(稍作调整)绘制边框。鉴于您使用的是iTextSharp,您可能拥有PageSize属性而不是“get”方法。类似于:publicvoidonEndPage(PdfWriterwriter,Documentdoc){PdfContentBytecontent=writer.getDirectContent();矩形pageRect=doc.getPageSize();pageRect.setLeft(pageRect.getLeft()+10);pageRect.setRight(pageRect.getRight()-10);pageRect.setTop(pageRect.getTop()-10);pageRect.setBottom(pageRect.getBottom()+10);content.setColorStroke(Color.red);content.rectangle(pageRect.getLeft(),pageRect.getBottom(),pageRect.getWidth(),pageRect.getHeight());内容.中风();请注意,您实际上可以将矩形传递给content.rectangle(),使用矩形的边框和填充设置。我认为这可能有点令人困惑,所以没有那样编码。我能够为现有PDF添加红色边框。以上就是C#学习教程:HowtoaddabordertoapageusingiTextSharp?分享的所有内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注——publicvoidcreatePdf(PdfReaderpdfReader)throwsDocumentException,IOException{StringuserDir=System.getProperty("用户目录");System.out.println("userDir="+userDir);RESULT=userDir+"/work/"+"sample.pdf";//步骤1文档document=newDocument();//步骤2PdfCopycopy=newPdfCopy(document,newFileOutputStream(RESULT));//第3步document.open();intnoOfPages=pdfReader.getNumberOfPages();for(intpage=0;page涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: