diff --git a/src/PrivatePdfConverter/Commands/EncryptPdf.cs b/src/PrivatePdfConverter/Commands/EncryptPdf.cs index 43a8fee..cce3965 100644 --- a/src/PrivatePdfConverter/Commands/EncryptPdf.cs +++ b/src/PrivatePdfConverter/Commands/EncryptPdf.cs @@ -10,6 +10,7 @@ public static class EncryptPdf public static void EncryptPdfWithPassword(string path, string password, string? output) { Log.Logger.Information("Read 1 file with name: {FileName}, Full path: '{Path}'", Path.GetFileName(path), path); + var outputFileName = output.PrepareOutputFileName(); var exportFullPath = $"{path}/{outputFileName}"; @@ -22,15 +23,16 @@ private static void EncryptPdfFile(string path, string password, string outputFi { var passwordBytes = Encoding.Default.GetBytes(password); - var pdfReader = new PdfReader(path); + using var pdfReader = new PdfReader(path); var writerProperties = new WriterProperties() .SetStandardEncryption( passwordBytes, passwordBytes, EncryptionConstants.ALLOW_PRINTING, EncryptionConstants.ENCRYPTION_AES_128); - var pdfWriter = new PdfWriter(new FileStream(outputFileName, FileMode.Create), writerProperties); - var pdfDocument = new PdfDocument(pdfReader, pdfWriter); + using var pdfWriter = new PdfWriter(new FileStream(outputFileName, FileMode.Create), writerProperties); + using var pdfDocument = new PdfDocument(pdfReader, pdfWriter); + pdfDocument.Close(); } }