没有废话。
maven依赖
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.13</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.47</version>
</dependency>
代码
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.FileOutputStream;
public class PdfEncry {
public static void main(String[] args) {
String srcPath = "C:\\D\\1.pdf";
String destPath = "C:\\D\\1-1.pdf";
String passWd = "2048";
encrypt(srcPath, destPath, passWd);
}
private static void encrypt(String srcPath, String destPath, String passWd) {
try {
PdfReader srcReader = new PdfReader(srcPath);
PdfStamper destStamper = new PdfStamper(srcReader, new FileOutputStream(destPath));
destStamper.setEncryption(passWd.getBytes(), passWd.getBytes(),
PdfWriter.ALLOW_PRINTING, PdfWriter.ENCRYPTION_AES_128);
destStamper.close();
srcReader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}