簡體   English   中英

關於使用php和fpdf庫創建pdf文件中的頁腳問題

[英]Regarding footer issue in pdf file creation using php and fpdf library

  • 我已經使用fpdf庫支持在php中創建並成功創建了pdf文件。

  • 但是問題是我的頁腳顯示了更多的空間。

  • 我想減少文本下方的空間。 我的輸出是這樣的: 輸出

我的代碼在這里:

<?php
    require('fpdf/fpdf.php'); 
    class PDF extends FPDF {


                function Header() {
                            $this->SetY(0.208333);
                        }
                function Footer() {
                                 if ($this->footer <> 1)
                                 {
                                $this->SetY(-15);
                             }
                             else
                             {
                                echo "bye";
                             }
                        }
    }

                        //class instantiation
                        $pdf=new PDF("l","in",array(8.5,4.17));
                            $pdf->SetFont('Arial','',8);
                            $pdf->footer = -15;
                            //Array2
                            $datas = array
                                    (
                                    'Address1' => array
                                    (
                                    'Name' => 'Vijaya',
                                    'Area' => 'Valasaravakkam',
                                    'City' => 'Chennai',
                                    ),
                                    'Address2' => array
                                    (
                                    'Companyname' => 'Vy Systems',
                                    'Area' => 'Valasaravakkam',
                                    'City' => 'Chennai',
                                    ),
                                    'Address3' => array
                                    (
                                    'Companyname' => 'Vy Systems1',
                                    'Area' => 'Valasaravakkam1',
                                    'City' => 'Chennai1',
                                    ),
                                    );
                            //Array2
                            $datas1 = array
                                    (
                                    'Address4' => array
                                    (
                                    'Name' => 'Jaya',
                                    'Area' => 'Valasaravakkam',
                                    'City' => 'Chennai',
                                    ),
                                    );

                            foreach($datas1 as $address1 => $details1)
                            {
                                //pdf_set_text_pos($pdf, 1240, 490);
                                //$pdf->ln(1);

                                    foreach($datas as $address => $details)
                                    {
                                        $pdf->SetMargins(0,0,0.3);
                                        $pdf->AddPage();
                                        if((is_array($details)) and (is_array($details1)))
                                        {
                                            foreach($details1 as $rows1 => $value1)
                                            {
                                                $pdf->SetX(0.520833);
                                                $pdf->MultiCell(0, 0.2, $value1, 0, "L");
                                            }
                                            $pdf->ln(1.96);
                                            foreach($details as $rows => $value)
                                            {
                                                $pdf->SetX(5);
                                                $pdf->MultiCell(5, 0.2, $value, 0, "L");
                                            }
                                        }

                                    }//end of sub foreach
                            }//end of main foreach

                        $pdf->Output();
?>

我沒有完全遵循代碼,但是似乎您正在使用Header和Footer方法來設置Y,僅此而已,希望這足以將輸出的MultiCell正確地放置在Header和Footer之外。 也許是這樣,但是在頁眉/頁腳內部和外部定位的交互作用尚未很好定義。

例如,該過程可能是這樣的:為MultiCell計算Y,跳出頁腳,頁腳更改Y,輸出MultiCell。 這是原始的Y,是修改后的(由頁腳Y)還是其他一些值? 缺少對發生情況的精確定義,您已經設置了一系列復雜的事情,很難對它們進行梳理。

我建議大大簡化代碼。 您可能會發現,頁眉/頁腳自動跳動根本沒有幫助。 在這種情況下,請關閉自動分頁符,放棄頁腳/頁眉功能,然后完全控制每個頁面。 這樣,至少您對所發生的事情有了清晰,可靠的模型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM