$ textrun->在$ footer-> addText内容之前处理的addText内容

时间:2016-11-25 11:36:23

标签: php phpword

我想要一个包含3行文本的页脚,在第2行和第3行之间有一个垂直空格(如空行)。 因为第3行包含粗体和普通文本,所以我必须将其实现为textrun。 但是第1行和第2行之间应该存在换行符,因此我将addText用于这两行。

不幸的是,页脚内容的显示顺序如下:

  • textrun

    footerText1
    footerText2

textrun首先被处理并显示在其他行之上!

如何正确接受订单?

我的页脚代码是:

// create footer
$footer = $section->addFooter();

// textrun declaration removed from here

// create footer content
$footerText1 = "Blah blah blah.";

$footerText2 = "Ipsum loret Ipsum loret Ipsum loret.";


// define font styles  
$smallFontStyleName = 'smallText';
$phpWord->addFontStyle($smallFontStyleName, array(
    'name' => 'Helvetica',
    'size' => 8,
));

$boldSmallFontStyleName = 'BoldSmallText';
$phpWord->addFontStyle($boldSmallFontStyleName, array(
    'bold' => true,
    'name' => 'Helvetica',
    'size' => 8,
));


// define paragraph spacing styles
$phpWord->addParagraphStyle('line1FooterStyle', array( 'spaceAfter'=>20));

$phpWord->addParagraphStyle('line2FooterStyle', array( 'spaceAfter'=>380));


// add content
$footer->addText($footerText1, 
    array('name' => 'Helvetica', 'size' => 8),
    array('space' => array('after' => 20))
);

$footer->addText($footerText2, 
    array('name' => 'Helvetica', 'size' => 8), 
    array('space' => array('after' => 380))
);

// textrun重新定位到这里

$textrun = $footer->addTextRun();

$textrun->addText('T', $boldSmallFontStyleName);
$textrun->addText(' ++353 1 555 0001 ', $smallFontStyleName); 
$textrun->addText('E', $boldSmallFontStyleName);
$textrun->addText(' abc.def@ghk.ie ', $smallFontStyleName);
$textrun->addText('W', $boldSmallFontStyleName);
$textrun->addText(' abcd.ie/wxz', $smallFontStyleName);

1 个答案:

答案 0 :(得分:0)

好的,我看到了问题并修复了它。我在$ footer-> addText行之前声明了textrun。这意味着首先插入了textrun代码,不正确。 d'!哦