Skip to content

Commit 1bd2834

Browse files
committed
Fixed issue 'Function getODTProperties() does not convert pixel to points for 'border-left' etc... #50'.
1 parent 1ee43a9 commit 1bd2834

File tree

2 files changed

+28
-10
lines changed

2 files changed

+28
-10
lines changed

helper/cssimport.php

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -825,6 +825,10 @@ public function adjustLengthValues ($callback) {
825825
break;
826826

827827
case 'border':
828+
case 'border-left':
829+
case 'border-right':
830+
case 'border-top':
831+
case 'border-bottom':
828832
$this->adjustLengthValuesBorder ($callback);
829833
break;
830834

@@ -838,11 +842,17 @@ public function adjustLengthValues ($callback) {
838842
* @param $callback
839843
*/
840844
protected function adjustLengthValuesBorder ($callback) {
841-
if ( $this->property == 'border' ) {
842-
$values = preg_split ('/\s+/', $this->value);
843-
$width =
844-
call_user_func($callback, $this->property, $values [0], CSSValueType::StrokeOrBorderWidth);
845-
$this->value = $width . ' ' . $values [1] . ' ' . $values [2];
845+
switch ($this->property) {
846+
case 'border':
847+
case 'border-left':
848+
case 'border-right':
849+
case 'border-top':
850+
case 'border-bottom':
851+
$values = preg_split ('/\s+/', $this->value);
852+
$width =
853+
call_user_func($callback, $this->property, $values [0], CSSValueType::StrokeOrBorderWidth);
854+
$this->value = $width . ' ' . $values [1] . ' ' . $values [2];
855+
break;
846856
}
847857
}
848858
}

renderer/page.php

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3375,11 +3375,19 @@ public function adjustLengthCallback ($property, $value, $type) {
33753375
break;
33763376

33773377
case CSSValueType::StrokeOrBorderWidth:
3378-
if ( $property != 'border' ) {
3379-
$adjusted = $value;
3380-
} else {
3381-
// border in ODT spans does not support 'px' units, so we convert it.
3382-
$adjusted = $this->pixelToPointsY($number).'pt';
3378+
switch ($property) {
3379+
case 'border':
3380+
case 'border-left':
3381+
case 'border-right':
3382+
case 'border-top':
3383+
case 'border-bottom':
3384+
// border in ODT spans does not support 'px' units, so we convert it.
3385+
$adjusted = $this->pixelToPointsY($number).'pt';
3386+
break;
3387+
3388+
default:
3389+
$adjusted = $value;
3390+
break;
33833391
}
33843392
break;
33853393

0 commit comments

Comments
 (0)