2013-10-08 5 views
4

Когда я создаю простую таблицу с PHPTable, строки кажутся немного слишком высокими. Я хотел бы, чтобы они были такими же высотами, как и шрифт, и без пробелов/интервалов ниже или выше текста в ячейках .., но не могут заставить его работать без каких-либо «отступов» ...Как изменить высоту ячейки таблицы PHPWord?

Код:

$styleTable = array('borderSize'=>0, 
        'borderColor'=>'eeeeee', 
        'cellMargin'=>0, 
        'spaceBefore' => 0, 
        'spaceAfter' => 0, 
        'spacing' => 0); 

$PHPWord->addTableStyle('myOwnTableStyle', $styleTable); 

$table = $section->addTable('myOwnTableStyle'); 

foreach($aryData['json_data'] as $data) { 
    $table->addRow(); 
    $table->addCell(4000)->addText($data['label'] . ':', array('bold'=>true)); 
    $table->addCell(8000)->addText($data['value']); 
} 

ответ

7

Найден ответ. Пришлось добавить стиль абзаца на каждом элементе «spaceAfter» => 0. См рабочий код ниже:

// New Word Document 
$PHPWord = new PHPWord(); 

// This is used to remove "padding" below text-lines 
$noSpace = array('spaceAfter' => 0); 

$section = $PHPWord->createSection(); 
$table = $section->addTable(); 
foreach($aryData['json_data'] as $data) { 
    $table->addRow(); 
    $table->addCell(4000)->addText($data['label'] . ':', array('bold'=>true), $noSpace); 
    $table->addCell(8000)->addText($data['value'], array(), $noSpace); 
} 

Это помогло мне. Надеюсь, это поможет вам.

+0

Большое спасибо! Я продолжал пытаться использовать «spacing» => 0 и даже не думал попробовать «spaceAfter» => 0. –