itextsharp: отключить буфер обмена для PDF - PullRequest
0 голосов
/ 24 декабря 2018

У меня есть функция, которая получает PDF-файл с рабочего стола.Я хочу, чтобы перед сохранением PDF-файла отключите буфер обмена, чтобы они не могли скопировать текст или изображения документа.

Мой код:

Dim NombreArchivo As String = System.IO.Path.GetFileName(File1.PostedFile.FileName) ' obtiene nombre archivo

Dim docsubido As New Document()
Dim SaveLocation As String = Server.MapPath("Pdf") & "\" & NombreArchivo ' obtiene ruta donde se guardara
If Not File1.PostedFile Is Nothing And File1.PostedFile.ContentLength > 0 Then
    Try

        File1.PostedFile.SaveAs(SaveLocation)

        Response.Write("El archivo ha sido cargado.")
    Catch Exc As Exception
        Response.Write("Error: " & Exc.Message)
    End Try
Else
    Response.Write("Seleccione un archivo para cargar.")
End If

End Sub

1 Ответ

0 голосов
/ 17 января 2019

Наконец, это было решение, позволяющее отключить свойство копирования и вставки в PDF-файл только для опции печати

Imports iTextSharp.text.pdf
Imports iTextSharp.text.pdf.PdfStamper
Private Sub Submit1_ServerClick(sender As Object, e As EventArgs) Handles Submit1.ServerClick
            Dim NombrePdfEntrada As String = System.IO.Path.GetFileName(File1.PostedFile.FileName) ' obtiene nombre archivo

            Dim SaveLocation As String = Server.MapPath("Pdf") & "\" & NombrePdfEntrada ' obtiene ruta donde se guardara
            If Not File1.PostedFile Is Nothing And File1.PostedFile.ContentLength > 0 Then
                Try
                    File1.PostedFile.SaveAs(SaveLocation)
                    Dim ArchivoCargado As New PdfReader(SaveLocation)
                    Dim rutasalida As New FileStream(Server.MapPath("Pdf") & "\Nuevo" & NombrePdfEntrada, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None)
                    Dim stampArchivoOutput As New PdfStamper(ArchivoCargado, rutasalida)
                    Dim passdue As String = ""
                    Dim arraydueño() As Byte = System.Text.Encoding.ASCII.GetBytes(passdue)
                    Dim passinv As String = ""
                    Dim arrayinvitado() As Byte = System.Text.Encoding.ASCII.GetBytes(passinv)
                    stampArchivoOutput.SetEncryption(False, passdue, passinv, PdfWriter.ALLOW_PRINTING)
                    stampArchivoOutput.Close()
                    ArchivoCargado.Close()
                    Response.Write("El archivo ha sido cargado.")
                Catch Exc As Exception
                    Response.Write("Error: " & Exc.Message & Exc.HelpLink
                                   )
                End Try
            Else
                Response.Write("Seleccione un archivo para cargar.")
            End If

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