PHPWord를 만져봤어요.

8756 단어 PHPphpword

PHPWord를 만져봤어요.


PHPOffice에는 PHPExcel 외에 PHPWord와 PHPPowerpoint가 있다는 것을 아십니까?
어쨌든 나는 그중에서 PHPWord를 만졌다.

가져오기


README에 따라 진행합니다.
composer.json
{
    "require": {
       "phpoffice/phpword": "dev-master"
    }
}

그리고설치 완료

써 보다

<?php
require_once 'vendor/autoload.php';
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
//文字
$section->addText(
    'ほげほげほげたろー',
    array('name' => 'MS ゴシック', 'size' => 20, 'color' => '66FFFF', 'bold' => true)
);
//改行
$section->addText(
    'ほげほげほげたろー',
    array('name' => 'MS ゴシック', 'size' => 20, 'color' => '66FFFF', 'bold' => true, 'italic' => true, 'underline' => 'dash')
);

//てーぶる
$tableStyle = array(
    'borderColor' => '006699',
    'borderSize' => 6,
    'cellMargin' => 50
);
$table = $section->addTable($tableStyle);
$table->addRow();
$table->addCell(2000, array('bgColor' => 'FFFF66'))->addText('あああ');
$table->addCell(2000, array('bgColor' => 'FF6666'))->addText('いいい');

$table->addRow();
$table->addCell(2000, array('bgColor' => '66FF66'))->addText('ううう');
$table->addCell(2000, array('bgColor' => '6666FF'))->addText('えええ');
//画像
$section->addImage('test.jpg');

// Saving the document as OOXML file...
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('helloWorld.docx');
이렇게 되면 우선 몇 글자를 쓸 수 있을 거야!

총결산


상술한 예에서 템플릿은 없지만 템플릿도 사용할 수 있다.
또 온라인에서도 일본어를 지원하지 않는다는 기사가 많이 나오지만, 지금은 일반화되어 일본어도 PHPWord를 직접 사용할 수 있게 됐다.
미세한 조정은 어렵지만 템플릿에 수치 등 대응 범위를 삽입할 수 있다면 문제없이 사용할 수 있습니다!

추기


PDF가 안 나온다고 해서 해봤어요.
//tcpdfのダウンロードが必要
\PhpOffice\PhpWord\Settings::setPdfRendererPath('./tcpdf');
\PhpOffice\PhpWord\Settings::setPdfRendererName('TCPDF');

$objWriter2 = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'PDF');
$objWriter2->SetFont('kozminproregular', '', 12);// 日本語フォント
$objWriter2->save('helloWorld.pdf');
그럼 먼저 할게요.
tcpdf
다만, 책상의 배경색과 이미지 등은 빼내지 못했다.

어쩌면 PDF 변환 도구를 다른 것으로 바꾸면 더 예쁠 수도 있지만 그럴 수 없는 것도 아니다.

좋은 웹페이지 즐겨찾기