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

Fri Nov 03, 2023 3:56 am

附件为添加水印前与添加水印后的文档

测试下来添加水印后 段落行间距变窄了,而且文本字体变成了 Times New Roman

有办法可以解决吗?

以下是示例代码:

Code: Select all
public static void main(String[] args) {
        //加载示例文档
        com.spire.doc.Document doc = new com.spire.doc.Document();

        doc.loadFromFile("nowatermark.docx");
        //添加艺术字并设置大小
        ShapeObject shape = new ShapeObject(doc, ShapeType.Text_Plain_Text);
        shape.setWidth(115);
        shape.setHeight(12);
        //设置艺术字文本内容、位置及样式
        shape.setRotation(315);
        shape.getWordArt().setFontFamily("宋体");
        shape.getWordArt().setText("综合管理平台-判赔赔");
        shape.getWordArt().setBold(false);
        shape.getWordArt().setSize(10);
        shape.setFillColor(new Color(205, 205, 205, 255));
        shape.setLineStyle(ShapeLineStyle.Single);
        shape.setStrokeColor(new Color(205, 205, 205, 51));
        shape.setStrokeWeight(0.5);

        com.spire.doc.Section section;
        HeaderFooter header;
        for (int n = 0; n < doc.getSections().getCount(); n++) {
            section = doc.getSections().get(n);
            //设置页边距
            section.getPageSetup().getMargins().setTop(72.009f);
            section.getPageSetup().getMargins().setBottom(72.009f);
            section.getPageSetup().getMargins().setLeft(90.153f);
            section.getPageSetup().getMargins().setRight(90.153f);
            //获取section的页眉
            header = section.getHeadersFooters().getHeader();
            com.spire.doc.documents.Paragraph paragraph;

            if (header.getParagraphs().getCount() > 0) {
                //如果页眉有段落,取它第一个段落
                paragraph = header.getParagraphs().get(0);
            } else {
                //否则新增加一个段落到页眉
                paragraph = header.addParagraph();
            }
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 3; j++) {
                    //复制艺术字并设置多行多列位置
                    shape = (ShapeObject) shape.deepClone();
                    shape.setVerticalPosition(90 + 280 * i);
                    shape.setHorizontalPosition(20 + 160 * j);
                    paragraph.getChildObjects().add(shape);
                }
            }
        }
        //保存文档
        doc.saveToFile("result.docx", FileFormat.Docx_2013);
    }

liyao_zn
 
Posts: 4
Joined: Wed Nov 01, 2023 5:34 am

Fri Nov 03, 2023 8:57 am

您好,

感谢您的反馈。
经过测试,我复现了您提到的问题,结果文档的段落行间距变小,英文和数字字体没有变化,中文字体变成了宋体。我已经将该问题记录到我们的问题追踪系统中,编号SPIREDOC-10019,我们的开发人员会调查并解决这个问题,给您带来不便,我们感到非常抱歉。这个问题一旦修复,我们会第一时间通知您。此外,根据您的邮箱我们没有查询到相关的购买信息,请问您是否购买?如果购买了,麻烦提供一下购买的订单号或者公司信息,您可以通过邮箱发送给我们([email protected]) 或者附加在该贴中,我们会根据购买信息调整问题的优先级,感谢您的理解与支持。

Best regards,
Triste
E-iceblue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Wed Nov 08, 2023 2:25 am

您好,

感谢您的耐心等待。
我们的开发人员经过调查发现,您的测试文档丢失了样式,具体您可以将文档的后缀docx改为zip,然后解压,您可以点进其中的word文件夹,与普通Word文档解压之后对比,测试文档中的style.xml丢失了。因此您使用Word打开的时候,Word会使用自己的默认呈现方式。而我们的产品加载保存后,会添加对应的数据,因此这就是结果文档和您的测试文档相比,行间距和字体变化的原因。如果您还有其他问题,欢迎您随时咨询。

Best regards,
Triste
E-iceblue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Return to 中文技术支持

cron