【问题标题】:PhpWord: How to create a new paragraph with border and background color?PhpWord:如何创建带有边框和背景颜色的新段落?
【发布时间】:2016-03-18 05:23:36
【问题描述】:

我正在尝试使用PhpWord library 创建一个整洁的 Word 文档。不幸的是,文档似乎不完整。我想要有边框和背景颜色的段落,跨越整个页面宽度。我做了一些研究,发现 addText 方法没有记录的属性borderSize和borderColor。还有一个可以在文本上设置的 bgColor 属性。下面的示例创建一个用边框包围的段落。文本也有一些背景颜色,但它只是文本,而不是边框​​包围的整个区域。不幸的是,属性 bgColor 对段落级别没有任何影响。

有人知道如何实现这一目标吗?

use \PhpOffice\PhpWord\IOFactory;
$document = new \PhpOffice\PhpWord\PhpWord();
$titlepage = $document->createSection();
$titlepage->addText('My Title', 
    array("size" => 24, "color" => "FF0000", "bgColor"=>"00FF00"),
    array("borderSize"=>6, "borderColor"=>"0000FF")
);
$objWriter = IOFactory::createWriter($document, 'Word2007');

【问题讨论】:

    标签: php background border phpword phpoffice


    【解决方案1】:

    我是看源码才知道的:

    如果要设置段落背景颜色,则必须设置段落样式的底纹:

    $section->addText('Your text', array(), array('shading' => array('fill' => 'dddddd')));
    

    段落样式的背景颜色设置为阴影的填充。

    据我所知,您必须阅读 PhpWord API

    http://phpoffice.github.io/PHPWord/docs/master/classes/PhpOffice.PhpWord.Style.Shading.html

    和/或 docx 规范

    http://officeopenxml.com/WPshading.php

    为“阴影”找到正确的参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-27
      • 1970-01-01
      • 2012-04-30
      • 1970-01-01
      • 2015-04-21
      • 1970-01-01
      • 2011-08-25
      • 1970-01-01
      相关资源
      最近更新 更多