7

我想知道是否有办法在一行上加粗某些单词。例如,如果我想在一行粗体上每隔三个单词,我会怎么做。我目前正在使用 addText 但这需要整行加粗或不加粗。任何回应将不胜感激。

4

1 回答 1

7

您将需要使用 createTextRun() 方法。我已经尝试使用Text.php文件Examples夹中的文件,这是与您的问题相关的代码:

$textrun = $section->createTextRun();
$sentence='I am sentence, and every third word will be bold. This is bold.';
$word_arr=explode(' ', $sentence);

$styleFont = array('bold'=>true, 'size'=>16, 'name'=>'Calibri');
$styleFont2 = array('bold'=>false, 'size'=>16, 'name'=>'Calibri');

$c = 0;
for($i = 0; $i < count($word_arr); $i++) 
{
    $c++;
    if($c % 3 == 0) 
    {
        $textrun->addText($word_arr[$i].' ', $styleFont);
    }
    else 
    {
        $textrun->addText($word_arr[$i].' ', $styleFont2);
    }
}

你可以调整它以获得你想要的,但是,基本上,通过使用提到的方法,可以在同一行中获得不同的样式。

于 2013-07-13T19:19:49.787 回答