iText中Table和PdfTable的区别

 我来答
受司大人
推荐于2016-07-28 · 知道合伙人影视综艺行家
受司大人
知道合伙人影视综艺行家
采纳数:20262 获赞数:171846
毕业于浙江广厦,有一定的电脑专业基础和两年工作经验,读过相关书籍多本

向TA提问 私信TA
展开全部
itext中PdfPtable和 Table区别

1.iTextSharp.text.Table的Rowspan方法可以合并行,缺点是,每行的高度是根据内容自动调整的.

2.PdfPTable的MinimumHeight方法可以设置行的高度,但是不能合并行.
3.现在的问题是既要能合并行,又要能设置行的高度.
PdfPTable的PdfPCell有个方法disableBorderSide(1);
disableBorderSide();方法有一个参数,有四个值1,2,4,8 分别对应每行的上,下,左,右四个边框.
PdfPTable每行的四个边框默认是显示的.要想隐藏上边框,disableBorderSide();方法的参数设置为1就行了.
这样就PdfPTable就可以变相地实现合并行.唯一不足的是合并行里面的内容要动态实现就不好调整了.

例子1:(PdfPtable的用法)
String option2= "1,选择题测试题目选择题测试题目选择题测试题目选择题测试题目选择题测试题目选择题测试题目选择题测试题目";
Paragraph options2 = newParagraph(option2,new Font(bfChinese,
12));
options1.setAlignment(Element.ALIGN_LEFT);
doc.add(options2);
PdfPTable table1 = newPdfPTable(4);
table1.setHorizontalAlignment(Element.ALIGN_MIDDLE); int hws1[] = {15, 30, 15, 30,};
table1.setWidths(hws1);
table1.setTotalWidth(100);

image.scaleAbsolute(100, 100);
Phrase content = new Phrase("A 选择题选项测试,加图片的的。选择题选项测试,加图片的的。选择题选项测试,加图片的的。",font);
PdfPCell cellleft1= newPdfPCell(content);
cellleft1.setColspan(2);
cellleft1.setHorizontalAlignment(Element.ALIGN_LEFT); cellleft1.disableBorderSide(1);
cellleft1.disableBorderSide(2);
cellleft1.disableBorderSide(4);
cellleft1.disableBorderSide(8);
table1.addCell(cellleft1);
PdfPCell cellright1= newPdfPCell(image);
cellright1.setColspan(2);
cellright1.setHorizontalAlignment(Element.ALIGN_CENTER); cellright1.disableBorderSide(1);
cellright1.disableBorderSide(2);
cellright1.disableBorderSide(4);
cellright1.disableBorderSide(8);
table1.addCell(cellright1);

例子2:(Table的用法)
PdfPTable table = newPdfPTable(2);//两列
35 table.setWidthPercentage(100);
36 //传入的对象信息
37 count = list.size();
//避免因为最后一行数据由于不能满足总列数而导致itext自动将其去掉,38 而生成一些多余的数
39 intcolumn = 2;
40 intpersons = count;
41 intyushu = persons % 2;
42 inttmppersons = persons + (column - yushu);
43 String barCodeString = "";
44 String barCode = "";
45 //对象信息输入pdf文件
46 for(inti = 0; i<tmppersons; i++) {
47 if(i< persons) {
48 //构造个两列一行的表格
49 PdfPTablemytable = newPdfPTable(2);
50 //插入图片
51 Image image = Image.getInstance("image路径");
52 mytable.addCell(image);
53 mytable.setWidthPercentage(80);
54 String cntext = "测试";
55 mess = newParagraph(cntext, newcom.lowagie.text.Font(bfChinese,11)); 56 //第二列放文字信息
57 mytable.addCell(mess);
58 //在单元格中放置构造好的一个表格 59 table.addCell(mytable);

三亿文库3y.uu456.com包含各类专业文献、各类资格考试、高等教育、中学教育、行业资料、文学作品欣赏、应用写作文书、专业论文、iText中Table和PdfTable的区别75等内容。
微测检测5.10
2023-07-11 广告
IEC62133与en62133的区别如下:1. 认证机构不同:IEC62133是国际的标准,它以国际通用的标准进行生产;而en62133采用的是欧盟的标准,它使用欧盟的生产需求进行生产。2. 宗旨不同:IEC62133的宗旨是促进电气、电... 点击进入详情页
本回答由微测检测5.10提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式