溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

laravel 使用 phpword使用說明

發(fā)布時間:2020-10-22 20:29:20 來源:網(wǎng)絡(luò) 閱讀:9609 作者:阿澤Aze 欄目:web開發(fā)

                                                                 laravel 使用 phpword使用說明

1 . 安裝環(huán)境

必須安裝

  1. 》=PHP 5.3.3 +

  2. XML Parser extension

  3. Zend\Escaper component

  4. Zend\Stdlib component

  5. Zend\Validator component

選擇性安裝:

  1. Zip extension (Template模板需要的擴(kuò)展)

  2. GD extension

  3. XMLWriter extension

  4. XSL extension

  5. dompdf library

注意:

1.phpword里面的 單位:twips.它是開源辦公軟件中最基本的計量單位,“緹”是"TWentieth of an Inch Point"的簡寫,意思 1/20磅,與其他常用劑量單位的換算是1緹=1/1,440英寸,1緹=1/567厘米,1緹=1/15像素

2 .zip擴(kuò)展可以通過  sudo apt-get install php7.1-zip 來進(jìn)行安裝。

2.composer 安裝依賴

項目composer直接新增依賴

"require": {

"phpoffice/phpword": "v0.13.*"

}

進(jìn)行comoser update(composer版本過低 用 composer self-update)

3.使用方法

(1)加載phpword類
$PHPWord =  new \PhpOffice\PhpWord\PhpWord();
(2)設(shè)置樣式
$PHPWord->addFontStyle( $styleName, $fontStyle);
(3)添加頁面
$section = $PHPWord->addSection();
(4)添加文本
$section->addText( $text, [$fontStyle], [$paragraphStyle] );
(5)添加標(biāo)題
$section->addTitle( $text, [$depth] );
(6)添加換行符
$section->addTextBreak();
(7)添加列表
$section->addListItem();
(8)添加超鏈接
$section->addLink( $linkSrc, [$linkName], [$styleFont], [$styleParagraph]);
(9)添加圖片
$section->addImage( $src, [$style] );//參數(shù)二樣式只能傳數(shù)組,如
['width'=>350, 'height'=>350, 'align'=>'center']
(10)添加表格
$table = $section->addTable( [$tableStyle] );
//添加行
$table->addRow( [$height] );
//添加單元格
$cell = $table->addCell(h, [$cellStyle]);
(11)添加文檔頁眉
$header = $section->createHeader();
(12)添加文檔頁腳
$footer = $section->createFooter();
(13)加載模版文檔
$template = $PHPWord->loadTemplate('Template.docx');
//設(shè)置替換值 (只能替換純文本)
$template->setValue('Name', 'Somebody someone');
$template->setValue('Street', 'Coming-Undone-Street 32');
被搜索替換的標(biāo)簽格式為: ${YOUR_SEARCH_PATTERN}
(14)docx轉(zhuǎn)pdf
//加載docx文檔
$phpWord = \PhpOffice\PhpWord\IOFactory::load('results/Sample_07_TemplateCloneRow.docx');
// 保存pdf文檔
$xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, "PDF");
$xmlWriter->save("results/Sample_07_TemplateCloneRow.pdf");

這里只列舉常用的幾個函數(shù),其他可以參考下官方文檔。

4. 代碼例子:

        $phpWord = new \PhpOffice\PhpWord\PhpWord();
        // 新的頁面
        $section = $phpWord->addSection();
        // 簡單文本
        $section->addTitle('CA重慶起止-阿聯(lián)酋7天5晚', 1);
        $section->addText('阿拉伯聯(lián)合酋長國(The United Arab Emirates),簡稱為阿聯(lián)酋,位于阿拉伯半島東部,北瀕波斯灣,西北與卡塔爾為鄰,西和南與沙特阿拉伯交界,東和東北與阿曼毗連海岸線長734公里,總面積83600平方公里,首都阿布扎比。!');
        // 兩個換行符
        $section->addTextBreak(2);
        $section->addText('第一天:請各位貴賓出發(fā)當(dāng)日15:30于重慶江北國際機(jī)場集中,搭乘中國國際航空公司下午航班(CA451(1840/2215))前往迪拜。抵達(dá)后迪拜國際機(jī)場,照×××后(無須填入境卡)入境(過關(guān)時間約1.5小時)中文導(dǎo)游接機(jī),后前往酒店入住休息');
  
        $section->addTextBreak();
        //超鏈接
        $section->addLink('http://keketour.me', '可可兔首頁超鏈接');
        $section->addTextBreak();
        // 圖片
        $section->addImage('http://img.keketour.comme/M00/00/06/CeT6ddHtg142.jpg', array('width'=>300, 'height'=>300));
        // 保存文件
        $writers = array('Word2007' => 'docx', 'ODText' => 'odt', 'RTF' => 'rtf', 'HTML' => 'html');
        write($phpWord,'demo1', $writers);

docx文檔效果:

laravel 使用 phpword使用說明


html網(wǎng)頁效果:

laravel 使用 phpword使用說明


git地址:https://github.com/PHPOffice/PHPWord.git


參考資料:http://phpword.readthedocs.io/en/latest



向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI