Запрет копирования и вставки содержимого PDF - устройства iOS - PullRequest
0 голосов
/ 07 ноября 2019

Можно ли как-то запретить пользователю копировать содержимое файла PDF на устройства iOS?

Чтобы немного подробнее рассказать об истории этого запроса, у меня есть приложение, которое загружает PDF иотображать его в браузере. Файл предоставляется веб-интерфейсом .NET Core , и клиент, который его обслуживает, разрабатывается в Angular .

На уровне API, который я использую iTextSharp для шифрования и установки разрешений для него (только разрешение на печать). Это работает без каких-либо проблем на рабочем столе, но не на устройствах iOS.

Если кто-нибудь может мне помочь, я был бы благодарен.

ОБНОВЛЕНИЕ

Метод шифрования .NET Core

public byte[] EncryptPdf(byte[] bytes, string encryptionKey)
        {
            using (var ms = new MemoryStream())
            {
                using (var reader = new PdfReader(bytes))
                using (var stamper = new PdfStamper(reader, ms))
                {
                    stamper.SetEncryption(null, Encoding.ASCII.GetBytes(encryptionKey),
                        PdfWriter.ALLOW_PRINTING, PdfWriter.ENCRYPTION_AES_128);
                    stamper.Close();
                }
                return ms.ToArray();
            }
        }

Угловой фрагмент для обработки BLOB-объектов

downloadFile(data: any) {
    var windowUrl = window.URL || (window as any).webkitURL;
    if (navigator.msSaveOrOpenBlob) {
      navigator.msSaveOrOpenBlob(data.body, this.getFileName(data));
      return;
    } else if (navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPhone/i)) {
      const url = windowUrl.createObjectURL(data.body);
      window.location.href = url;
      return;
    }
    saveAs(data.body, this.getFileName(data));
  }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...