在 phpword 中一行有多种颜色的文本?

one line with multiple color text in phpword?

有什么方法可以像这样在同一行中写不同颜色的文本,但它会改变整行颜色?

我希望我的台词像这样:

这是我的代码:

$section->addText( 'Headline: ', (array('color'=>'#70AD47')),$fontStyleIndexPara);
            $section->addText(cleanstring($data[$k]['ArticleTitle']),$fontStyleIndexPara);
           `

是的,你可以使用类似的东西:

$sentence='Your text in this sentence the two first word will get the stylefont while the rest will get the stylefont2';
$word_arr=explode(' ', $sentence);

$phpWord->addParagraphStyle('p3Style',array('align'=>'center'));
$c = 0;
$textrun = $section->addTextRun(array('align' => 'center'));
for($i = 0; $i < count($word_arr); $i++)
{
    $c++;
    if($c < 2)
    {
        $textrun->addText($word_arr[$i].' ', $styleFont);
    }
    else
    {
        $textrun->addText($word_arr[$i].' ', $styleFont2);
    }
}

不要使用 addText() 将各个文本部分直接写入节中,而是使用 addTextRun() 将其括起来。

通过使用 addTextRun() 可以防止换行。

您的示例代码:

$TextRun = $section->addTextRun();
$TextRun->addText( 'Headline: ', array('color'=>'70AD47'));
$TextRun->addText(cleanstring($data[$k]['ArticleTitle']));

颜色不使用#