目前正在用C#中的ITextSharp构建一个PDF。PDF由三个“部分”组成,一个封面,一个可以跨越多个页面的表格,以及一个最终页面。拥有该表的页面需要在第一页包含页眉,并在所有包含页眉的页面上包含页脚,但封面和最后一页不需要。
我使用XMLWorker构建页面,但这并不重要。构建页面的代码如下:
var htmlContext = new HtmlPipelineContext(null);
htmlContext.SetTagFactory(iTextSharp.tool.xml.html.Tags.GetHtmlTagProcessorFactory());
var cssResolver = XMLWorkerHelper.GetInstance().GetDefaultCssResolver(false);
/* cssResolver.AddCssFile(@"style.css", true); */
cssResolver.AddCssFile(@"style.css", true);
var pipeline = new CssResolverPipeline(cssResolver, new HtmlPipeline(htmlContext, new PdfWriterPipeline(document, writer)));
XMLWorker worker = new XMLWorker(pipeline, true);
XMLParser p = new XMLParser(worker);
/* write out cover page */
p.Parse(coverpage);
/* write out table */
document.NewPage();
writer.PageEvent = new PDFFooter();
p.Parse(header);
p.Parse(ContentTable);
/* write out end page */
document.NewPage();
p.Parse(endPage);
我遇到的麻烦是确定一种方法来防止页脚出现在结束页上。我正在重写OnEndPage以创建页脚。是否有一种方法来检测文档的最后一页(不知道具体是多少页),并告诉它不要使用重写,这样就不会打印出页脚?
当onendpage()
被触发时,无法知道您是否在最后一页,因此必须使用一个技巧。在pdffooter
类中添加一个布尔成员变量,并在默认情况下将其设置为false
。只有当此成员变量true
时才添加页脚。
要确保需要页脚的页有页脚,请在添加coverpage
后将member-variable设置为true
,并在添加endpage
前将其设置为false。
我试过以下方法。它似乎使每个页面后面的空白页的方向和大小是源PDF页面的方向和大小,但源PDF页面的方向和大小似乎是前一个空白页的方向和大小:
我只想在第一页和最后一页打印页脚。我怎样才能做到这一点?
我正在用ApachePDFBox编写一个简单的Java应用程序。我有几个PDF,其中最后一页是前几页内容的索引。 我需要的索引(最后一页)成为PDF文件的第一页。 可能吗? 我还发现了http://itextpdf.com/这个库听起来比ApachePDFBox更好,但在这种情况下,我也不知道我是否能做我需要的事情 或者我可以用这个:http://saaspose.com/docs/display
本文向大家介绍学做Bootstrap的第一个页面,包括了学做Bootstrap的第一个页面的使用技巧和注意事项,需要的朋友参考一下 本文实例分享了第一个Bootstrap页面的实现代码,供大家参考,具体内容如下 效果图: 实现代码: 相信大家一定还没过瘾吧,下面再为大家分享几篇文章: 《值得分享和收藏的Bootstrap学习教程》 《Bootstrap学习教程》 以上就是本文的全部内容,希望对大家
添加“下一页继续...”Jasper报表中除最后一页外的每页页脚中的文本。所以基本上,我想让用户知道报告的下一页有更多内容可以查看。我知道y东西的第x页,这也让我们知道如果有更多的页面可以看到,但我想使它更友好的用户。 > 创建了一个自定义变量,如下所示: 在页脚中创建了TextField,如下所示: 现在,当我运行总共有3页的报告时,TextField内容在每一页中显示如下文本:
我有一个PDF文档,通常,每一页都有一个页脚,页脚上有一个页码,前面有该页应该所在的章节或节的名称。但是,偶尔,我会得到一些跨越多个页面的大表结果。 我跳过为文档添加页眉和页脚信息,因为我有一个封面。因为不同的部分是不同的信息,所以我根据不同的领域将它们分解为章节和小节。此外,用户可以选择打印出一次从数据库信息生成的多个PDF。在每一章的开头,我使用以下命令设置页脚文本: 或者至少我在努力。当谈到