世界好演员
2019-05-09 17:29
采纳率: 25%
浏览 839
已采纳

java如何给office加水印

要求:

1、适用linux系统

2、免费

希望各位大牛给提供下实现方式

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

4条回答 默认 最新

  • qq_36492588 2019-05-10 15:01
    最佳回答

    有个免费的第三方Free Spire.Doc for Java
    ,操作Word文档的,支持水印功能,代码如下:
    1.文本水印

    import com.spire.doc.*;
    import com.spire.doc.documents.WatermarkLayout;
    import java.awt.*;
    
    public class WordTextWatermark {
        public static void main(String[] args) {
    
            Document document = new Document();
            document.loadFromFile("Sample.docx");
    
            insertTextWatermark(document.getSections().get(0));
    
            document.saveToFile("out/result.docx",FileFormat.Docx );
        }
        private static void insertTextWatermark(Section section) {
            TextWatermark txtWatermark = new TextWatermark();
            txtWatermark.setText("内部使用");
            txtWatermark.setFontSize(40);
            txtWatermark.setColor(Color.red);
            txtWatermark.setLayout(WatermarkLayout.Diagonal);
            section.getDocument().setWatermark(txtWatermark);
        }
    
    }
    

    2.图片水印

    import com.spire.doc.*;
    public class WordImageWatermark {
        public static void main(String[] args)  throws Exception{
    
            Document document = new Document();
            document.loadFromFile("Sample.docx");
    
             PictureWatermark picture = new PictureWatermark();
             picture.setPicture("logo.png");
             picture.setScaling(5);
             picture.isWashout(false);
             document.setWatermark(picture);
    
             document.saveToFile("out/result2.docx",FileFormat.Docx );
        }
    }
    

    请参考原文

    评论
    解决 无用
    打赏 举报
查看更多回答(3条)

相关推荐 更多相似问题