第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用不同方向時(shí),mPDF 在 TOC 后創(chuàng)建空白頁

使用不同方向時(shí),mPDF 在 TOC 后創(chuàng)建空白頁

PHP
胡說叔叔 2021-06-29 04:35:14
我正在嘗試通過工作mPDF表具有以下方向的位置創(chuàng)建 PDF 文件:___________| Page 1   ||          || Portrait ||          |______________________| Page 2   ||  TOC     || Portrait ||          |_____________________________| Page 3          || Landscape       ||                 |_____________________________| Page 4   ||          || Portrait ||          |___________但是,更改第 3 頁的方向會(huì)使 mPDF 在第 2 頁 (TOC) 和第 3 頁之間創(chuàng)建一個(gè)空白頁。PDF 以 HTML 格式創(chuàng)建,然后處理為 mPDF。代碼如下:HTML:<html><head>    <style>        @page page-landscape { size: landscape; }        @page page-portrait { size: portrait; }        div.landscape {            page: page-landscape;        }        div.portrait {            page: page-portrait;        }    </style></head><body>    <div>        <div>First page - displayed Portrait. The second page should be the TOC (portrait) and the 3rd should be on landscape</div>    </div>    <tocpagebreak />    <div class="landscape">       <bookmark content="TOC entry" level="0"/>        <tocentry content="TOC entry" level="0"/>        <p>TOC entry - Shouldn\'t have a empty page before</p>    </div>    <div class="portrait">        another page    </div></body></html>PHP$mpdf = new \Mpdf\Mpdf();$mpdf->WriteHTML($html);$mpdf->Output();我已經(jīng)嘗試了很多方法來完成這項(xiàng)工作,但沒有成功。我將列出其中一些:使用toc-selector="page-portrait"的<tocpagebreak>標(biāo)簽使用toc-orientation="P"的<tocpagebreak>標(biāo)簽在<pagebreak orientation="L" />后面加一個(gè)<tocpagebreak>使用class="landscape"在div所述TOC后,使用所述@page選擇器,如本例所示變量設(shè)置autoPageBreak到false上MPDF的構(gòu)造將頁面包裹起來div并弄亂位置<pagebreak>我使用的是 mPDF v6.0,現(xiàn)在我正在更新到 mPDF v8.0.1。此問題發(fā)生在所有版本(6、7 和 8)上。在第 6 版中,我通過添加$mpdf->DeletePages(2);after使用了 hack,$mpdf->WriteHTML($html);但這有兩個(gè)主要問題:這種方法沒有記錄,似乎有問題有了這個(gè),頁碼與正確的頁面不匹配,所以我無法在頁腳上添加頁碼有沒有辦法在沒有空白頁的情況下完成此操作?還是可行的解決方法?
查看完整描述

2 回答

?
侃侃無極

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊

我正在使用問題中的代碼并更新它以在 pdf 中的 TOC 之后生成沒有空頁的 pdf。

此處給出TOCpagebreak 將始終從奇數(shù)頁碼開始。此外,mpdf存在一個(gè)問題,它在 TOC 頁之后添加了一個(gè)空白頁。

我把html代碼分成兩部分,刪除TOC后的空白頁,得到最終的pdf。

php中的代碼是:


require_once __dir__.'/vendor/autoload.php';



$html = '<html>

<head>

    <style>

        @page page-landscape { size: landscape; }

        @page page-portrait { size: portrait; page-break-inside:avoid; }


        div.landscape {

            page: page-landscape;

        }

        div.portrait {

            page: page-portrait;

        }


    </style>

</head>

<body>

    <div>

        <div>First page - displayed Portrait. The second page should be the TOC (portrait) and the 3rd should be on landscape</div>

    </div>


<tocpagebreak />';


$mpdf = new \Mpdf\Mpdf();


$mpdf->WriteHTML($html);

$page = $mpdf->page;



$html2= '<div class="portrait" style="page-break:avoid !important;">

       <bookmark content="TOC entry" level="0"/>

        <tocentry content="TOC entry" level="0"/>

        <p>TOC entry - Shouldn\'t have a empty page before</p>

    </div>


    <div class="landscape">

        another page

    </div>

</body>

</html>';



$mpdf->WriteHTML($html2);

$mpdf->DeletePages($page);

$mpdf->Output();


查看完整回答
反對(duì) 回復(fù) 2021-07-02
  • 2 回答
  • 0 關(guān)注
  • 312 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)