2013-07-13 61 views
5

我想知道是否有辦法在行上加粗某些詞。例如,如果我想讓一行中的每一個字都加粗,我該怎麼做。我目前使用addText,但需要整行加粗或不加粗。任何答覆將不勝感激。PHPWord在某行上加粗某些詞

回答

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); 
    } 
} 

你可以調整它得到你想要的東西,但是,基本上,使用上述方法的,有可能在同一行中獲得不同的樣式。

+0

謝謝你的幫助! – user2579723

+1

我做了一個快速的功能來做你需要的東西,你可以在這裏找到它 - > http://pastebin.com/qDMcsivW – Jake

+0

有沒有人知道在使用addListItem()作爲項目符號文本時是否可以應用內聯格式? –