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
9b1ceabd
Kaydet (Commit)
9b1ceabd
authored
Ock 01, 2014
tarafından
Andrzej Hunt
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
EMF+: actually use lineJoin attribute for polygons.
Change-Id: I5b369703333332598353d9817f0253bbe5fc3601
üst
2b3b4d40
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
10 deletions
+18
-10
emfplus.cxx
cppcanvas/source/mtfrenderer/emfplus.cxx
+18
-10
No files found.
cppcanvas/source/mtfrenderer/emfplus.cxx
Dosyayı görüntüle @
9b1ceabd
...
...
@@ -623,6 +623,19 @@ namespace cppcanvas
return
rendering
::
PathCapType
::
BUTT
;
}
sal_Int8
lcl_convertLineJoinType
(
sal_uInt32
nEmfLineJoin
)
{
switch
(
nEmfLineJoin
)
{
case
EmfPlusLineJoinTypeMiter
:
// fall-through
case
EmfPlusLineJoinTypeMiterClipped
:
return
rendering
::
PathJoinType
::
MITER
;
case
EmfPlusLineJoinTypeBevel
:
return
rendering
::
PathJoinType
::
BEVEL
;
case
EmfPlusLineJoinTypeRound
:
return
rendering
::
PathJoinType
::
ROUND
;
}
assert
(
false
);
// Line Join type isn't in specification.
return
0
;
}
struct
EMFPCustomLineCap
:
public
EMFPObject
{
sal_uInt32
type
;
...
...
@@ -644,14 +657,7 @@ namespace cppcanvas
{
aAttributes
.
StartCapType
=
lcl_convertStrokeCap
(
strokeStartCap
);
aAttributes
.
EndCapType
=
lcl_convertStrokeCap
(
strokeEndCap
);
switch
(
strokeJoin
)
{
case
EmfPlusLineJoinTypeMiter
:
// fall-through
case
EmfPlusLineJoinTypeMiterClipped
:
aAttributes
.
JoinType
=
rendering
::
PathJoinType
::
MITER
;
break
;
case
EmfPlusLineJoinTypeBevel
:
aAttributes
.
JoinType
=
rendering
::
PathJoinType
::
BEVEL
;
break
;
case
EmfPlusLineJoinTypeRound
:
aAttributes
.
JoinType
=
rendering
::
PathJoinType
::
ROUND
;
break
;
}
aAttributes
.
JoinType
=
lcl_convertLineJoinType
(
strokeJoin
);
aAttributes
.
MiterLimit
=
miterLimit
;
}
...
...
@@ -789,8 +795,10 @@ namespace cppcanvas
rStrokeAttributes
.
StrokeWidth
=
fabs
((
rState
.
mapModeTransform
*
rR
.
MapSize
(
width
==
0.0
?
0.05
:
width
,
0
)).
getLength
());
}
void
SetStroke
Dashing
(
rendering
::
StrokeAttributes
&
rStrokeAttributes
)
void
SetStroke
Attributes
(
rendering
::
StrokeAttributes
&
rStrokeAttributes
)
{
rStrokeAttributes
.
JoinType
=
lcl_convertLineJoinType
(
lineJoin
);
if
(
dashStyle
!=
EmfPlusLineStyleSolid
)
{
const
float
dash
[]
=
{
3
,
3
};
...
...
@@ -1395,7 +1403,7 @@ namespace cppcanvas
// but eg. dashing has to be additionally set only on the
// polygon
rendering
::
StrokeAttributes
aPolygonAttributes
(
aCommonAttributes
);
pen
->
SetStroke
Dashing
(
aPolygonAttributes
);
pen
->
SetStroke
Attributes
(
aPolygonAttributes
);
basegfx
::
B2DPolyPolygon
aFinalPolyPolygon
;
...
...
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