Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Drukowanie zawartości strony do PDF z podziałem na strony
Forum PHP.pl > Forum > PHP
hejkumkejkum
Szukam od jakiegoś czasu rozwiązania, które pozwalałoby zrzucić do PDF zawartość kilku DIVów.


Każdy DIV to osobna strona. Treść w nich zawarta zawiera formatowania typu float, margin, padding, formatowanie tekstu, przyciski select oraz checkbox w postaci grafiki itd. Czyli ogólnie rzec zujmując nie jest to podstawowy kod jak to ma miejsce na przykład w fakturach.

Zastanawiam się czy jest jakies skuteczne rozwiązanie radzące sobie z bardziej skomplikowaną treścią.
Ewentualnie mogłoby zapisywac do PDF plik SVG, ważne żeby było to skalowalne (zoom w pdf) oraz oddawało kod html tak jak został on napisany w oparciu o standardy. Zależy mi na dobrej jakości druku więc raczej format JPG odpada.

Znalazłem też jakieś rozwiązania, które generują PDF po stronie serwera typu http://www.html2pdf.fr/en
http://mpdf1.com/manual/index.php
http://www.fpdf.org/

Jest ich jeszcze pewnie kilka, nie wiem które najlepuiej radzi sobie z CSS i nie zażyna serwera.

Ale istotne też jest by nie zarżnąc tym serwera gdy więcej osób będzi echciało sobie wygenerowac PDF z zawartości strony.
A generowanie tego PDF to kluczowa funkcja na której ma się oprzeć cały projekt, jednak wiem, że jest to nadal problematyczne.

Chyba, że ktoś ma jakiś pomysł co zastosować by działało to fajnie i przedewszystkim generowało plik z podziałem na strony tak jak napisałem na początku.
mam powiedzmy 3 DIVy z innym ID i każdy div to osobna strona.
markonix
Mpdf ma metodę do tworzenia kolejnych stron.
Jest cięższy niż klasy na których się opiera ponieważ jego założeniem jest lepsza obsługa unicode, css/html i innych - co właśnie potrzebujesz.
Jest rozwijany.

Czyli proponuje z niego skorzystać, to dobry wybór do bardziej wymagających prac z PDFami.
hejkumkejkum
A czy istnieje możliwość by po prostu zapisac zawartość DIVa jako plik/pliki (na przykład SVG) i wrzucić go do PDF jako kolejne strony?

Nie wiem czy tak się da i jakie sa tego ewentualne ograniczenia jesli się w ogóle da.

Bo generowanie PDF z CSS i HTML to prawdopodobnie załączanie czcionek itd itp. Choć ja bazuje na podstawowych jak arial.
A ja w sumie potrzebowałbym by to co jest w DIVach imitujących strony, było wrzucone do wygenerowanego PDFa i ewentualnie z mozliwością przesłania na wskazany email.

Jaka jest korzyść względem wygenerowania PDF przy pomocy na przykład Mpdf czy czegoś w tym stylu, a metodą powyższą czyli plik SVG, zakładam oczywiście, że da się zapisać do SVG to co mamy w danym DIVie.

Pytam gdyż już trochę się w tej tematyce zamotałem.
markonix
Czcionki w tej klasie już są (w paczce), nic nie trzeba kombinować i dogrywać.
d3ut3r
Jeżeli będziesz używał mPDF kod:

  1.  
  2. <div style="page-break-after:always">
  3. strona 1
  4. </div>
  5. <div style="page-break-after:always">
  6. strona 2
  7. </div>
  8. <div style="page-break-after:always">
  9. strona 3
  10. </div>
  11.  


mPDF powinien zapisać jako 3 stronicowy dokument.
hejkumkejkum
Cytat(markonix @ 27.10.2012, 23:49:11 ) *
Czcionki w tej klasie już są (w paczce), nic nie trzeba kombinować i dogrywać.



Ale w paczce zdaje się nie ma Arial.
A potrzebuję arial, arial bold, i arial italic.

W jaki sposób dodać tą czcionkę?

Co myslicie o http://code.google.com/p/dompdf/ ?


Pobrałem sobie już mpdf, zajmę się testowaniem tego rozwiązania. Ale od jakiegoś czasu na dysku mam również dompdf, nie miałem kiedy się nim pobawić.
Z tego co wdzę, ma panel konfigóracyjny i kilka bajerów. Zdaje się, że też wspiera utf.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.