SecurityHelper.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using ComPDFKit.PDFDocument;
  2. using PDF_Office.Model;
  3. using Prism.Services.Dialogs;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using static PDF_Office.Model.Dialog.ToolsDialogs.SaftyDialogs.DeleteSafetySettintgsModel;
  10. namespace PDF_Office.Helper
  11. {
  12. public class SecurityHelper
  13. {
  14. public static bool CheckHaveAllPermissions(CPDFDocument document)
  15. {
  16. CPDFPermissionsInfo permissionsInfo = document.GetPermissionsInfo();
  17. if (permissionsInfo.AllowsDocumentChanges &&
  18. permissionsInfo.AllowsPrinting &&
  19. permissionsInfo.AllowsHighQualityPrinting &&
  20. permissionsInfo.AllowsCopying &&
  21. permissionsInfo.AllowsDocumentAssembly &&
  22. permissionsInfo.AllowsFormFieldEntry &&
  23. permissionsInfo.AllowsCommenting)
  24. {
  25. return true;
  26. }
  27. else
  28. {
  29. return false;
  30. }
  31. }
  32. public static bool VerifyPassword(CPDFDocument document ,EnumPasswordKind enumPasswordKind, IDialogService dialogService)
  33. {
  34. DialogParameters value = new DialogParameters();
  35. value.Add(ParameterNames.PasswordKind, EnumPasswordKind.StatusPermissionsPassword);
  36. value.Add(ParameterNames.PDFDocument, document);
  37. bool isDiscryptied = false;
  38. dialogService.ShowDialog(DialogNames.CheckPasswordDialog, value, e => { isDiscryptied = e.Parameters.GetValue<bool>("CheckPassword"); });
  39. return isDiscryptied;
  40. }
  41. }
  42. }