Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]mPDF nadpisanie zapisanego pliku PDF
pietroff
post 12.10.2020, 12:24:57
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 11.03.2013

Ostrzeżenie: (0%)
-----


Witajcie,

w jaki sposób nadpisać już zapisany plik PDF? Generuję go w ten sposób:

  1. public function pdfGenerator($tekstPDF, $lokalizacja, $nazwaListy) {
  2. require_once __DIR__ . '/vendor/autoload.php';
  3.  
  4. $mpdf = new \Mpdf\Mpdf();
  5. $mpdf->WriteHTML($tekstPDF);
  6. //ob_clean();
  7. $mpdf->Output('./'.$lokalizacja.'/'.$nazwaListy.'.pdf', 'F');
  8. }


znalazłem w dokumentacji, że jest taka funkcja:

  1. // Require composer autoload
  2. require_once __DIR__ . '/vendor/autoload.php';
  3. // Must set codepage (e.g. UTF-8 or Core fonts) the same as for original document
  4. // The rest of the parameters do nothing
  5. $mpdf = new \Mpdf\Mpdf('');
  6. $mpdf->SetImportUse();
  7.  
  8. // forces no subsetting - otherwise the inserted characters may not be contained
  9. // in a subset font
  10. $mpdf->percentSubset = 0;
  11.  
  12. $search = array(
  13. 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
  14. 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXZZZZZZZZ'
  15. );
  16.  
  17. $replacement = array(
  18. "personalised for Jos\xc3\xa9 Bloggs",
  19. "COPYRIGHT: Licensed to Jos\xc3\xa9 Bloggs"
  20. );
  21.  
  22. $mpdf->OverWrite('test.pdf', $search, $replacement, 'I', 'mpdf.pdf' ) ;
  23.  


Tylko kompletnie nie wiem co przyporządkować zmiennej $search oraz $replacement? Może ktos podpowie jak to ugryźć?
Go to the top of the page
+Quote Post
trueblue
post 12.10.2020, 12:26:53
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A czytałeś opis tej funkcji?
Cytat
OverWrite – Replace specified text strings in an existing PDF file


https://www.php.net/manual/en/function.file-exists.php
https://www.php.net/manual/en/function.unlink.php


--------------------
Go to the top of the page
+Quote Post
pietroff
post 12.10.2020, 12:32:30
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 11.03.2013

Ostrzeżenie: (0%)
-----


Ok nie doczytałem sad.gif. Czy jest jakas możliwość nadpisania pdfa czy trzeba usunąć i zapisać na nowo?
Go to the top of the page
+Quote Post
trueblue
post 12.10.2020, 12:36:00
Post #4





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A to tak ważne, żeby można było nadpisać?
Przecież efekt sprawdzenia i zapisania będzie taki sam.
Zamiast się zastanawiać, już dawno byś to zrobił.


--------------------
Go to the top of the page
+Quote Post
Pyton_000
post 12.10.2020, 17:03:47
Post #5





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


A sprawdziłeś czy działa to co chcesz z tym co masz? Ew. zerknąłeś w kawałek kodu który odpowiada za zapisywanie PDF ?

Podpowiem:
  1. case Destination::FILE:
  2. $f = fopen($name, 'wb');
  3.  
  4. if (!$f) {
  5. throw new \Mpdf\MpdfException(sprintf('Unable to create output file %s', $name));
  6. }
  7.  
  8. fwrite($f, $this->buffer, strlen($this->buffer));
  9. fclose($f);
  10.  
  11. break;
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 19:18