2017-09-03 3 views
4

Le PDF génère avec succès mais je veux le protéger avec un mot de passe. vol-soucoupe-pdf doc ne m'aide pas. J'utilise cet exemple Using thymeleaf+flying-saucer-pdf+Spring BootComment protéger le rapport pdf avec mot de passe en utilisant thymeleaf comme moteur de template et soucoupe volante comme rendu

+0

Tout d'abord merci pour le référencement création de PDF à partir de mon blog. Pour définir le mot de passe en PDF, vous devez utiliser la classe de soucoupe volante 'PDFEncryption' –

+0

Protéger un pdf en utilisant un mot de passe n'a rien à voir avec spring ou thymeleaf. Suppression de ces tags –

Répondre

8

Pour définir un mot de passe au format PDF avec Flying Saucer classe PDF Creator utilisation PDFEncryption. Pour définir un mot de passe à votre PDF, créez une instance de PDFEncryption puis utiliser sa méthode setUserPassword() comme ceci:

final File outputFile = File.createTempFile(fileName, ".pdf"); 
FileOutputStream os = new FileOutputStream(outputFile); 
PDFEncryption pdfEncryption = new PDFEncryption(); 
String password= "[email protected]"; 
pdfEncryption.setUserPassword(password.getBytes()); 
ITextRenderer renderer = new ITextRenderer(); 
renderer.setPDFEncryption(pdfEncryption); 
renderer.setDocumentFromString(htmlContent); 
renderer.layout(); 
renderer.createPDF(os, false); 
renderer.finishPDF();