您好,登錄后才能下訂單哦!
本文章向大家介紹使用java怎么將word文檔轉換為pdf并添加水印的基本知識點總結和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下。
Java的特點有哪些 1.Java語言作為靜態面向對象編程語言的代表,實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。 2.Java具有簡單性、面向對象、分布式、安全性、平臺獨立與可移植性、動態性等特點。 3.使用Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。
import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import org.slf4j.Logger; import com.aspose.words.Document; import com.aspose.words.SaveFormat; /** * * @ClassName: Word2PdfUtilt * @Description: PDF轉換工具類 * @author mzl * @date 2018年7月30日 下午5:26:44 * */ public class Word2PdfUtilt { protected static Logger log = Log.get(); public static void main(String[] args) { doc2pdf("D:\\Workspaces\\小花測試_20180731094521.doc","D:\\Workspaces\\test.pdf"); } public static void doc2pdf(String inPath, String outPath) { FileOutputStream os =null; try { File file = new File(outPath); // 新建一個空白pdf文檔 os = new FileOutputStream(file); Document doc = new Document(inPath); // Address是將要被轉化的word文檔 doc.save(os, SaveFormat.PDF); } catch (Exception e) { e.printStackTrace(); }finally{ if(os!=null){ try { os.close(); } catch (IOException e) { e.printStackTrace(); } } } } }
轉成PDF格式后,圖片等樣式均沒有亂。
以上就是生產PDF的步驟了,接下來添加水印:
/** * * @Title: insertWatermarkText * @Description: PDF生成水印 * @author mzl * @param doc * @param watermarkText * @throws Exception * @throws */ private static void insertWatermarkText(Document doc, String watermarkText) throws Exception { Shape watermark = new Shape(doc, ShapeType.TEXT_PLAIN_TEXT); //水印內容 watermark.getTextPath().setText(watermarkText); //水印字體 watermark.getTextPath().setFontFamily("宋體"); //水印寬度 watermark.setWidth(500); //水印高度 watermark.setHeight(100); //旋轉水印 watermark.setRotation(-40); //水印顏色 watermark.getFill().setColor(Color.lightGray); watermark.setStrokeColor(Color.lightGray); watermark.setRelativeHorizontalPosition(RelativeHorizontalPosition.PAGE); watermark.setRelativeVerticalPosition(RelativeVerticalPosition.PAGE); watermark.setWrapType(WrapType.NONE); watermark.setVerticalAlignment(VerticalAlignment.CENTER); watermark.setHorizontalAlignment(HorizontalAlignment.CENTER); Paragraph watermarkPara = new Paragraph(doc); watermarkPara.appendChild(watermark); for (Section sect : doc.getSections()) { insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_PRIMARY); insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_FIRST); insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_EVEN); } System.out.println("Watermark Set"); } private static void insertWatermarkIntoHeader(Paragraph watermarkPara, Section sect, int headerType) throws Exception { HeaderFooter header = sect.getHeadersFooters().getByHeaderFooterType(headerType); if (header == null) { header = new HeaderFooter(sect.getDocument(), headerType); sect.getHeadersFooters().add(header); } header.appendChild(watermarkPara.deepClone(true)); }
以上就是小編為大家帶來的使用java怎么將word文檔轉換為pdf并添加水印的全部內容了,希望大家多多支持億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。