Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Nowa funkcja do klasy FPDF i problemy.
Forum PHP.pl > Forum > Przedszkole
kubara
Witam

Napisałem funkcję przesuwającą kolejne znaki (robiącą odstępy) i tworzącą odpowiedniki w pliku PDF:

  1. <?php
  2. function znaki($str,$liczba){
  3. for($i=0;$i<strlen($str);$i++)
  4. {
  5. $liczba_2 .= $liczba+=9;
  6. $litera_2 .= $str[$i];
  7. $this->SetXY($liczba_2, 37);
  8. $this->Cell(0,0,$litera_2,0,1,C);
  9. }
  10. }
  11.  
  12. ?>


oraz jej wywołanie
  1. <?php
  2.  
  3. $pdf=new FPDF('L');
  4. //itd
  5. $pdf->znaki(1234567890,-415.5);
  6.  
  7. ?>


Funkcję dodałem do już istniejącej klasy FPDF, jednak wynikiem działania jest wyrzucenie nie pliku pdf a znaków zakodowanych.

Pytanie, w jaki sposób należy to poprawnie zapisać by dawało oczekiwane rezultaty.

Dzięki za odpowiedź.

P.S.

Chodzi o to aby wywołanie tej funkcji dało następujący wynik:

  1. <?php
  2. $pdf->SetXY(-415.5, 37);
  3. $pdf->Cell(0,0,'1',0,1,C);
  4. $pdf->SetXY(-406.5, 37);
  5. $pdf->Cell(0,0,'2',0,1,C);
  6. $pdf->SetXY(-397.5, 37);
  7. $pdf->Cell(0,0,'3',0,1,C);
  8. $pdf->SetXY(-388.5, 37);
  9. $pdf->Cell(0,0,'4',0,1,C);
  10. $pdf->SetXY(-379.5, 37);
  11. $pdf->Cell(0,0,'5',0,1,C);
  12. $pdf->SetXY(-370.5, 37);
  13. $pdf->Cell(0,0,'6',0,1,C);
  14. $pdf->SetXY(-361.5, 37);
  15. $pdf->Cell(0,0,'7',0,1,C);
  16. $pdf->SetXY(-352.5, 37);
  17. $pdf->Cell(0,0,'8',0,1,C);
  18. $pdf->SetXY(-343.5, 37);
  19. $pdf->Cell(0,0,'9',0,1,C);
  20. $pdf->SetXY(-334.5, 37);
  21. $pdf->Cell(0,0,'0',0,1,C);
  22. ?>



No i po kilku godzinach ciężkiej pracy uporałem się z tym tematem.
Trzeba zadeklarować nową klasę i gotowe:
  1. <?php
  2. class Odstepy extends FPDF {
  3.  
  4. function znaki($str,$poczatek,$osY,$skok){
  5. for($i=0;$i<strlen($str);$i++)
  6. {
  7. $odstep_stop = $poczatek+=$skok;
  8. $litera_stop = $str[$i];
  9. $this->SetXY($odstep_stop, $osY);
  10. $this->Cell(0,0,$litera_stop,0,1,C);
  11. }
  12. }
  13. }
  14. ?>


Potem odpowiednio zainicjować:
  1. <?php
  2. $pdf=new Odstepy('L');
  3. ?>


i wywołać funkcję:
  1. <?php
  2. $pdf->znaki($kwota,&#092;"-424.5\",\"37\",\"9\");
  3. ?>


Wszystko pięknie i szybko działa :-)
Piotrwusek
a ktoś może twoją funkcje sprecyzować jak zamieścić bo mi nie idzie
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.