Sono un neofita sul php ed ho scritto questo codice per leggere un txt e creare un pdf.
Non riesco ad effettuare il salto pagina mi potreste dire come deve essere fatto?
Inoltre ho la necessita' di creare piu' pagine nello stesso pdf come quale e' il comando per crearle?
Inoltre dopo aver creato il PDF, lo devo stampare. Per ogni pagina devo stampare due copie e inviarlo alla stampante come devo fare?
Ringrazio e saluto chi mi puo' essere di aiuto.
// Impostiamo un nuovo documento pdf
$pdf = pdf_new();
// Apriamo e settiamo il nome del file
pdf_open_file($pdf, "miapagina.pdf");
// impostiamo la nuova pagina (A4)
// specificandone larghezza e altezza
pdf_begin_page($pdf, 595, 842);
// Prepariamo ed usiamo un carattere (Arial)
$font = pdf_findfont($pdf, "Courier New", "host", 1); pdf_setfont($pdf, $font, 9);
$totaleimponibile=0;
$totaleimposta=0;
$appo='';
$piede = "Rif. scontr. n. cassa n. del";
$piede1 = "Matr. n. Lo";
$piede2 = "DESTINATARIO";
$npag=0;
$fi = @fopen("c:\\confront\\stpfatt\\XXXX.txt", "r");
$count=0;
$riga=12;
While (!feof($fi)) {
$rigi = fgets($fi,140);
$count++;
$rsc = substr($rigi,84,12);
switch($count) {
case 10:
$numfat = substr($rigi,47,10);
break;
case 11:
$intesta = substr($rigi,63,30);
break;
case 12:
$data = substr($rigi,2,10);
$numcli = substr($rigi,53,4);
$intesta1 = substr($rigi,63,30);
break;
case 13:
$ristampa = substr($rigi,47,9);
$indirizzo = substr($rigi,63,35);
break;
case 14:
$citta = substr($rigi,63,20);
$ivacodf = substr($rigi,2,45);
break;
case 15:
$cap = substr($rigi,63,20);
case 17:
$lpart = substr($rigi,2,45);
break;
case 19:
$ldest = substr($rigi,63,22);
break;
case 20:
$aspetto = substr($rigi,2,24);
$colli = substr($rigi,50,2);
break;
}
if ($rsc=='Rif. scontr.'){
$npag++;
}
}
$fi = @fopen("c:\\confront\\stpfatt\\XXXX.txt", "r");
for ($x=1;$x<=$npag;$x++) {
pdf_show_xy($pdf,$numfat, 210, 740);
pdf_show_xy($pdf,$intesta, 296, 736);
pdf_show_xy($pdf,$data, 20, 718);
pdf_show_xy($pdf,$x, 168, 720);
pdf_show_xy($pdf,$numcli, 215, 715);
pdf_show_xy($pdf,$intesta1, 296, 724);
pdf_show_xy($pdf,$ristampa, 487, 727);
pdf_show_xy($pdf,$indirizzo, 296, 714);
pdf_show_xy($pdf,$citta, 296, 703);
pdf_show_xy($pdf,$ivacodf, 20, 690);
pdf_show_xy($pdf,$cap, 296, 689);
pdf_show_xy($pdf,$lpart, 20, 650);
pdf_show_xy($pdf,$ldest, 296, 615);
pdf_show_xy($pdf,$aspetto, 20, 617);
pdf_show_xy($pdf,$colli, 217, 616);
pdf_show_xy($pdf,$piede, 355, 200);
pdf_show_xy($pdf,$data, 540, 200);
pdf_show_xy($pdf,$piede1, 355, 180);
pdf_show_xy($pdf,$piede2, 388, 92);
$rigi = fgets($fi,140);
$cost = substr ($rigi,80,4);
while ($cost<>'ZZZZ') {
$rigi = fgets($fi,140);
$cost = substr ($rigi,80,4);
}
$sepa = substr($rigi,39,1);
$riga=585;
while ($rigi<>'') {
$imponibile = substr($rigi,35,7);
$part = substr($rigi,2,1);
$umisura = substr($rigi,63,2);
$articolo = substr($rigi,2,34);
$pezzi = substr($rigi,74,14);
$cost = substr ($rigi,80,4);
$prezzo = substr($rigi,97,6);
$importo = substr($rigi,119,7);
$iva = substr($rigi,135,4);
$scontrn = substr($rigi,85,15);
$cassan = substr($rigi,109,18);
$dtpiede = substr($rigi,127,14);
$matricola = substr($rigi,85,12);
$dest = substr($rigi,84,12);
$stp = substr($rigi,80,3);
if ($stp=='ZZZ') {
pdf_show_xy($pdf,$articolo, 20, $riga);
pdf_show_xy($pdf,$umisura, 285, $riga);
pdf_show_xy($pdf,$pezzi, 310, $riga);
pdf_show_xy($pdf,$prezzo, 390, $riga);
pdf_show_xy($pdf,$importo, 510, $riga);
pdf_show_xy($pdf,$iva, 570, $riga);
}
$riga=$riga-5;
$rigi = fgets($fi,140);
$sepa = substr($rigi,39,1);
if ($sepa==','){
$rigo=$rigi;
$rigi='';
}
}
$riga=170;
if ($x==$npag){
for ($i=1;$i<=4;$i++) {
$imponibile = substr($rigo,35,7);
$aliva = substr($rigo,53,4);
$imposta = substr($rigo,69,6);
pdf_show_xy($pdf,$imponibile, 148, $riga);
pdf_show_xy($pdf,$aliva, 230, $riga);
pdf_show_xy($pdf,$imposta, 280, $riga);
$rigo = fgets($fi,140);
$riga=$riga-10;
}
for ($i=1;$i<=7;$i++) {
$rigo = fgets($fi,140);
}
$totimpos = substr($rigo,32,7);
$totimon = substr($rigo,67,7);
$totale = substr($rigo,112,7);
pdf_show_xy($pdf,$totimpos, 148, 65);
pdf_show_xy($pdf,$totimon, 280, 65);
pdf_show_xy($pdf,$totale, 450, 65);
}
$pdf->AddPage('', true, 2);
}
@fclose($fi);
// chiudiamo la pagina
pdf_end_page($pdf);
// chiudiamo e salviamo il file
pdf_close($pdf);
?>
Non riesco ad effettuare il salto pagina mi potreste dire come deve essere fatto?
Inoltre ho la necessita' di creare piu' pagine nello stesso pdf come quale e' il comando per crearle?
Inoltre dopo aver creato il PDF, lo devo stampare. Per ogni pagina devo stampare due copie e inviarlo alla stampante come devo fare?
Ringrazio e saluto chi mi puo' essere di aiuto.
// Impostiamo un nuovo documento pdf
$pdf = pdf_new();
// Apriamo e settiamo il nome del file
pdf_open_file($pdf, "miapagina.pdf");
// impostiamo la nuova pagina (A4)
// specificandone larghezza e altezza
pdf_begin_page($pdf, 595, 842);
// Prepariamo ed usiamo un carattere (Arial)
$font = pdf_findfont($pdf, "Courier New", "host", 1); pdf_setfont($pdf, $font, 9);
$totaleimponibile=0;
$totaleimposta=0;
$appo='';
$piede = "Rif. scontr. n. cassa n. del";
$piede1 = "Matr. n. Lo";
$piede2 = "DESTINATARIO";
$npag=0;
$fi = @fopen("c:\\confront\\stpfatt\\XXXX.txt", "r");
$count=0;
$riga=12;
While (!feof($fi)) {
$rigi = fgets($fi,140);
$count++;
$rsc = substr($rigi,84,12);
switch($count) {
case 10:
$numfat = substr($rigi,47,10);
break;
case 11:
$intesta = substr($rigi,63,30);
break;
case 12:
$data = substr($rigi,2,10);
$numcli = substr($rigi,53,4);
$intesta1 = substr($rigi,63,30);
break;
case 13:
$ristampa = substr($rigi,47,9);
$indirizzo = substr($rigi,63,35);
break;
case 14:
$citta = substr($rigi,63,20);
$ivacodf = substr($rigi,2,45);
break;
case 15:
$cap = substr($rigi,63,20);
case 17:
$lpart = substr($rigi,2,45);
break;
case 19:
$ldest = substr($rigi,63,22);
break;
case 20:
$aspetto = substr($rigi,2,24);
$colli = substr($rigi,50,2);
break;
}
if ($rsc=='Rif. scontr.'){
$npag++;
}
}
$fi = @fopen("c:\\confront\\stpfatt\\XXXX.txt", "r");
for ($x=1;$x<=$npag;$x++) {
pdf_show_xy($pdf,$numfat, 210, 740);
pdf_show_xy($pdf,$intesta, 296, 736);
pdf_show_xy($pdf,$data, 20, 718);
pdf_show_xy($pdf,$x, 168, 720);
pdf_show_xy($pdf,$numcli, 215, 715);
pdf_show_xy($pdf,$intesta1, 296, 724);
pdf_show_xy($pdf,$ristampa, 487, 727);
pdf_show_xy($pdf,$indirizzo, 296, 714);
pdf_show_xy($pdf,$citta, 296, 703);
pdf_show_xy($pdf,$ivacodf, 20, 690);
pdf_show_xy($pdf,$cap, 296, 689);
pdf_show_xy($pdf,$lpart, 20, 650);
pdf_show_xy($pdf,$ldest, 296, 615);
pdf_show_xy($pdf,$aspetto, 20, 617);
pdf_show_xy($pdf,$colli, 217, 616);
pdf_show_xy($pdf,$piede, 355, 200);
pdf_show_xy($pdf,$data, 540, 200);
pdf_show_xy($pdf,$piede1, 355, 180);
pdf_show_xy($pdf,$piede2, 388, 92);
$rigi = fgets($fi,140);
$cost = substr ($rigi,80,4);
while ($cost<>'ZZZZ') {
$rigi = fgets($fi,140);
$cost = substr ($rigi,80,4);
}
$sepa = substr($rigi,39,1);
$riga=585;
while ($rigi<>'') {
$imponibile = substr($rigi,35,7);
$part = substr($rigi,2,1);
$umisura = substr($rigi,63,2);
$articolo = substr($rigi,2,34);
$pezzi = substr($rigi,74,14);
$cost = substr ($rigi,80,4);
$prezzo = substr($rigi,97,6);
$importo = substr($rigi,119,7);
$iva = substr($rigi,135,4);
$scontrn = substr($rigi,85,15);
$cassan = substr($rigi,109,18);
$dtpiede = substr($rigi,127,14);
$matricola = substr($rigi,85,12);
$dest = substr($rigi,84,12);
$stp = substr($rigi,80,3);
if ($stp=='ZZZ') {
pdf_show_xy($pdf,$articolo, 20, $riga);
pdf_show_xy($pdf,$umisura, 285, $riga);
pdf_show_xy($pdf,$pezzi, 310, $riga);
pdf_show_xy($pdf,$prezzo, 390, $riga);
pdf_show_xy($pdf,$importo, 510, $riga);
pdf_show_xy($pdf,$iva, 570, $riga);
}
$riga=$riga-5;
$rigi = fgets($fi,140);
$sepa = substr($rigi,39,1);
if ($sepa==','){
$rigo=$rigi;
$rigi='';
}
}
$riga=170;
if ($x==$npag){
for ($i=1;$i<=4;$i++) {
$imponibile = substr($rigo,35,7);
$aliva = substr($rigo,53,4);
$imposta = substr($rigo,69,6);
pdf_show_xy($pdf,$imponibile, 148, $riga);
pdf_show_xy($pdf,$aliva, 230, $riga);
pdf_show_xy($pdf,$imposta, 280, $riga);
$rigo = fgets($fi,140);
$riga=$riga-10;
}
for ($i=1;$i<=7;$i++) {
$rigo = fgets($fi,140);
}
$totimpos = substr($rigo,32,7);
$totimon = substr($rigo,67,7);
$totale = substr($rigo,112,7);
pdf_show_xy($pdf,$totimpos, 148, 65);
pdf_show_xy($pdf,$totimon, 280, 65);
pdf_show_xy($pdf,$totale, 450, 65);
}
$pdf->AddPage('', true, 2);
}
@fclose($fi);
// chiudiamo la pagina
pdf_end_page($pdf);
// chiudiamo e salviamo il file
pdf_close($pdf);
?>