Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
bb9ad24b
Kaydet (Commit)
bb9ad24b
authored
Ock 23, 2013
tarafından
Armin Le Grand
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
#121656# Some more cleanups for SVG import, also const as const can
üst
997126e0
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
206 additions
and
60 deletions
+206
-60
svgnode.hxx
svgio/inc/svgio/svgreader/svgnode.hxx
+30
-0
svgstyleattributes.hxx
svgio/inc/svgio/svgreader/svgstyleattributes.hxx
+22
-22
svgtoken.hxx
svgio/inc/svgio/svgreader/svgtoken.hxx
+1
-0
svgclippathnode.cxx
svgio/source/svgreader/svgclippathnode.cxx
+1
-1
svgimagenode.cxx
svgio/source/svgreader/svgimagenode.cxx
+1
-1
svgmarkernode.cxx
svgio/source/svgreader/svgmarkernode.cxx
+1
-1
svgmasknode.cxx
svgio/source/svgreader/svgmasknode.cxx
+1
-1
svgnode.cxx
svgio/source/svgreader/svgnode.cxx
+108
-1
svgpatternnode.cxx
svgio/source/svgreader/svgpatternnode.cxx
+1
-1
svgstyleattributes.cxx
svgio/source/svgreader/svgstyleattributes.cxx
+31
-30
svgtoken.cxx
svgio/source/svgreader/svgtoken.cxx
+2
-0
svgusenode.cxx
svgio/source/svgreader/svgusenode.cxx
+1
-1
xsvgparser.cxx
svgio/source/svguno/xsvgparser.cxx
+6
-1
No files found.
svgio/inc/svgio/svgreader/svgnode.hxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -59,6 +59,29 @@ namespace svgio
...
@@ -59,6 +59,29 @@ namespace svgio
XmlSpace_preserve
XmlSpace_preserve
};
};
// display property (see SVG 1.1. 11.5), not inheritable
enum
Display
// #121656#
{
Display_inline
,
// the default
Display_block
,
Display_list_item
,
Display_run_in
,
Display_compact
,
Display_marker
,
Display_table
,
Display_inline_table
,
Display_table_row_group
,
Display_table_header_group
,
Display_table_footer_group
,
Display_table_row
,
Display_table_column_group
,
Display_table_column
,
Display_table_cell
,
Display_table_caption
,
Display_none
,
Display_inherit
};
class
SvgNode
:
private
boost
::
noncopyable
,
public
InfoProvider
class
SvgNode
:
private
boost
::
noncopyable
,
public
InfoProvider
{
{
private
:
private
:
...
@@ -80,6 +103,9 @@ namespace svgio
...
@@ -80,6 +103,9 @@ namespace svgio
/// XmlSpace value
/// XmlSpace value
XmlSpace
maXmlSpace
;
XmlSpace
maXmlSpace
;
/// Display value #121656#
Display
maDisplay
;
/// CSS styles
/// CSS styles
SvgStyleAttributeVector
maCssStyleVector
;
SvgStyleAttributeVector
maCssStyleVector
;
...
@@ -122,6 +148,10 @@ namespace svgio
...
@@ -122,6 +148,10 @@ namespace svgio
XmlSpace
getXmlSpace
()
const
;
XmlSpace
getXmlSpace
()
const
;
void
setXmlSpace
(
XmlSpace
eXmlSpace
=
XmlSpace_notset
)
{
maXmlSpace
=
eXmlSpace
;
}
void
setXmlSpace
(
XmlSpace
eXmlSpace
=
XmlSpace_notset
)
{
maXmlSpace
=
eXmlSpace
;
}
/// Display access #121656#
Display
getDisplay
()
const
{
return
maDisplay
;
}
void
setDisplay
(
Display
eDisplay
=
Display_inherit
)
{
maDisplay
=
eDisplay
;
}
/// alternative parent
/// alternative parent
void
setAlternativeParent
(
const
SvgNode
*
pAlternativeParent
=
0
)
{
mpAlternativeParent
=
pAlternativeParent
;
}
void
setAlternativeParent
(
const
SvgNode
*
pAlternativeParent
=
0
)
{
mpAlternativeParent
=
pAlternativeParent
;
}
};
};
...
...
svgio/inc/svgio/svgreader/svgstyleattributes.hxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -290,11 +290,11 @@ namespace svgio
...
@@ -290,11 +290,11 @@ namespace svgio
void
setStopColor
(
const
SvgPaint
&
rStopColor
)
{
maStopColor
=
rStopColor
;
}
void
setStopColor
(
const
SvgPaint
&
rStopColor
)
{
maStopColor
=
rStopColor
;
}
/// stroke-width content
/// stroke-width content
SvgNumber
getStrokeWidth
()
const
;
const
SvgNumber
getStrokeWidth
()
const
;
void
setStrokeWidth
(
const
SvgNumber
&
rStrokeWidth
=
SvgNumber
())
{
maStrokeWidth
=
rStrokeWidth
;
}
void
setStrokeWidth
(
const
SvgNumber
&
rStrokeWidth
=
SvgNumber
())
{
maStrokeWidth
=
rStrokeWidth
;
}
/// stop opacity content
/// stop opacity content
SvgNumber
getStopOpacity
()
const
;
const
SvgNumber
getStopOpacity
()
const
;
void
setStopOpacity
(
const
SvgNumber
&
rStopOpacity
=
SvgNumber
())
{
maStopOpacity
=
rStopOpacity
;
}
void
setStopOpacity
(
const
SvgNumber
&
rStopOpacity
=
SvgNumber
())
{
maStopOpacity
=
rStopOpacity
;
}
/// access to evtl. set fill gradient
/// access to evtl. set fill gradient
...
@@ -314,11 +314,11 @@ namespace svgio
...
@@ -314,11 +314,11 @@ namespace svgio
void
setSvgPatternNodeStroke
(
const
SvgPatternNode
*
pNew
)
{
mpSvgPatternNodeStroke
=
pNew
;
}
void
setSvgPatternNodeStroke
(
const
SvgPatternNode
*
pNew
)
{
mpSvgPatternNodeStroke
=
pNew
;
}
/// fill opacity content
/// fill opacity content
SvgNumber
getFillOpacity
()
const
;
const
SvgNumber
getFillOpacity
()
const
;
void
setFillOpacity
(
const
SvgNumber
&
rFillOpacity
=
SvgNumber
())
{
maFillOpacity
=
rFillOpacity
;
}
void
setFillOpacity
(
const
SvgNumber
&
rFillOpacity
=
SvgNumber
())
{
maFillOpacity
=
rFillOpacity
;
}
/// fill rule content
/// fill rule content
FillRule
getFillRule
()
const
;
const
FillRule
getFillRule
()
const
;
void
setFillRule
(
const
FillRule
aFillRule
=
FillRule_notset
)
{
maFillRule
=
aFillRule
;
}
void
setFillRule
(
const
FillRule
aFillRule
=
FillRule_notset
)
{
maFillRule
=
aFillRule
;
}
/// fill StrokeDasharray content
/// fill StrokeDasharray content
...
@@ -326,27 +326,27 @@ namespace svgio
...
@@ -326,27 +326,27 @@ namespace svgio
void
setStrokeDasharray
(
const
SvgNumberVector
&
rStrokeDasharray
=
SvgNumberVector
())
{
maStrokeDasharray
=
rStrokeDasharray
;
}
void
setStrokeDasharray
(
const
SvgNumberVector
&
rStrokeDasharray
=
SvgNumberVector
())
{
maStrokeDasharray
=
rStrokeDasharray
;
}
/// #121221# StrokeDasharray needs a set state, it *may* be set to empty by purpose
/// #121221# StrokeDasharray needs a set state, it *may* be set to empty by purpose
bool
getStrokeDasharraySet
()
const
{
return
mbStrokeDasharraySet
;
}
const
bool
getStrokeDasharraySet
()
const
{
return
mbStrokeDasharraySet
;
}
void
setStrokeDasharraySet
(
bool
bNew
)
{
mbStrokeDasharraySet
=
bNew
;
}
void
setStrokeDasharraySet
(
bool
bNew
)
{
mbStrokeDasharraySet
=
bNew
;
}
/// StrokeDashOffset content
/// StrokeDashOffset content
SvgNumber
getStrokeDashOffset
()
const
;
const
SvgNumber
getStrokeDashOffset
()
const
;
void
setStrokeDashOffset
(
const
SvgNumber
&
rStrokeDashOffset
=
SvgNumber
())
{
maStrokeDashOffset
=
rStrokeDashOffset
;
}
void
setStrokeDashOffset
(
const
SvgNumber
&
rStrokeDashOffset
=
SvgNumber
())
{
maStrokeDashOffset
=
rStrokeDashOffset
;
}
/// StrokeLinecap content
/// StrokeLinecap content
StrokeLinecap
getStrokeLinecap
()
const
;
const
StrokeLinecap
getStrokeLinecap
()
const
;
void
setStrokeLinecap
(
const
StrokeLinecap
aStrokeLinecap
=
StrokeLinecap_notset
)
{
maStrokeLinecap
=
aStrokeLinecap
;
}
void
setStrokeLinecap
(
const
StrokeLinecap
aStrokeLinecap
=
StrokeLinecap_notset
)
{
maStrokeLinecap
=
aStrokeLinecap
;
}
/// StrokeLinejoin content
/// StrokeLinejoin content
StrokeLinejoin
getStrokeLinejoin
()
const
;
const
StrokeLinejoin
getStrokeLinejoin
()
const
;
void
setStrokeLinejoin
(
const
StrokeLinejoin
aStrokeLinejoin
=
StrokeLinejoin_notset
)
{
maStrokeLinejoin
=
aStrokeLinejoin
;
}
void
setStrokeLinejoin
(
const
StrokeLinejoin
aStrokeLinejoin
=
StrokeLinejoin_notset
)
{
maStrokeLinejoin
=
aStrokeLinejoin
;
}
/// StrokeMiterLimit content
/// StrokeMiterLimit content
SvgNumber
getStrokeMiterLimit
()
const
;
const
SvgNumber
getStrokeMiterLimit
()
const
;
void
setStrokeMiterLimit
(
const
SvgNumber
&
rStrokeMiterLimit
=
SvgNumber
())
{
maStrokeMiterLimit
=
rStrokeMiterLimit
;
}
void
setStrokeMiterLimit
(
const
SvgNumber
&
rStrokeMiterLimit
=
SvgNumber
())
{
maStrokeMiterLimit
=
rStrokeMiterLimit
;
}
/// StrokeOpacity content
/// StrokeOpacity content
SvgNumber
getStrokeOpacity
()
const
;
const
SvgNumber
getStrokeOpacity
()
const
;
void
setStrokeOpacity
(
const
SvgNumber
&
rStrokeOpacity
=
SvgNumber
())
{
maStrokeOpacity
=
rStrokeOpacity
;
}
void
setStrokeOpacity
(
const
SvgNumber
&
rStrokeOpacity
=
SvgNumber
())
{
maStrokeOpacity
=
rStrokeOpacity
;
}
/// Font content
/// Font content
...
@@ -354,36 +354,36 @@ namespace svgio
...
@@ -354,36 +354,36 @@ namespace svgio
void
setFontFamily
(
const
SvgStringVector
&
rSvgStringVector
=
SvgStringVector
())
{
maFontFamily
=
rSvgStringVector
;
}
void
setFontFamily
(
const
SvgStringVector
&
rSvgStringVector
=
SvgStringVector
())
{
maFontFamily
=
rSvgStringVector
;
}
/// FontSize content
/// FontSize content
SvgNumber
getFontSize
()
const
;
const
SvgNumber
getFontSize
()
const
;
void
setFontSize
(
const
SvgNumber
&
rFontSize
=
SvgNumber
())
{
maFontSize
=
rFontSize
;
}
void
setFontSize
(
const
SvgNumber
&
rFontSize
=
SvgNumber
())
{
maFontSize
=
rFontSize
;
}
/// FontStretch content
/// FontStretch content
FontStretch
getFontStretch
()
const
;
const
FontStretch
getFontStretch
()
const
;
void
setFontStretch
(
const
FontStretch
aFontStretch
=
FontStretch_notset
)
{
maFontStretch
=
aFontStretch
;
}
void
setFontStretch
(
const
FontStretch
aFontStretch
=
FontStretch_notset
)
{
maFontStretch
=
aFontStretch
;
}
/// FontStyle content
/// FontStyle content
FontStyle
getFontStyle
()
const
;
const
FontStyle
getFontStyle
()
const
;
void
setFontStyle
(
const
FontStyle
aFontStyle
=
FontStyle_notset
)
{
maFontStyle
=
aFontStyle
;
}
void
setFontStyle
(
const
FontStyle
aFontStyle
=
FontStyle_notset
)
{
maFontStyle
=
aFontStyle
;
}
/// FontVariant content
/// FontVariant content
FontVariant
getFontVariant
()
const
;
const
FontVariant
getFontVariant
()
const
;
void
setFontVariant
(
const
FontVariant
aFontVariant
=
FontVariant_notset
)
{
maFontVariant
=
aFontVariant
;
}
void
setFontVariant
(
const
FontVariant
aFontVariant
=
FontVariant_notset
)
{
maFontVariant
=
aFontVariant
;
}
/// FontWeight content
/// FontWeight content
FontWeight
getFontWeight
()
const
;
const
FontWeight
getFontWeight
()
const
;
void
setFontWeight
(
const
FontWeight
aFontWeight
=
FontWeight_notset
)
{
maFontWeight
=
aFontWeight
;
}
void
setFontWeight
(
const
FontWeight
aFontWeight
=
FontWeight_notset
)
{
maFontWeight
=
aFontWeight
;
}
/// TextAlign content
/// TextAlign content
TextAlign
getTextAlign
()
const
;
const
TextAlign
getTextAlign
()
const
;
void
setTextAlign
(
const
TextAlign
aTextAlign
=
TextAlign_notset
)
{
maTextAlign
=
aTextAlign
;
}
void
setTextAlign
(
const
TextAlign
aTextAlign
=
TextAlign_notset
)
{
maTextAlign
=
aTextAlign
;
}
/// TextDecoration content
/// TextDecoration content
const
SvgStyleAttributes
*
getTextDecorationDefiningSvgStyleAttributes
()
const
;
const
SvgStyleAttributes
*
getTextDecorationDefiningSvgStyleAttributes
()
const
;
TextDecoration
getTextDecoration
()
const
;
const
TextDecoration
getTextDecoration
()
const
;
void
setTextDecoration
(
const
TextDecoration
aTextDecoration
=
TextDecoration_notset
)
{
maTextDecoration
=
aTextDecoration
;
}
void
setTextDecoration
(
const
TextDecoration
aTextDecoration
=
TextDecoration_notset
)
{
maTextDecoration
=
aTextDecoration
;
}
/// TextAnchor content
/// TextAnchor content
TextAnchor
getTextAnchor
()
const
;
const
TextAnchor
getTextAnchor
()
const
;
void
setTextAnchor
(
const
TextAnchor
aTextAnchor
=
TextAnchor_notset
)
{
maTextAnchor
=
aTextAnchor
;
}
void
setTextAnchor
(
const
TextAnchor
aTextAnchor
=
TextAnchor_notset
)
{
maTextAnchor
=
aTextAnchor
;
}
/// Color content
/// Color content
...
@@ -391,7 +391,7 @@ namespace svgio
...
@@ -391,7 +391,7 @@ namespace svgio
void
setColor
(
const
SvgPaint
&
rColor
)
{
maColor
=
rColor
;
}
void
setColor
(
const
SvgPaint
&
rColor
)
{
maColor
=
rColor
;
}
/// Opacity content
/// Opacity content
SvgNumber
getOpacity
()
const
{
return
maOpacity
;
}
const
SvgNumber
getOpacity
()
const
{
return
maOpacity
;
}
void
setOpacity
(
const
SvgNumber
&
rOpacity
=
SvgNumber
())
{
maOpacity
=
rOpacity
;
}
void
setOpacity
(
const
SvgNumber
&
rOpacity
=
SvgNumber
())
{
maOpacity
=
rOpacity
;
}
// Title content
// Title content
...
@@ -411,17 +411,17 @@ namespace svgio
...
@@ -411,17 +411,17 @@ namespace svgio
void
setMaskXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMaskXLink
=
rNew
;
}
void
setMaskXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMaskXLink
=
rNew
;
}
// MarkerStartXLink content
// MarkerStartXLink content
rtl
::
OUString
getMarkerStartXLink
()
const
;
const
rtl
::
OUString
getMarkerStartXLink
()
const
;
const
SvgMarkerNode
*
accessMarkerStartXLink
()
const
;
const
SvgMarkerNode
*
accessMarkerStartXLink
()
const
;
void
setMarkerStartXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMarkerStartXLink
=
rNew
;
}
void
setMarkerStartXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMarkerStartXLink
=
rNew
;
}
// MarkerMidXLink content
// MarkerMidXLink content
rtl
::
OUString
getMarkerMidXLink
()
const
;
const
rtl
::
OUString
getMarkerMidXLink
()
const
;
const
SvgMarkerNode
*
accessMarkerMidXLink
()
const
;
const
SvgMarkerNode
*
accessMarkerMidXLink
()
const
;
void
setMarkerMidXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMarkerMidXLink
=
rNew
;
}
void
setMarkerMidXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMarkerMidXLink
=
rNew
;
}
// MarkerEndXLink content
// MarkerEndXLink content
rtl
::
OUString
getMarkerEndXLink
()
const
;
const
rtl
::
OUString
getMarkerEndXLink
()
const
;
const
SvgMarkerNode
*
accessMarkerEndXLink
()
const
;
const
SvgMarkerNode
*
accessMarkerEndXLink
()
const
;
void
setMarkerEndXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMarkerEndXLink
=
rNew
;
}
void
setMarkerEndXLink
(
const
rtl
::
OUString
&
rNew
)
{
maMarkerEndXLink
=
rNew
;
}
...
...
svgio/inc/svgio/svgreader/svgtoken.hxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -43,6 +43,7 @@ namespace svgio
...
@@ -43,6 +43,7 @@ namespace svgio
SVGTokenViewBox
,
SVGTokenViewBox
,
SVGTokenTransform
,
SVGTokenTransform
,
SVGTokenStyle
,
SVGTokenStyle
,
SVGTokenDisplay
,
// #121656#
SVGTokenD
,
SVGTokenD
,
SVGTokenX
,
SVGTokenX
,
SVGTokenY
,
SVGTokenY
,
...
...
svgio/source/svgreader/svgclippathnode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -133,7 +133,7 @@ namespace svgio
...
@@ -133,7 +133,7 @@ namespace svgio
void
SvgClipPathNode
::
apply
(
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
rContent
)
const
void
SvgClipPathNode
::
apply
(
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
rContent
)
const
{
{
if
(
rContent
.
hasElements
())
if
(
rContent
.
hasElements
()
&&
Display_none
!=
getDisplay
()
)
{
{
const
drawinglayer
::
geometry
::
ViewInformation2D
aViewInformation2D
;
const
drawinglayer
::
geometry
::
ViewInformation2D
aViewInformation2D
;
drawinglayer
::
primitive2d
::
Primitive2DSequence
aClipTarget
;
drawinglayer
::
primitive2d
::
Primitive2DSequence
aClipTarget
;
...
...
svgio/source/svgreader/svgimagenode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -261,7 +261,7 @@ namespace svgio
...
@@ -261,7 +261,7 @@ namespace svgio
{
{
const
SvgNode
*
mpXLink
=
getDocument
().
findSvgNodeById
(
maXLink
);
const
SvgNode
*
mpXLink
=
getDocument
().
findSvgNodeById
(
maXLink
);
if
(
mpXLink
)
if
(
mpXLink
&&
Display_none
!=
mpXLink
->
getDisplay
()
)
{
{
mpXLink
->
decomposeSvgNode
(
aNewTarget
,
true
);
mpXLink
->
decomposeSvgNode
(
aNewTarget
,
true
);
...
...
svgio/source/svgreader/svgmarkernode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -188,7 +188,7 @@ namespace svgio
...
@@ -188,7 +188,7 @@ namespace svgio
const
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
SvgMarkerNode
::
getMarkerPrimitives
()
const
const
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
SvgMarkerNode
::
getMarkerPrimitives
()
const
{
{
if
(
!
aPrimitives
.
hasElements
())
if
(
!
aPrimitives
.
hasElements
()
&&
Display_none
!=
getDisplay
()
)
{
{
decomposeSvgNode
(
const_cast
<
SvgMarkerNode
*
>
(
this
)
->
aPrimitives
,
true
);
decomposeSvgNode
(
const_cast
<
SvgMarkerNode
*
>
(
this
)
->
aPrimitives
,
true
);
}
}
...
...
svgio/source/svgreader/svgmasknode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -199,7 +199,7 @@ namespace svgio
...
@@ -199,7 +199,7 @@ namespace svgio
void
SvgMaskNode
::
apply
(
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
rTarget
)
const
void
SvgMaskNode
::
apply
(
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
rTarget
)
const
{
{
if
(
rTarget
.
hasElements
())
if
(
rTarget
.
hasElements
()
&&
Display_none
!=
getDisplay
()
)
{
{
drawinglayer
::
primitive2d
::
Primitive2DSequence
aMaskTarget
;
drawinglayer
::
primitive2d
::
Primitive2DSequence
aMaskTarget
;
...
...
svgio/source/svgreader/svgnode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -150,6 +150,7 @@ namespace svgio
...
@@ -150,6 +150,7 @@ namespace svgio
mpId
(
0
),
mpId
(
0
),
mpClass
(
0
),
mpClass
(
0
),
maXmlSpace
(
XmlSpace_notset
),
maXmlSpace
(
XmlSpace_notset
),
maDisplay
(
Display_inline
),
maCssStyleVector
()
maCssStyleVector
()
{
{
OSL_ENSURE
(
SVGTokenUnknown
!=
maType
,
"SvgNode with unknown type created (!)"
);
OSL_ENSURE
(
SVGTokenUnknown
!=
maType
,
"SvgNode with unknown type created (!)"
);
...
@@ -231,6 +232,104 @@ namespace svgio
...
@@ -231,6 +232,104 @@ namespace svgio
}
}
break
;
break
;
}
}
case
SVGTokenDisplay
:
{
if
(
aContent
.
getLength
())
{
static
rtl
::
OUString
aStrInline
(
rtl
::
OUString
::
createFromAscii
(
"inline"
));
static
rtl
::
OUString
aStrBlock
(
rtl
::
OUString
::
createFromAscii
(
"block"
));
static
rtl
::
OUString
aStrList_item
(
rtl
::
OUString
::
createFromAscii
(
"list-item"
));
static
rtl
::
OUString
aStrRun_in
(
rtl
::
OUString
::
createFromAscii
(
"run-in"
));
static
rtl
::
OUString
aStrCompact
(
rtl
::
OUString
::
createFromAscii
(
"compact"
));
static
rtl
::
OUString
aStrMarker
(
rtl
::
OUString
::
createFromAscii
(
"marker"
));
static
rtl
::
OUString
aStrTable
(
rtl
::
OUString
::
createFromAscii
(
"table"
));
static
rtl
::
OUString
aStrInline_table
(
rtl
::
OUString
::
createFromAscii
(
"inline-table"
));
static
rtl
::
OUString
aStrTable_row_group
(
rtl
::
OUString
::
createFromAscii
(
"table-row-group"
));
static
rtl
::
OUString
aStrTable_header_group
(
rtl
::
OUString
::
createFromAscii
(
"table-header-group"
));
static
rtl
::
OUString
aStrTable_footer_group
(
rtl
::
OUString
::
createFromAscii
(
"table-footer-group"
));
static
rtl
::
OUString
aStrTable_row
(
rtl
::
OUString
::
createFromAscii
(
"table-row"
));
static
rtl
::
OUString
aStrTable_column_group
(
rtl
::
OUString
::
createFromAscii
(
"table-column-group"
));
static
rtl
::
OUString
aStrTable_column
(
rtl
::
OUString
::
createFromAscii
(
"table-column"
));
static
rtl
::
OUString
aStrTable_cell
(
rtl
::
OUString
::
createFromAscii
(
"table-cell"
));
static
rtl
::
OUString
aStrTable_caption
(
rtl
::
OUString
::
createFromAscii
(
"table-caption"
));
static
rtl
::
OUString
aStrNone
(
rtl
::
OUString
::
createFromAscii
(
"none"
));
static
rtl
::
OUString
aStrInherit
(
rtl
::
OUString
::
createFromAscii
(
"inherit"
));
if
(
aContent
.
match
(
aStrInline
))
{
setDisplay
(
Display_inline
);
}
else
if
(
aContent
.
match
(
aStrNone
))
{
setDisplay
(
Display_none
);
}
else
if
(
aContent
.
match
(
aStrInherit
))
{
setDisplay
(
Display_inherit
);
}
else
if
(
aContent
.
match
(
aStrBlock
))
{
setDisplay
(
Display_block
);
}
else
if
(
aContent
.
match
(
aStrList_item
))
{
setDisplay
(
Display_list_item
);
}
else
if
(
aContent
.
match
(
aStrRun_in
))
{
setDisplay
(
Display_run_in
);
}
else
if
(
aContent
.
match
(
aStrCompact
))
{
setDisplay
(
Display_compact
);
}
else
if
(
aContent
.
match
(
aStrMarker
))
{
setDisplay
(
Display_marker
);
}
else
if
(
aContent
.
match
(
aStrTable
))
{
setDisplay
(
Display_table
);
}
else
if
(
aContent
.
match
(
aStrInline_table
))
{
setDisplay
(
Display_inline_table
);
}
else
if
(
aContent
.
match
(
aStrTable_row_group
))
{
setDisplay
(
Display_table_row_group
);
}
else
if
(
aContent
.
match
(
aStrTable_header_group
))
{
setDisplay
(
Display_table_header_group
);
}
else
if
(
aContent
.
match
(
aStrTable_footer_group
))
{
setDisplay
(
Display_table_footer_group
);
}
else
if
(
aContent
.
match
(
aStrTable_row
))
{
setDisplay
(
Display_table_row
);
}
else
if
(
aContent
.
match
(
aStrTable_column_group
))
{
setDisplay
(
Display_table_column_group
);
}
else
if
(
aContent
.
match
(
aStrTable_column
))
{
setDisplay
(
Display_table_column
);
}
else
if
(
aContent
.
match
(
aStrTable_cell
))
{
setDisplay
(
Display_table_cell
);
}
else
if
(
aContent
.
match
(
aStrTable_caption
))
{
setDisplay
(
Display_table_caption
);
}
}
break
;
}
default
:
default
:
{
{
break
;
break
;
...
@@ -240,6 +339,11 @@ namespace svgio
...
@@ -240,6 +339,11 @@ namespace svgio
void
SvgNode
::
decomposeSvgNode
(
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
rTarget
,
bool
bReferenced
)
const
void
SvgNode
::
decomposeSvgNode
(
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
rTarget
,
bool
bReferenced
)
const
{
{
if
(
Display_none
==
getDisplay
())
{
return
;
}
if
(
!
bReferenced
)
if
(
!
bReferenced
)
{
{
if
(
SVGTokenDefs
==
getType
()
||
if
(
SVGTokenDefs
==
getType
()
||
...
@@ -259,6 +363,9 @@ namespace svgio
...
@@ -259,6 +363,9 @@ namespace svgio
// also not directly used are Markers and Patterns, only indirecty used
// also not directly used are Markers and Patterns, only indirecty used
// by reference
// by reference
// #121656# also do not decompose nodes which have display="none" set
// as property
return
;
return
;
}
}
}
}
...
@@ -273,7 +380,7 @@ namespace svgio
...
@@ -273,7 +380,7 @@ namespace svgio
{
{
SvgNode
*
pCandidate
=
rChildren
[
a
];
SvgNode
*
pCandidate
=
rChildren
[
a
];
if
(
pCandidate
)
if
(
pCandidate
&&
Display_none
!=
pCandidate
->
getDisplay
()
)
{
{
drawinglayer
::
primitive2d
::
Primitive2DSequence
aNewTarget
;
drawinglayer
::
primitive2d
::
Primitive2DSequence
aNewTarget
;
...
...
svgio/source/svgreader/svgpatternnode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -275,7 +275,7 @@ namespace svgio
...
@@ -275,7 +275,7 @@ namespace svgio
const
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
SvgPatternNode
::
getPatternPrimitives
()
const
const
drawinglayer
::
primitive2d
::
Primitive2DSequence
&
SvgPatternNode
::
getPatternPrimitives
()
const
{
{
if
(
!
aPrimitives
.
hasElements
())
if
(
!
aPrimitives
.
hasElements
()
&&
Display_none
!=
getDisplay
()
)
{
{
decomposeSvgNode
(
const_cast
<
SvgPatternNode
*
>
(
this
)
->
aPrimitives
,
true
);
decomposeSvgNode
(
const_cast
<
SvgPatternNode
*
>
(
this
)
->
aPrimitives
,
true
);
}
}
...
...
svgio/source/svgreader/svgstyleattributes.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -1079,6 +1079,18 @@ namespace svgio
...
@@ -1079,6 +1079,18 @@ namespace svgio
aSource
=
drawinglayer
::
primitive2d
::
Primitive2DSequence
(
&
xRef
,
1
);
aSource
=
drawinglayer
::
primitive2d
::
Primitive2DSequence
(
&
xRef
,
1
);
}
}
if
(
pTransform
)
{
// create embedding group element with transformation. This applies the given
// transformation to the graphical content, but *not* to mask and/or clip (as needed)
const
drawinglayer
::
primitive2d
::
Primitive2DReference
xRef
(
new
drawinglayer
::
primitive2d
::
TransformPrimitive2D
(
*
pTransform
,
aSource
));
aSource
=
drawinglayer
::
primitive2d
::
Primitive2DSequence
(
&
xRef
,
1
);
}
if
(
getClipPathXLink
().
getLength
())
if
(
getClipPathXLink
().
getLength
())
{
{
// try to access linked ClipPath
// try to access linked ClipPath
...
@@ -1105,17 +1117,6 @@ namespace svgio
...
@@ -1105,17 +1117,6 @@ namespace svgio
if
(
aSource
.
hasElements
())
// test again, applied mask may have lead to empty geometry
if
(
aSource
.
hasElements
())
// test again, applied mask may have lead to empty geometry
{
{
if
(
pTransform
)
{
// create embedding group element with transformation
const
drawinglayer
::
primitive2d
::
Primitive2DReference
xRef
(
new
drawinglayer
::
primitive2d
::
TransformPrimitive2D
(
*
pTransform
,
aSource
));
aSource
=
drawinglayer
::
primitive2d
::
Primitive2DSequence
(
&
xRef
,
1
);
}
// append to current target
// append to current target
drawinglayer
::
primitive2d
::
appendPrimitive2DSequenceToPrimitive2DSequence
(
rTarget
,
aSource
);
drawinglayer
::
primitive2d
::
appendPrimitive2DSequenceToPrimitive2DSequence
(
rTarget
,
aSource
);
}
}
...
@@ -1960,7 +1961,7 @@ namespace svgio
...
@@ -1960,7 +1961,7 @@ namespace svgio
return
0
;
return
0
;
}
}
SvgNumber
SvgStyleAttributes
::
getStrokeWidth
()
const
const
SvgNumber
SvgStyleAttributes
::
getStrokeWidth
()
const
{
{
if
(
mbIsClipPathContent
)
if
(
mbIsClipPathContent
)
{
{
...
@@ -1982,7 +1983,7 @@ namespace svgio
...
@@ -1982,7 +1983,7 @@ namespace svgio
return
SvgNumber
(
1.0
);
return
SvgNumber
(
1.0
);
}
}
SvgNumber
SvgStyleAttributes
::
getStopOpacity
()
const
const
SvgNumber
SvgStyleAttributes
::
getStopOpacity
()
const
{
{
if
(
maStopOpacity
.
isSet
())
if
(
maStopOpacity
.
isSet
())
{
{
...
@@ -1993,7 +1994,7 @@ namespace svgio
...
@@ -1993,7 +1994,7 @@ namespace svgio
return
SvgNumber
(
1.0
);
return
SvgNumber
(
1.0
);
}
}
SvgNumber
SvgStyleAttributes
::
getFillOpacity
()
const
const
SvgNumber
SvgStyleAttributes
::
getFillOpacity
()
const
{
{
if
(
mbIsClipPathContent
)
if
(
mbIsClipPathContent
)
{
{
...
@@ -2015,7 +2016,7 @@ namespace svgio
...
@@ -2015,7 +2016,7 @@ namespace svgio
return
SvgNumber
(
1.0
);
return
SvgNumber
(
1.0
);
}
}
FillRule
SvgStyleAttributes
::
getFillRule
()
const
const
FillRule
SvgStyleAttributes
::
getFillRule
()
const
{
{
if
(
FillRule_notset
!=
maFillRule
)
if
(
FillRule_notset
!=
maFillRule
)
{
{
...
@@ -2056,7 +2057,7 @@ namespace svgio
...
@@ -2056,7 +2057,7 @@ namespace svgio
return
maStrokeDasharray
;
return
maStrokeDasharray
;
}
}
SvgNumber
SvgStyleAttributes
::
getStrokeDashOffset
()
const
const
SvgNumber
SvgStyleAttributes
::
getStrokeDashOffset
()
const
{
{
if
(
maStrokeDashOffset
.
isSet
())
if
(
maStrokeDashOffset
.
isSet
())
{
{
...
@@ -2074,7 +2075,7 @@ namespace svgio
...
@@ -2074,7 +2075,7 @@ namespace svgio
return
SvgNumber
(
0.0
);
return
SvgNumber
(
0.0
);
}
}
StrokeLinecap
SvgStyleAttributes
::
getStrokeLinecap
()
const
const
StrokeLinecap
SvgStyleAttributes
::
getStrokeLinecap
()
const
{
{
if
(
maStrokeLinecap
!=
StrokeLinecap_notset
)
if
(
maStrokeLinecap
!=
StrokeLinecap_notset
)
{
{
...
@@ -2092,7 +2093,7 @@ namespace svgio
...
@@ -2092,7 +2093,7 @@ namespace svgio
return
StrokeLinecap_butt
;
return
StrokeLinecap_butt
;
}
}
StrokeLinejoin
SvgStyleAttributes
::
getStrokeLinejoin
()
const
const
StrokeLinejoin
SvgStyleAttributes
::
getStrokeLinejoin
()
const
{
{
if
(
maStrokeLinejoin
!=
StrokeLinejoin_notset
)
if
(
maStrokeLinejoin
!=
StrokeLinejoin_notset
)
{
{
...
@@ -2110,7 +2111,7 @@ namespace svgio
...
@@ -2110,7 +2111,7 @@ namespace svgio
return
StrokeLinejoin_miter
;
return
StrokeLinejoin_miter
;
}
}
SvgNumber
SvgStyleAttributes
::
getStrokeMiterLimit
()
const
const
SvgNumber
SvgStyleAttributes
::
getStrokeMiterLimit
()
const
{
{
if
(
maStrokeMiterLimit
.
isSet
())
if
(
maStrokeMiterLimit
.
isSet
())
{
{
...
@@ -2128,7 +2129,7 @@ namespace svgio
...
@@ -2128,7 +2129,7 @@ namespace svgio
return
SvgNumber
(
4.0
);
return
SvgNumber
(
4.0
);
}
}
SvgNumber
SvgStyleAttributes
::
getStrokeOpacity
()
const
const
SvgNumber
SvgStyleAttributes
::
getStrokeOpacity
()
const
{
{
if
(
maStrokeOpacity
.
isSet
())
if
(
maStrokeOpacity
.
isSet
())
{
{
...
@@ -2164,7 +2165,7 @@ namespace svgio
...
@@ -2164,7 +2165,7 @@ namespace svgio
return
maFontFamily
;
return
maFontFamily
;
}
}
SvgNumber
SvgStyleAttributes
::
getFontSize
()
const
const
SvgNumber
SvgStyleAttributes
::
getFontSize
()
const
{
{
if
(
maFontSize
.
isSet
())
if
(
maFontSize
.
isSet
())
{
{
...
@@ -2182,7 +2183,7 @@ namespace svgio
...
@@ -2182,7 +2183,7 @@ namespace svgio
return
SvgNumber
(
12.0
);
return
SvgNumber
(
12.0
);
}
}
FontStretch
SvgStyleAttributes
::
getFontStretch
()
const
const
FontStretch
SvgStyleAttributes
::
getFontStretch
()
const
{
{
if
(
maFontStretch
!=
FontStretch_notset
)
if
(
maFontStretch
!=
FontStretch_notset
)
{
{
...
@@ -2214,7 +2215,7 @@ namespace svgio
...
@@ -2214,7 +2215,7 @@ namespace svgio
return
FontStretch_normal
;
return
FontStretch_normal
;
}
}
FontStyle
SvgStyleAttributes
::
getFontStyle
()
const
const
FontStyle
SvgStyleAttributes
::
getFontStyle
()
const
{
{
if
(
maFontStyle
!=
FontStyle_notset
)
if
(
maFontStyle
!=
FontStyle_notset
)
{
{
...
@@ -2232,7 +2233,7 @@ namespace svgio
...
@@ -2232,7 +2233,7 @@ namespace svgio
return
FontStyle_normal
;
return
FontStyle_normal
;
}
}
FontWeight
SvgStyleAttributes
::
getFontWeight
()
const
const
FontWeight
SvgStyleAttributes
::
getFontWeight
()
const
{
{
if
(
maFontWeight
!=
FontWeight_notset
)
if
(
maFontWeight
!=
FontWeight_notset
)
{
{
...
@@ -2264,7 +2265,7 @@ namespace svgio
...
@@ -2264,7 +2265,7 @@ namespace svgio
return
FontWeight_400
;
return
FontWeight_400
;
}
}
TextAlign
SvgStyleAttributes
::
getTextAlign
()
const
const
TextAlign
SvgStyleAttributes
::
getTextAlign
()
const
{
{
if
(
maTextAlign
!=
TextAlign_notset
)
if
(
maTextAlign
!=
TextAlign_notset
)
{
{
...
@@ -2300,7 +2301,7 @@ namespace svgio
...
@@ -2300,7 +2301,7 @@ namespace svgio
return
0
;
return
0
;
}
}
TextDecoration
SvgStyleAttributes
::
getTextDecoration
()
const
const
TextDecoration
SvgStyleAttributes
::
getTextDecoration
()
const
{
{
const
SvgStyleAttributes
*
pDefining
=
getTextDecorationDefiningSvgStyleAttributes
();
const
SvgStyleAttributes
*
pDefining
=
getTextDecorationDefiningSvgStyleAttributes
();
...
@@ -2315,7 +2316,7 @@ namespace svgio
...
@@ -2315,7 +2316,7 @@ namespace svgio
}
}
}
}
TextAnchor
SvgStyleAttributes
::
getTextAnchor
()
const
const
TextAnchor
SvgStyleAttributes
::
getTextAnchor
()
const
{
{
if
(
maTextAnchor
!=
TextAnchor_notset
)
if
(
maTextAnchor
!=
TextAnchor_notset
)
{
{
...
@@ -2360,7 +2361,7 @@ namespace svgio
...
@@ -2360,7 +2361,7 @@ namespace svgio
return
0
;
return
0
;
}
}
rtl
::
OUString
SvgStyleAttributes
::
getMarkerStartXLink
()
const
const
rtl
::
OUString
SvgStyleAttributes
::
getMarkerStartXLink
()
const
{
{
if
(
maMarkerStartXLink
.
getLength
())
if
(
maMarkerStartXLink
.
getLength
())
{
{
...
@@ -2392,7 +2393,7 @@ namespace svgio
...
@@ -2392,7 +2393,7 @@ namespace svgio
return
mpMarkerStartXLink
;
return
mpMarkerStartXLink
;
}
}
rtl
::
OUString
SvgStyleAttributes
::
getMarkerMidXLink
()
const
const
rtl
::
OUString
SvgStyleAttributes
::
getMarkerMidXLink
()
const
{
{
if
(
maMarkerMidXLink
.
getLength
())
if
(
maMarkerMidXLink
.
getLength
())
{
{
...
@@ -2424,7 +2425,7 @@ namespace svgio
...
@@ -2424,7 +2425,7 @@ namespace svgio
return
mpMarkerMidXLink
;
return
mpMarkerMidXLink
;
}
}
rtl
::
OUString
SvgStyleAttributes
::
getMarkerEndXLink
()
const
const
rtl
::
OUString
SvgStyleAttributes
::
getMarkerEndXLink
()
const
{
{
if
(
maMarkerEndXLink
.
getLength
())
if
(
maMarkerEndXLink
.
getLength
())
{
{
...
...
svgio/source/svgreader/svgtoken.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -35,6 +35,7 @@ namespace svgio
...
@@ -35,6 +35,7 @@ namespace svgio
static
rtl
::
OUString
aSVGStrViewBox
(
rtl
::
OUString
::
createFromAscii
(
"viewBox"
));
static
rtl
::
OUString
aSVGStrViewBox
(
rtl
::
OUString
::
createFromAscii
(
"viewBox"
));
static
rtl
::
OUString
aSVGStrTransform
(
rtl
::
OUString
::
createFromAscii
(
"transform"
));
static
rtl
::
OUString
aSVGStrTransform
(
rtl
::
OUString
::
createFromAscii
(
"transform"
));
static
rtl
::
OUString
aSVGStrStyle
(
rtl
::
OUString
::
createFromAscii
(
"style"
));
static
rtl
::
OUString
aSVGStrStyle
(
rtl
::
OUString
::
createFromAscii
(
"style"
));
static
rtl
::
OUString
aSVGStrDisplay
(
rtl
::
OUString
::
createFromAscii
(
"display"
));
// #121656#
static
rtl
::
OUString
aSVGStrD
(
rtl
::
OUString
::
createFromAscii
(
"d"
));
static
rtl
::
OUString
aSVGStrD
(
rtl
::
OUString
::
createFromAscii
(
"d"
));
static
rtl
::
OUString
aSVGStrX
(
rtl
::
OUString
::
createFromAscii
(
"x"
));
static
rtl
::
OUString
aSVGStrX
(
rtl
::
OUString
::
createFromAscii
(
"x"
));
static
rtl
::
OUString
aSVGStrY
(
rtl
::
OUString
::
createFromAscii
(
"y"
));
static
rtl
::
OUString
aSVGStrY
(
rtl
::
OUString
::
createFromAscii
(
"y"
));
...
@@ -178,6 +179,7 @@ namespace svgio
...
@@ -178,6 +179,7 @@ namespace svgio
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrViewBox
,
SVGTokenViewBox
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrViewBox
,
SVGTokenViewBox
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrTransform
,
SVGTokenTransform
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrTransform
,
SVGTokenTransform
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrStyle
,
SVGTokenStyle
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrStyle
,
SVGTokenStyle
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrDisplay
,
SVGTokenDisplay
));
// #121656#
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrD
,
SVGTokenD
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrD
,
SVGTokenD
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrX
,
SVGTokenX
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrX
,
SVGTokenX
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrY
,
SVGTokenY
));
aSVGTokenMapperList
.
insert
(
SVGTokenValueType
(
aSVGStrY
,
SVGTokenY
));
...
...
svgio/source/svgreader/svgusenode.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -151,7 +151,7 @@ namespace svgio
...
@@ -151,7 +151,7 @@ namespace svgio
// try to access link to content
// try to access link to content
const
SvgNode
*
mpXLink
=
getDocument
().
findSvgNodeById
(
maXLink
);
const
SvgNode
*
mpXLink
=
getDocument
().
findSvgNodeById
(
maXLink
);
if
(
mpXLink
)
if
(
mpXLink
&&
Display_none
!=
mpXLink
->
getDisplay
()
)
{
{
// decompose childs
// decompose childs
drawinglayer
::
primitive2d
::
Primitive2DSequence
aNewTarget
;
drawinglayer
::
primitive2d
::
Primitive2DSequence
aNewTarget
;
...
...
svgio/source/svguno/xsvgparser.cxx
Dosyayı görüntüle @
bb9ad24b
...
@@ -151,7 +151,12 @@ namespace svgio
...
@@ -151,7 +151,12 @@ namespace svgio
for
(
sal_uInt32
a
(
0
);
a
<
nCount
;
a
++
)
for
(
sal_uInt32
a
(
0
);
a
<
nCount
;
a
++
)
{
{
rResults
[
a
]
->
decomposeSvgNode
(
aRetval
,
false
);
SvgNode
*
pCandidate
=
rResults
[
a
];
if
(
Display_none
!=
pCandidate
->
getDisplay
())
{
pCandidate
->
decomposeSvgNode
(
aRetval
,
false
);
}
}
}
}
}
else
else
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment