使用icePDF帶字體架包進行pdf轉圖片時,會有官方的水印。可以通過反編譯架包來去除水印,只需修改架包中的兩個類即可。
1、首先下載到icepdf的架包。
2、用解壓縮軟件,對該jar文件進行解壓,得到名為icepdf-core的文件夾。
3、找到2個要修改的class文件,用反編譯軟件,另存成java文件。
在icepdf-core\org\icepdf\core\application文件夾下的ProductInfo.class文件,
在icepdf-core\org\icepdf\core\pobjects\graphics文件夾下的Padding.class文件。
4、修改兩個java文件中的內容。
(1)修改ProductInfo.java文件中的getVersion()方法,使其返回一個空字符串。
(2)Padding.java文件有兩處要修改,一是修改最上面的兩個字符數組為空。
二是在static語句塊的第二個for循環中增加int定義。
5、將兩個java文件編譯成class文件,裝有java環境的可以直接用javac命令進行編譯。(java文件要放在執行命令的對應目錄,這個例子里是在c盤執行命令,所以java文件也要放在c盤,如下圖)
注:(1)如果編譯時報下圖紅圈處錯誤,是因為java文件是UTF-8編碼問題,將java文件用記事本打開,另存為ANSI格式,再重新編譯。
(2)編譯Padding.java文件時報如下錯誤,是因為缺少依賴的包,將第2步中解壓出的icepdf-core文件夾下的org文件夾整個復制到c盤,再重新編譯。
6、最后用壓縮軟件,將兩個編譯好的class替換進jar文件中。這樣ok了!