为有中文需求的客户提供多渠道中文技术支持.

Wed Aug 31, 2022 7:54 am

一个单元格中 有三个TextRange 对象
Code: Select all
TextRange range1 = dataRow3.getCells().get(0).addParagraph().appendText("1");
TextRange range2 = dataRow3.getCells().get(0).addParagraph().appendText("2");
TextRange range3 = dataRow3.getCells().get(0).addParagraph().appendText("3");


如何设置 可以使三个拼成的一段内容“123” 在这个表格中居中

hannibal22
 
Posts: 52
Joined: Wed Aug 17, 2022 7:01 am

Wed Aug 31, 2022 9:54 am

您好,

请参考下面的代码实现您的需求,如果没有帮助,请提供您所期望的效果供我们参考。
Code: Select all
ParagraphCollection paragraphCollection=dataRow3.getCells().get(0).getParagraphs();
        StringBuilder sb=new StringBuilder();
        //获取每一行段落的值,并移除它
        for (int i=0;i<paragraphCollection.getCount();i++){
            sb.append(paragraphCollection.get(i).getText());
            dataRow3.getCells().get(0).getParagraphs().removeAt(i);
            i--;
        }
        String newText=sb.toString();
        dataRow3.getCells().get(0).addParagraph().appendText(newText);
        //设置居中
        dataRow3.getCells().get(0).getParagraphs().get(0).getFormat().setHorizontalAlignment(HorizontalAlignment.Center);

Sincerely,
Kylie
E-iceblue support team
User avatar

kylie.tian
 
Posts: 412
Joined: Mon Mar 07, 2022 2:30 am

Thu Sep 01, 2022 3:19 am

想实现的是这种情况,在一个表格中有三个字 “123”,其中设置“1”,“3”的字体为宋体,“2”的字体为黑体,然后把这三个字居中显示在这个表格中,麻烦问一下应该如何操作

hannibal22
 
Posts: 52
Joined: Wed Aug 17, 2022 7:01 am

Thu Sep 01, 2022 9:11 am

Hi,

感谢您的回复,
请参考下面的代码实现您的需求,如果有任何问题,请及时联系我们。
Code: Select all
        com.spire.doc.Document document = new Document();
        document.loadFromFile("test.docx");
        Table table = document.getSections().get(0).getTables().get(0);
        TableRow dataRow3=table.getRows().get(0);
        //增加一个paragraph
        Paragraph paragraph =dataRow3.getCells().get(0).addParagraph();
        //将range1,range2,range3添加到一个paragraph并设置为不同的字体
        TextRange range1 = paragraph.appendText("1");
        range1.getCharacterFormat().setFontName("宋体");
        TextRange range2 = paragraph.appendText("2");
        range2.getCharacterFormat().setFontName("黑体");
        TextRange range3 = paragraph.appendText("3");
        range3.getCharacterFormat().setFontName("宋体");
        //设置居中
        paragraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
        document.saveToFile("output.docx", FileFormat.Docx_2013);

Sincerely,
Kylie
E-iceblue support team
User avatar

kylie.tian
 
Posts: 412
Joined: Mon Mar 07, 2022 2:30 am

Return to 中文技术支持

cron