Мне было интересно, есть ли способ выделить некоторые слова на линии. Например, если бы я хотел, чтобы каждое третье слово выделено жирным шрифтом, как бы я это сделал. В настоящее время я использую addText, но для этого требуется, чтобы вся строка была полужирным или не жирным. Любые ответы будут высоко оценены.PHPWord смелые определенные слова на строке
5
A
ответ
4
Вам нужно будет использовать метод 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);
}
}
Вы можете настроить его, чтобы получить то, что вы хотите, но, в основном, путем использования упомянутого метода, можно получить разные стили в одной строке.
Спасибо, что это помогло! – user2579723
Я быстро выполнил все, что вам нужно, вы можете найти его здесь -> http://pastebin.com/qDMcsivW – Jake
Кто-нибудь знает, может ли встроенное форматирование применяться и при использовании addListItem() для маркированного текста? –