Сейчас я работаю с PhpWord. Я добавил раздел header
, и внутри него добавлено два изображения. Изображения должны быть выровнены, один слева и другой справа, но в одной строке. И у меня есть этот код, но только печатает изображения один под другим, только способ, которым я могу их изменить, – это вставить файл .docx.
$header = $section->addHeader(); $header->addImage('http://localhost/doWords/logoRenatea.jpg', array( 'width' => '291', 'height' => '81', 'align' => 'left', 'marginTop' => -1, 'marginLeft' => -1, 'wrappingStyle' => 'behind' )); $header->addImage('http://localhost/doWords/logoMTESS.jpg', array( 'width' => '110', 'height' => '44', 'align' => 'right', 'marginTop' => -1, 'marginLeft' => -1, 'wrappingStyle' => 'infront' ));
Уже пробовал без wrappingStyle, без полей, и не работал. Есть идеи?
Вывод:
Желаемая:
таблица – это простой способ получить изображения в одной строке
... $table = $header->addTable(array('width' => '5000', 'unit' => 'pct')); $table->addRow(); $table->addCell(2000)->addImage(...); // image1 with needed styles $table->addCell(2000)->addTextRun(array('align' => 'right'))->addImage(...); // image2 with needed styles
Проблема заключалась в том, что align
не принимает значения left
или right
. Он предпочитает start
и end
соответственно. Но это не все. Мне также нужно было добавить положение абсолютное. Итак, вот код:
$header->addImage('http://localhost/doWords/logoRenatea.jpg', array( 'width' => '291', 'height' => '81', 'align' => 'start', 'positioning' => 'absolute' )); $image1 = $header->addImage('http://localhost/doWords/logoMTESS.jpg', array( 'width' => '110', 'height' => '44', 'align' => 'end' ));
Единственное, что мне не удалось найти, – это поля, но я выровнял изображения, что было главной проблемой.