Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: generowanie pdf + jpg
Forum PHP.pl > Forum > PHP
user2
Witam!
Wiem, ze ten temat byl juz poruszany, jeden nawet jest wyrozniony, ale, zeby odroznic problemy zalozylem nowy temat.

Chodzi mianowicie o to, ze chcialbym z poziomu php generowac plik pdf. Wszystko byloby ok, gdyby nie to,ze chce do niego "dokleic" zdjecie. Znalazlem w sieci taki kod:

  1. <?php
  2.  //jeśli jest przesyłany formularz:
  3.  if (isset($_POST["imie"])){
  4.  
  5.  //pobierz dane z formularza
  6.  $u_imie=$_POST["imie"];
  7.  $u_wiek=$_POST["wiek"];
  8.  $u_mail=$_POST["mail"];
  9.  $u_gg =$_POST["gg"];
  10.  
  11.  //musimy podzielić opis na tablicę z kolejnymi liniami
  12.  $u_opis = explode("n",$_POST["opis"]);
  13.  
  14.  // tworzymy nowy dokument i w zmiennej $pdf przechowujemy uchwyt do niego
  15.  $pdf = pdf_new();
  16.  //otwieramy nowy pusty plik
  17.  pdf_open_file($pdf, "");
  18.  //rozpoczynamy nową stronę
  19.  pdf_begin_page($pdf, 595, 842);
  20.  //ustawiamy czcionkę na Times New Roman, rozmiar: 16
  21.  pdf_set_font($pdf, "Times-Roman", 16, "winansi");
  22.  //wypisz tekst na konkretnej pozycji. Uwaga! Pozycja pionowa od dołu!
  23.  pdf_show_xy($pdf, 'Dane uzytkownika:',50,820);
  24.  
  25.  //wypisz dane uzytkownika:
  26.  pdf_set_font($pdf, "Times-Roman", 13, "winansi");
  27.  $im = pdf_open_jpeg($pdf, "obrazek.jpg");
  28.  pdf_place_image($pdf, $im, 5, $y-72, 0.5);
  29.  pdf_close_image ($pdf,$im);
  30.  pdf_show_xy($pdf, 'Imie: '.$u_imie,60,800);
  31.  pdf_show_xy($pdf, 'Wiek: '.$u_wiek,60,785);
  32.  pdf_show_xy($pdf, 'Mail: '.$u_mail,60,770);
  33.  pdf_show_xy($pdf, 'GG #: '.$u_gg , 60,755);
  34.  pdf_show_xy($pdf, 'Opis: ', 60,740);
  35.  
  36.  //ustaw kursor na prawo od napisu "Opis:" - będzie ładniej wyglądało
  37.  pdf_show_xy($pdf,"", 90,740);
  38.  //wyzeruj zmienną dla pętli
  39.  $i=0;
  40.  //rozpocznij pętlę
  41.  while ($u_opis[$i] != "")
  42.  {
  43.  //napisz kolejną linię
  44.  pdf_continue_text($pdf,$u_opis[$i]);
  45.  //zwiększ licznik
  46.  $i++;
  47.  }
  48.  
  49.  
  50.  //zakończ stronę
  51.  pdf_end_page($pdf);
  52.  
  53.  //zamknij dokument
  54.  pdf_close($pdf);
  55.  
  56.  //pobierz dane z dokumentu
  57.  $data = pdf_get_buffer($pdf);
  58.  //prześlij nagłówek z informacją o typie dokumentu (czyli PDF :) )
  59.  header("Content-type: application/pdf");
  60.  header("Content-disposition: inline; filename=test.pdf");
  61.  header("Content-length: " . strlen($data));
  62.  
  63.  //wyświetl zawartość dokumentu php
  64.  echo $data;
  65.  }
  66.  else{
  67.  ?>
  68.  <html>
  69.  <head>
  70.  <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
  71.  </head><body>
  72.  <form method="POST" action="<? echo $PHP_SELF;?>">
  73.  <table border=0>
  74.  <tr><td>Imię:</td><td> <input name="imie" /></td>
  75.  <tr><td>Wiek:</td><td> <input name="wiek" /></td>
  76.  <tr><td>Mail:</td><td> <input name="mail" /></td>
  77.  <tr><td>Gadu-Gadu: </td><td><input name="gg" /></td>
  78.  <tr><td>Opis:</td><td><textarea name="opis"></textarea><td><input type="submit" value="Wyslij"></form></td><?php } ?>


Strona w php dziala, ale niestety pdf sie nie generuje. Kiedy wywali sie linijki
  1. <?php
  2. $im = pdf_open_jpeg($pdf, "obrazek.jpg");
  3.  pdf_place_image($pdf, $im, 5, $y-72, 0.5);
  4.  pdf_close_image ($pdf,$im);
  5. ?>

Wszystko gra. Pomozcie prosze jak poprawnie wkleic tam obrazek.

Z gory dzieki za szybka odpowiedz.
Pozdrawiam
Blastereq
Zajrzałeś w ogóle do manuala ?
Zamień
  1. <?php
  2. $im = pdf_open_jpeg($pdf, "obrazek.jpg");
  3. pdf_place_image($pdf, $im, 5, $y-72, 0.5);
  4. ?>


Na
  1. <?php
  2. $im = PDF_load_image($pdf,"jpeg","obrazek.jpg","");
  3. pdf_place_image($pdf, $im, 5, $y-72, 0.5);
  4. ?>

Jak nie zadziała to sobie pokombinuj, adres manuala chyba znasz winksmiley.jpg
user2
Skopiowalem to ze strony 1:1. Jak innym ludziom to dzialalo to dlaczego u mnie nie chcialo i z reszta dalej nie dziala sad.gif
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.