Я испробовал несколько решений, но они не помогли. У меня есть файл PDF, содержащий конфиденциальную информацию, доступную только для просмотра. Не должно быть возможности распечатать или сохранить его в формате PDF.
Использование Java StandardProtectionPolicy
Я попытался зашифровать pdf с помощью приведенного ниже решения
PDDocument doc = PDDocument.load(new File(myFile));
int keyLength = 128;
AccessPermission permissions = new AccessPermission();
permissions.setCanPrint(false);
permissions.setReadOnly();
permissions.setCanExtractContent(false);
permissions.setCanPrintDegraded(false);
StandardProtectionPolicy spp = new StandardProtectionPolicy(null, null, permissions);
spp.setEncryptionKeyLength(keyLength);
spp.setPermissions(permissions);
doc.protect(spp);
Файл зашифрован с помощью кода и не позволяет пользователю распечатать его.
Я бэкэнд-кодер, поэтому немного меньшезнание сценариев пользовательского интерфейса
Файл отображается в браузере как Chrome, так как у него есть возможность сохранить его в формате PDF.Мне тоже нужно отключить эту функцию
Я пытался
<embed src="http://URL_TO_PDF.com/pdf.pdf#toolbar=0&navpanes=0&scrollbar=0" width="425" height="425">
, которая отключила панель инструментов, и теперь ее можно снова сохранить, щелкнув по ней правой кнопкой мыши.
теперь попытался отключитьщелчок правой кнопкой мыши
<script type="text/javascript">
document.onmousedown = disableRightclick;
var message = "Right click not allowed !!";
function disableRightclick(evt){
if(evt.button == 2){
alert(message);
return false;
}
}
</script>
Применяется к другому контенту, но не работает на теге embade, в котором есть pdf
Пробовал практически каждое решение, например
https://stackoverflow.com/a/22368454/6032482 ОтключитьПроблемы с печатью в PDF Box https://www.codexworld.com/how-to/embed-pdf-disable-right-click-using-javascript/ https://www.codeproject.com/Questions/239578/Disable-Right-Click-save-as-print-screen
Есть ли способ предотвратить сохранение PDF-файла с помощью java или любого сценария.