Reputation: 389
I am creating word file using PHPWord. I want to create list with paragraph style. To do so I am following PHPWord code standards.
My code to create featured list:-
$listItemRun = $section->addListItemRun();
foreach($li['li'] as $element){
if(isset($element['strong']) && !empty($element['strong'])){
$listItemRun->addText($this->trimString($element['strong']), array('format' => 'decimal','lineHeight' => 1,'bold'=>true),array('spaceAfter'=>0,'lineHeight'=>1));
}
if(isset($element['b']) && !empty($element['b'])){
$listItemRun->addText($this->trimString($element['b']).' ', array('format' => 'decimal','bold'=>true),array('spaceAfter'=>0,'lineHeight'=>1));
}
if(isset($element['#text'][0]) && !empty($element['#text'][0])){
$listItemRun->addText($this->trimString($element['#text'][0]).' ',array('format' => 'decimal'),array('spaceAfter'=>0,'lineHeight'=>1));
}
if(isset($element['u']) && !empty($element['u'])){
$listItemRun->addText($this->trimString($element['u']).' ', array('underline' => \PhpOffice\PhpWord\Style\Font::UNDERLINE_SINGLE),array('spaceAfter'=>0,'lineHeight'=>1));
}
if(isset($element['em']) && !empty($element['em'])){
$listItemRun->addText($this->trimString($element['em']).' ', array('italic' => true),array('spaceAfter'=>0,'lineHeight'=>1));
}
}
I followed PHPWord code following:
$listItemRun = $section->addListItemRun();
$listItemRun->addText('List item 1');
$listItemRun->addText(' in bold', array('bold'=>true));
$listItemRun = $section->addListItemRun();
$listItemRun->addText('List item 2');
$listItemRun->addText(' in italic', array('italic'=>true));
$listItemRun = $section->addListItemRun();
$listItemRun->addText('List item 3');
$listItemRun->addText(' underlined', array('underline'=>'dash'));
Every thing is working except line heght and spacing. In listing line height is coming 1.15 and I want to give line height 1 and also want to remove spacing in list item.
Upvotes: 0
Views: 3995
Reputation: 389
We can give spacing and line height by following code in list item:-
$phpWord->addParagraphStyle('P-listStyle', array('spaceAfter'=>0,'lineHeight'=>1.0));
$listItemRun = $section->addListItemRun(0,null, 'P-listStyle');
$listItemRun->addText('List item 1');
$listItemRun->addText(' in bold', array('bold'=>true));
$listItemRun = $section->addListItemRun();
$listItemRun->addText('List item 2');
$listItemRun->addText(' in italic', array('italic'=>true));
$listItemRun = $section->addListItemRun();
$listItemRun->addText('List item 3');
$listItemRun->addText(' underlined', array('underline'=>'dash'));
Upvotes: 3