AsposeWords摆脱了额外的桌子高度

时间:2017-07-26 09:56:55

标签: java aspose aspose.words

我无法使用aspose words api来摆脱桌面上的这个额外空间。

仅当文本长度达到极限时,是否存在使用最小空间和扩展单元格高度的功能?

目前,我的表格看起来像这样......

enter image description here

但是我希望构建表没有下面的空格:

enter image description here

使用哪种合适的属性以及使用哪种顺序?

我正在使用DocumentBuilder构建表格。

这些是我的代码:

Table table = builder.startTable();

        // Insert Column headers: 
        int hcolumn = 0;
        for (String column : columns) {
            builder.insertCell();
            builder.getFont().setBold(true);
            builder.getRowFormat().setHeadingFormat(true);
            builder.writeln(translateHeader(column, hcolumn));
            table.setBottomPadding(0);
            hcolumn++;
        }

        builder.endRow(); // End of Header
        builder.getRowFormat().clearFormatting();

        // Loop through the records, split comma seperated(per cell) and create
        // a "row" for each loop.
        for (String string : data) {
            List<String> result = Arrays.asList(string.split("\\s*,\\s*"));
            int column = 0;
            for (String string2 : result) {
                builder.insertCell();
                builder.getFont().setBold(false);
                builder.getRowFormat().setHeadingFormat(false);
                // translate and insert
                builder.writeln(translateData(string2, column));
                column++;
            }
            builder.endRow();

        }
        builder.endTable();

我添加了#34; setBottomPadding&#34;到0没有帮助。

这是生成的文档:link 这就是我想要的:link

2 个答案:

答案 0 :(得分:2)

根据文件,DocumentBuilder.WriteLn执行此操作:在文档中插入字符串和段落;所以你只想写没有段落的数据。尝试使用builder.write代替builder.writeln,看看它是否有效。

PS:您可能已经知道了,但ln末尾的write[ln]代表line,因此通常意味着它会打印/写入添加新行在文本/数据的末尾。

答案 1 :(得分:-1)

试试这个,

builder.writeln(translateData(string2, column)); 替换为 builder.write(translateData(string2, column));

writeln 在底部添加空格(新行)