newPage(); } $zrobiona_strona_pdf=True; //zeby nastepne wywolanie wiedzialo ze potrzeba nowej strony; $najwyzszy_y=$wys_strony;//jak nisko zeslismy - aktualizowac po kazdym bloku! //z prawej u gory: data wystawienia, data sprzedazy, termin zaplaty, sposob zaplaty //jesli kroj czcionki inny niz standardowy mozna go zmienic; na koniec bloku wrocic do standardowego! //$pdf->selectFont($_LIB_DIR."$kroj_czcionki_pogrubiony",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); $czcionka=$czcionka_wieksza; $tekst='Data wystawienia: '; $tekst.=date("d.m.Y", $invoice['cdate']); if(($LMS->CONFIG['invoices']['cplace'])!='') $tekst.=', ' . $LMS->CONFIG['invoices']['cplace']; $x=(int) round($szer_strony-1-($pdf->getTextWidth($czcionka,$tekst))); $y=$wys_strony-1; $y=napis($x, $y, $czcionka, $tekst); $tekst='Data sprzedaży: '; $tekst.=date("d.m.Y", $invoice['cdate']); $x=(int) round($szer_strony-1-($pdf->getTextWidth($czcionka,$tekst))); $y=$y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); $tekst='Termin zapłaty: '; $tekst.=date("d.m.Y", $invoice['pdate']); $x=(int) round($szer_strony-1-($pdf->getTextWidth($czcionka,$tekst))); $y=$y-$interlinia;//odsuwamy w dol od ostatniej pozycji o wysokoscnapisu i kawalek $y=napis($x, $y, $czcionka, $tekst); $tekst='Sposób zapłaty: '; if((is_null($invoice['paytype'])) || ($invoice['paytype']=='')) $tekst.='PRZELEW'; else $tekst.=$invoice['paytype']; $x=(int) round($szer_strony-1-($pdf->getTextWidth($czcionka,$tekst))); $y=$y-$interlinia;//odsuwamy w dol od ostatniej pozycji o wysokoscnapisu i kawalek $y=napis($x, $y, $czcionka, $tekst); $czcionka=$czcionka_standardowa; $najwyzszy_y=$y; //z lewej u góry - FAKTURA VAT NR i KOPIA lub ORYGINAŁ $pdf->selectFont($_LIB_DIR."$kroj_czcionki_pogrubiony",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); $czcionka=$czcionka_duza; $tekst=$layout['pagetitle']; $x=1; $y=$wys_strony-1; $y=napis($x, $y, $czcionka, $tekst); $tekst=$type; $x=1; $y=$y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); $y=$y-$interlinia;//wyrownanie do dolu $pdf->selectFont($_LIB_DIR."$kroj_czcionki_standardowy",array('encoding'=>'WinAnsiEncoding','differences'=>$diff));//powrot do normalnej czcionki $najwyzszy_y=($y<$najwyzszy_y)?$y: $najwyzszy_y;//jak nisko juz zeszlismy - nie mozna nic robic wyzej //sprzedawca - TRZEBA ZDEFINIOWAC ADRES W .INI!!! $pdf->selectFont($_LIB_DIR."$kroj_czcionki_pogrubiony",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); $czcionka=$czcionka_wieksza; $tekst='Sprzedawca:'; $x=1; $y=$najwyzszy_y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); $czcionka=$czcionka_standardowa; $x=15;//odsunac troche od brzegu $pdf->selectFont($_LIB_DIR."$kroj_czcionki_standardowy",array('encoding'=>'WinAnsiEncoding','differences'=>$diff));//powrot do normalnej czcionki if(($LMS->CONFIG['invoices']['name'])!='') { $tekst=$LMS->CONFIG['invoices']['name']; $y=$y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); } if( (!is_null($LMS->CONFIG['invoices']['address'])) || (($LMS->CONFIG['invoices']['address'])!='') ) { $tekst=$LMS->CONFIG['invoices']['address']; $y=$y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); } if( (!is_null($LMS->CONFIG['invoices']['zip'])) || (($LMS->CONFIG['invoices']['zip'])!='') ) { $tekst=$LMS->CONFIG['invoices']['zip'] . ' ' . $LMS->CONFIG['invoices']['city']; $y=$y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); } if ((!is_null($LMS->CONFIG['invoices']['nip'])) && ($LMS->CONFIG['invoices']['nip'] != "")) { $tekst='NIP: ' . $LMS->CONFIG['invoices']['nip']; $y=$y-$interlinia; $y=napis($x, $y, $czcionka, $tekst); } $najwyzszy_y=$y; //nabywca - adres do doręczeń jesli jest, else zwykly! $pdf->selectFont($_LIB_DIR."$kroj_czcionki_pogrubiony",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); $czcionka=$czcionka_wieksza; $tekst='Nabywca:'; $x=1; $y=$najwyzszy_y-2*$interlinia; napis($x, $y, $czcionka, $tekst); $y=$y-($pdf->getFontHeight($czcionka)); $czcionka=$czcionka_standardowa; $x=15;//odsunac troche od brzegu $pdf->selectFont($_LIB_DIR."$kroj_czcionki_standardowy",array('encoding'=>'WinAnsiEncoding','differences'=>$diff));//powrot do normalnej czcionki //teraz oddzielic standard od doreczen if($invoice['serviceaddr']!='') { $znak_1=chr(10); $znak_2=chr(13); $tekst=ereg_replace($znak_2, '', $tekst); $tekst=explode($znak_1, $invoice['serviceaddr']); for($i=0;$iselectFont($_LIB_DIR."$kroj_czcionki_pogrubiony",array('encoding'=>'WinAnsiEncoding','differences'=>$diff));//powrot do normalnej czcionki $tekst='Numer Klienta: ' . $invoice['customerid']; $czcionka=$czcionka_wieksza; $x=1; $y=$najwyzszy_y-2*$interlinia; $y=napis($x, $y, $czcionka, $tekst); $pdf->selectFont($_LIB_DIR."$kroj_czcionki_standardowy",array('encoding'=>'WinAnsiEncoding','differences'=>$diff));//powrot do normalnej czcionki $czcionka=$czcionka_standardowa; $najwyzszy_y=$y; //pola tabelki - uwaga zeby sie ilosc pol zgadzala! $lista_opisow=array("Lp.", "Nazwa wyrobu, towaru lub usługi", "PKWiU", "JM", "Ilość", "Cena jedn. netto", "Wartość netto", "Stawka PTU", "Kwota PTU", "Wartość brutto"); $lista_wielkosci_pol=array("15", "240", "30", "30", "30", "100", "35", "30", "35", "35"); $odstep=1; //teraz naglowek tabelki $y=(int)round($najwyzszy_y-2*$interlinia); $czcionka=$czcionka_standardowa; $y=wyswietl_naglowek(1,$y, $czcionka, $odstep, $lista_opisow, $lista_wielkosci_pol); //wiersze tabelki $czcionka=$czcionka_standardowa; //zamiast lista_opisow bedzie lista_tekstow for($lp=0;$lpfilledRectangle($x_lewy, $y_teraz, $suma_szerokosci, $odstep); } $y=wyswietl_fragment_wiersza(1,$y, $czcionka, $odstep, $lista_tekstow, $lista_wielkosci_pol, $napis_luzem); } $najwyzszy_y=$y; //Wystawil: z lewej, mozliwie wysoko $poziom_bazowy=$najwyzszy_y;//przyda sie po prawej $czcionka=$czcionka_wieksza; $tekst='Wystawił:'; $x=1; $y=$najwyzszy_y-2*$interlinia; $y=napis($x, $y, $czcionka, $tekst); $x=15; $czcionka=$czcionka_standardowa; //teraz wyswietlic na okreslonej szerokosci if($LMS->CONFIG['invoices']['default_author']!='') { $znak_1=chr(10); $znak_2=chr(13); $tekst=ereg_replace($znak_2, '', $tekst); $tekst=explode($znak_1, $LMS->CONFIG['invoices']['default_author']); //mamy rozbite na wiersze for($i=0;$iselectFont($_LIB_DIR."$kroj_czcionki_pogrubiony",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); $czcionka=$czcionka_duza; $tekst='Do zapłaty: '; $tekst.=$invoice['total']; $tekst.=' zł'; $x=$szer_strony-1-($pdf->getTextWidth($czcionka, $tekst)); $y=$poziom_bazowy-2*$interlinia; $y=napis($x, $y, $czcionka, $tekst); $czcionka=$czcionka_standardowa; $pdf->selectFont($_LIB_DIR."$kroj_czcionki_standardowy",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); //slownie - z prawej, ponizej do zaplaty $czcionka=$czcionka_wieksza; $tekst='Słownie: '; $calosc=explode('.' , strval($invoice['total'])); $tekst.=to_words($calosc[0]) . ' zł ' . to_words($calosc[1]) . ' gr'; $x=110; $y=$y-$interlinia; $y=napis_o_szerokosci_do_prawej($x, $y, $szer_strony-2-110, $czcionka, $tekst); $czcionka=$czcionka_standardowa; $najwyzszy_y=($y<$najwyzszy_y) ? $y : $najwyzszy_y;//jak nisko juz zeszlismy - nie mozna nic robic wyzej //i uwagi na dole na srodku, i voila! //na srodku=od lewej i na szerokosci strony $pdf->selectFont($_LIB_DIR."$kroj_czcionki_standardowy",array('encoding'=>'WinAnsiEncoding','differences'=>$diff)); $czcionka=$czcionka_standardowa; $x=1; $y=$najwyzszy_y-2*$interlinia; if($LMS->CONFIG['invoices']['footer']!='') { $znak_1=chr(10); $znak_2=chr(13); $tekst=ereg_replace($znak_2, '', $tekst); $tekst=explode($znak_1, $LMS->CONFIG['invoices']['footer']); //mamy rozbite na wiersze for($i=0;$i