Могу ли я установить пароль для уже сгенерированного PDF-файла, используя mpdf или любые другие библиотеки php pdf - PullRequest
0 голосов
/ 26 марта 2019

Мне нужно установить пароль для моего уже сгенерированного файла PDF, используя mpdf в php.

1 Ответ

0 голосов
/ 02 апреля 2019
  1. Я конвертирую уже сгенерированный pdf в jpeg, используя расширение imagick () в php.
  2. Снова я конвертирую jpeg в pdf, используя TCPDF.
  3. Я устанавливаю пароль, пока яЯ преобразую JPEG в PDF с использованием TCPDF.

Sry для худшего английского.

Ниже мой код:

// Преобразование PDF в JPG $ Imagick = newimagick ();

            $imagick->readImage(base_url().'pdffiles/'.$faxid.'.pdf');

            foreach($imagick as $i => $imagick) {

                $imagick->setImageFormat('jpeg');

                $imagick->setResolution(300,300);

                header('Content-Type: image/jpeg');

                $path1 = './pdffiles/'.$faxid.'_'.$i.'.jpg';

                file_put_contents($path1, $imagick ); 
            }

            // Convert jpg to pdf with password protection
            $this->load->library('Tc_pdf');
            $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT,  true, 'UTF-8', false);

            $pdf->SetProtection(array('print', 'copy','modify'), $loggedInUser, "ourcodeworld-master", 0, null);

            $pdf->SetCreator(PDF_CREATOR);

            $pdf->SetFont('courier', '', 20);
            $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

            //$dir = base_url()."/pdffiles/";
            $map = directory_map('./pdffiles/');
            foreach ($map as $key => $value) {
                $extention = explode('.', $value);
                if($extention[1] == 'jpg') {
                  $pdf->AddPage();
                  $img = file_get_contents('./pdffiles/'.$value);
                  $pdf->Image('@' . $img, 20, 20, '', '', 'JPG', '', 'T', false, 100, '', false, false, 0, false, false, false);

                }

            }

            foreach ($map as $key => $value) {
                @unlink('./pdffiles/'.$value);
            }   

            $pdf->Output('example.pdf', 'I');
...