32
32
*/
33
33
class Html
34
34
{
35
- private static $ listIndex = 0 ;
36
- private static $ xpath ;
37
- private static $ options ;
35
+ protected static $ listIndex = 0 ;
36
+ protected static $ xpath ;
37
+ protected static $ options ;
38
38
39
39
/**
40
40
* Add HTML parts.
@@ -203,7 +203,7 @@ protected static function parseNode($node, $element, $styles = array(), $data =
203
203
* @param array $styles
204
204
* @param array $data
205
205
*/
206
- private static function parseChildNodes ($ node , $ element , $ styles , $ data )
206
+ protected static function parseChildNodes ($ node , $ element , $ styles , $ data )
207
207
{
208
208
if ('li ' != $ node ->nodeName ) {
209
209
$ cNodes = $ node ->childNodes ;
@@ -225,7 +225,7 @@ private static function parseChildNodes($node, $element, $styles, $data)
225
225
* @param array &$styles
226
226
* @return \PhpOffice\PhpWord\Element\TextRun
227
227
*/
228
- private static function parseParagraph ($ node , $ element , &$ styles )
228
+ protected static function parseParagraph ($ node , $ element , &$ styles )
229
229
{
230
230
$ styles ['paragraph ' ] = self ::recursiveParseStylesInHierarchy ($ node , $ styles ['paragraph ' ]);
231
231
$ newElement = $ element ->addTextRun ($ styles ['paragraph ' ]);
@@ -244,7 +244,7 @@ private static function parseParagraph($node, $element, &$styles)
244
244
* @todo Think of a clever way of defining header styles, now it is only based on the assumption, that
245
245
* Heading1 - Heading6 are already defined somewhere
246
246
*/
247
- private static function parseHeading ($ element , &$ styles , $ argument1 )
247
+ protected static function parseHeading ($ element , &$ styles , $ argument1 )
248
248
{
249
249
$ styles ['paragraph ' ] = $ argument1 ;
250
250
$ newElement = $ element ->addTextRun ($ styles ['paragraph ' ]);
@@ -259,7 +259,7 @@ private static function parseHeading($element, &$styles, $argument1)
259
259
* @param \PhpOffice\PhpWord\Element\AbstractContainer $element
260
260
* @param array &$styles
261
261
*/
262
- private static function parseText ($ node , $ element , &$ styles )
262
+ protected static function parseText ($ node , $ element , &$ styles )
263
263
{
264
264
$ styles ['font ' ] = self ::recursiveParseStylesInHierarchy ($ node , $ styles ['font ' ]);
265
265
@@ -280,7 +280,7 @@ private static function parseText($node, $element, &$styles)
280
280
* @param string $argument1 Style name
281
281
* @param string $argument2 Style value
282
282
*/
283
- private static function parseProperty (&$ styles , $ argument1 , $ argument2 )
283
+ protected static function parseProperty (&$ styles , $ argument1 , $ argument2 )
284
284
{
285
285
$ styles ['font ' ][$ argument1 ] = $ argument2 ;
286
286
}
@@ -291,7 +291,7 @@ private static function parseProperty(&$styles, $argument1, $argument2)
291
291
* @param \DOMNode $node
292
292
* @param array &$styles
293
293
*/
294
- private static function parseSpan ($ node , &$ styles )
294
+ protected static function parseSpan ($ node , &$ styles )
295
295
{
296
296
self ::parseInlineStyle ($ node , $ styles ['font ' ]);
297
297
}
@@ -306,7 +306,7 @@ private static function parseSpan($node, &$styles)
306
306
*
307
307
* @todo As soon as TableItem, RowItem and CellItem support relative width and height
308
308
*/
309
- private static function parseTable ($ node , $ element , &$ styles )
309
+ protected static function parseTable ($ node , $ element , &$ styles )
310
310
{
311
311
$ elementStyles = self ::parseInlineStyle ($ node , $ styles ['table ' ]);
312
312
@@ -335,7 +335,7 @@ private static function parseTable($node, $element, &$styles)
335
335
* @param array &$styles
336
336
* @return Row $element
337
337
*/
338
- private static function parseRow ($ node , $ element , &$ styles )
338
+ protected static function parseRow ($ node , $ element , &$ styles )
339
339
{
340
340
$ rowStyles = self ::parseInlineStyle ($ node , $ styles ['row ' ]);
341
341
if ($ node ->parentNode ->nodeName == 'thead ' ) {
@@ -353,7 +353,7 @@ private static function parseRow($node, $element, &$styles)
353
353
* @param array &$styles
354
354
* @return \PhpOffice\PhpWord\Element\Cell|\PhpOffice\PhpWord\Element\TextRun $element
355
355
*/
356
- private static function parseCell ($ node , $ element , &$ styles )
356
+ protected static function parseCell ($ node , $ element , &$ styles )
357
357
{
358
358
$ cellStyles = self ::recursiveParseStylesInHierarchy ($ node , $ styles ['cell ' ]);
359
359
@@ -376,7 +376,7 @@ private static function parseCell($node, $element, &$styles)
376
376
* @param \DOMNode $node
377
377
* @return bool Returns true if the node contains an HTML element that cannot be added to TextRun
378
378
*/
379
- private static function shouldAddTextRun (\DOMNode $ node )
379
+ protected static function shouldAddTextRun (\DOMNode $ node )
380
380
{
381
381
$ containsBlockElement = self ::$ xpath ->query ('.//table|./p|./ul|./ol ' , $ node )->length > 0 ;
382
382
if ($ containsBlockElement ) {
@@ -393,7 +393,7 @@ private static function shouldAddTextRun(\DOMNode $node)
393
393
* @param \DOMNode $node
394
394
* @param array &$styles
395
395
*/
396
- private static function recursiveParseStylesInHierarchy (\DOMNode $ node , array $ style )
396
+ protected static function recursiveParseStylesInHierarchy (\DOMNode $ node , array $ style )
397
397
{
398
398
$ parentStyle = self ::parseInlineStyle ($ node , array ());
399
399
$ style = array_merge ($ parentStyle , $ style );
@@ -412,7 +412,7 @@ private static function recursiveParseStylesInHierarchy(\DOMNode $node, array $s
412
412
* @param array &$styles
413
413
* @param array &$data
414
414
*/
415
- private static function parseList ($ node , $ element , &$ styles , &$ data )
415
+ protected static function parseList ($ node , $ element , &$ styles , &$ data )
416
416
{
417
417
$ isOrderedList = $ node ->nodeName === 'ol ' ;
418
418
if (isset ($ data ['listdepth ' ])) {
@@ -431,7 +431,7 @@ private static function parseList($node, $element, &$styles, &$data)
431
431
* @param bool $isOrderedList
432
432
* @return array
433
433
*/
434
- private static function getListStyle ($ isOrderedList )
434
+ protected static function getListStyle ($ isOrderedList )
435
435
{
436
436
if ($ isOrderedList ) {
437
437
return array (
@@ -477,7 +477,7 @@ private static function getListStyle($isOrderedList)
477
477
* @todo This function is almost the same like `parseChildNodes`. Merged?
478
478
* @todo As soon as ListItem inherits from AbstractContainer or TextRun delete parsing part of childNodes
479
479
*/
480
- private static function parseListItem ($ node , $ element , &$ styles , $ data )
480
+ protected static function parseListItem ($ node , $ element , &$ styles , $ data )
481
481
{
482
482
$ cNodes = $ node ->childNodes ;
483
483
if (!empty ($ cNodes )) {
@@ -495,7 +495,7 @@ private static function parseListItem($node, $element, &$styles, $data)
495
495
* @param array $styles
496
496
* @return array
497
497
*/
498
- private static function parseStyle ($ attribute , $ styles )
498
+ protected static function parseStyle ($ attribute , $ styles )
499
499
{
500
500
$ properties = explode ('; ' , trim ($ attribute ->value , " \t\n\r\0\x0B; " ));
501
501
@@ -623,7 +623,7 @@ private static function parseStyle($attribute, $styles)
623
623
*
624
624
* @return \PhpOffice\PhpWord\Element\Image
625
625
**/
626
- private static function parseImage ($ node , $ element )
626
+ protected static function parseImage ($ node , $ element )
627
627
{
628
628
$ style = array ();
629
629
$ src = null ;
@@ -726,7 +726,7 @@ private static function parseImage($node, $element)
726
726
* @param string $cssBorderStyle
727
727
* @return null|string
728
728
*/
729
- private static function mapBorderStyle ($ cssBorderStyle )
729
+ protected static function mapBorderStyle ($ cssBorderStyle )
730
730
{
731
731
switch ($ cssBorderStyle ) {
732
732
case 'none ' :
@@ -739,7 +739,7 @@ private static function mapBorderStyle($cssBorderStyle)
739
739
}
740
740
}
741
741
742
- private static function mapBorderColor (&$ styles , $ cssBorderColor )
742
+ protected static function mapBorderColor (&$ styles , $ cssBorderColor )
743
743
{
744
744
$ numColors = substr_count ($ cssBorderColor , '# ' );
745
745
if ($ numColors === 1 ) {
@@ -759,7 +759,7 @@ private static function mapBorderColor(&$styles, $cssBorderColor)
759
759
* @param string $cssAlignment
760
760
* @return string|null
761
761
*/
762
- private static function mapAlign ($ cssAlignment )
762
+ protected static function mapAlign ($ cssAlignment )
763
763
{
764
764
switch ($ cssAlignment ) {
765
765
case 'right ' :
@@ -778,7 +778,7 @@ private static function mapAlign($cssAlignment)
778
778
*
779
779
* @param \PhpOffice\PhpWord\Element\AbstractContainer $element
780
780
*/
781
- private static function parseLineBreak ($ element )
781
+ protected static function parseLineBreak ($ element )
782
782
{
783
783
$ element ->addTextBreak ();
784
784
}
@@ -790,7 +790,7 @@ private static function parseLineBreak($element)
790
790
* @param \PhpOffice\PhpWord\Element\AbstractContainer $element
791
791
* @param array $styles
792
792
*/
793
- private static function parseLink ($ node , $ element , &$ styles )
793
+ protected static function parseLink ($ node , $ element , &$ styles )
794
794
{
795
795
$ target = null ;
796
796
foreach ($ node ->attributes as $ attribute ) {
0 commit comments