Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]Nowa funkcja do klasy FPDF i problemy.
kubara
post 11.07.2004, 00:26:15
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.07.2004

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


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 :-)

Ten post edytował Cysiaczek 11.10.2007, 07:27:18
Powód edycji: dodalem tag (cysiaczek)
Go to the top of the page
+Quote Post
Piotrwusek
post 10.10.2007, 17:15:09
Post #2





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


a ktoś może twoją funkcje sprecyzować jak zamieścić bo mi nie idzie

Ten post edytował Piotrwusek 10.10.2007, 18:04:54
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: 7.07.2025 - 20:23