如何将文本大小调整与页脚粗体结合?

时间:2016-11-24 17:31:57

标签: php phpword

我可以在页脚中替换粗体和普通文本(感谢ejuhjav),但前提是我没有尝试设置文本样式。

在以下示例中,字母“T'出现粗体,因为它是默认大小(12)。

如果我缩小文本,则会删除粗体。我也尝试使用命名字体样式并创建字体样式对象。没有运气。

我有什么简单的遗失吗?

// create footer
$footer = $section->addFooter();
$textrun = $footer->addTextRun();

// define bold style
$boldFontStyleName = 'BoldText';
$phpWord->addFontStyle($boldFontStyleName, array('bold' => true));

// add content
$textrun->addText('T', $boldFontStyleName);
$textrun->addText(' ++353 1 555 0001 ',  
    array('name' => 'Helvetica', 'size' => 8));
$textrun->addText('E',   
    array('name' => 'Helvetica', 'size' => 8),  $boldFontStyleName);
$textrun->addText(' abc.def@ghk.ie ',  
    array('name' => 'Helvetica', 'size' => 8));
$textrun->addText('W',   
    array('name' => 'Helvetica', 'size' => 8),  $boldFontStyleName);
$textrun->addText(' abcd.ie/wxz',  
    array('name' => 'Helvetica', 'size' => 8));

1 个答案:

答案 0 :(得分:1)

然后这是第三次:)

addText函数定义是:

addText(string $text, mixed $fStyle = null, mixed $pStyle = null)

即。字体样式与第二个参数一起给出,因此您将$boldFontStyleName变量作为第三个属性的行不是粗体。

解决此问题的最简单方法是定义几种其他字体样式:

// create footer
$footer = $section->addFooter();
$textrun = $footer->addTextRun();

// define font styles
$boldFontStyleName = 'BoldText';
$phpWord->addFontStyle($boldFontStyleName, array('bold' => true));

$smallFontStyleName = 'smallText';
$phpWord->addFontStyle($smallFontStyleName, array(
    'name' => 'Helvetica',
    'size' => 8,
));

$boldSmallFontStyleName = 'BoldSmallText';
$phpWord->addFontStyle($boldSmallFontStyleName, array(
    'bold' => true,
    'name' => 'Helvetica',
    'size' => 8,
));

// add content
$textrun->addText('T', $boldFontStyleName);
$textrun->addText(' ++353 1 555 0001 ', $smallFontStyleName); 
$textrun->addText('E', $boldSmallFontStyleName);
$textrun->addText(' abc.def@ghk.ie ', $smallFontStyleName);
$textrun->addText('W', $boldSmallFontStyleName);
$textrun->addText(' abcd.ie/wxz', $smallFontStyleName);