LibreOffice Module vcl (master)
1
include
vcl
pdf
PDFAnnotationMarker.hxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/*
3
* This file is part of the LibreOffice project.
4
*
5
* This Source Code Form is subject to the terms of the Mozilla Public
6
* License, v. 2.0. If a copy of the MPL was not distributed with this
7
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
*
9
*/
10
11
#pragma once
12
13
#include <
vcl/dllapi.h
>
14
#include <
tools/color.hxx
>
15
#include <
basegfx/polygon/b2dpolygon.hxx
>
16
#include <
basegfx/point/b2dpoint.hxx
>
17
18
namespace
vcl::pdf
19
{
20
struct
VCL_DLLPUBLIC
PDFAnnotationMarker
21
{
22
PDFAnnotationMarker
()
23
:
mnWidth
(0.0f)
24
,
maFillColor
(
COL_TRANSPARENT
)
25
{
26
}
27
28
float
mnWidth
;
29
Color
maFillColor
;
30
};
31
32
struct
VCL_DLLPUBLIC
PDFAnnotationMarkerCircle
:
public
PDFAnnotationMarker
33
{
34
};
35
36
struct
VCL_DLLPUBLIC
PDFAnnotationMarkerSquare
:
public
PDFAnnotationMarker
37
{
38
};
39
40
struct
VCL_DLLPUBLIC
PDFAnnotationMarkerInk
:
public
PDFAnnotationMarker
41
{
42
std::vector<basegfx::B2DPolygon>
maStrokes
;
43
};
44
45
struct
VCL_DLLPUBLIC
PDFAnnotationMarkerPolygon
:
public
PDFAnnotationMarker
46
{
47
basegfx::B2DPolygon
maPolygon
;
48
};
49
50
struct
VCL_DLLPUBLIC
PDFAnnotationMarkerLine
:
public
PDFAnnotationMarker
51
{
52
basegfx::B2DPoint
maLineStart
;
53
basegfx::B2DPoint
maLineEnd
;
54
};
55
56
enum class
PDFTextMarkerType
57
{
58
Highlight
,
59
Underline
,
60
Squiggly
,
61
StrikeOut
62
};
63
64
struct
VCL_DLLPUBLIC
PDFAnnotationMarkerHighlight
:
public
PDFAnnotationMarker
65
{
66
std::vector<basegfx::B2DPolygon>
maQuads
;
67
PDFTextMarkerType
meTextMarkerType
;
68
69
PDFAnnotationMarkerHighlight
(
PDFTextMarkerType
eTextMarkerType)
70
: meTextMarkerType(eTextMarkerType)
71
{
72
}
73
};
74
75
}
// namespace vcl::pdf
76
77
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
AxFontFlags::Underline
@ Underline
b2dpoint.hxx
b2dpolygon.hxx
Color
basegfx::B2DPoint
basegfx::B2DPolygon
color.hxx
COL_TRANSPARENT
constexpr ::Color COL_TRANSPARENT(ColorTransparency, 0xFF, 0xFF, 0xFF, 0xFF)
dllapi.h
VCL_DLLPUBLIC
#define VCL_DLLPUBLIC
Definition:
dllapi.h:29
SystemColorType::Highlight
@ Highlight
vcl::pdf
Definition:
pdfcompat.cxx:17
vcl::pdf::PDFTextMarkerType
PDFTextMarkerType
Definition:
PDFAnnotationMarker.hxx:57
vcl::pdf::PDFTextMarkerType::Squiggly
@ Squiggly
vcl::pdf::PDFTextMarkerType::StrikeOut
@ StrikeOut
maFillColor
uno::Sequence< double > maFillColor
mnWidth
double mnWidth
vcl::pdf::PDFAnnotationMarkerCircle
Definition:
PDFAnnotationMarker.hxx:33
vcl::pdf::PDFAnnotationMarkerHighlight
Definition:
PDFAnnotationMarker.hxx:65
vcl::pdf::PDFAnnotationMarkerHighlight::PDFAnnotationMarkerHighlight
PDFAnnotationMarkerHighlight(PDFTextMarkerType eTextMarkerType)
Definition:
PDFAnnotationMarker.hxx:69
vcl::pdf::PDFAnnotationMarkerHighlight::meTextMarkerType
PDFTextMarkerType meTextMarkerType
Definition:
PDFAnnotationMarker.hxx:67
vcl::pdf::PDFAnnotationMarkerHighlight::maQuads
std::vector< basegfx::B2DPolygon > maQuads
Definition:
PDFAnnotationMarker.hxx:66
vcl::pdf::PDFAnnotationMarkerInk
Definition:
PDFAnnotationMarker.hxx:41
vcl::pdf::PDFAnnotationMarkerInk::maStrokes
std::vector< basegfx::B2DPolygon > maStrokes
Definition:
PDFAnnotationMarker.hxx:42
vcl::pdf::PDFAnnotationMarkerLine
Definition:
PDFAnnotationMarker.hxx:51
vcl::pdf::PDFAnnotationMarkerLine::maLineEnd
basegfx::B2DPoint maLineEnd
Definition:
PDFAnnotationMarker.hxx:53
vcl::pdf::PDFAnnotationMarkerLine::maLineStart
basegfx::B2DPoint maLineStart
Definition:
PDFAnnotationMarker.hxx:52
vcl::pdf::PDFAnnotationMarkerPolygon
Definition:
PDFAnnotationMarker.hxx:46
vcl::pdf::PDFAnnotationMarkerPolygon::maPolygon
basegfx::B2DPolygon maPolygon
Definition:
PDFAnnotationMarker.hxx:47
vcl::pdf::PDFAnnotationMarkerSquare
Definition:
PDFAnnotationMarker.hxx:37
vcl::pdf::PDFAnnotationMarker
Definition:
PDFAnnotationMarker.hxx:21
vcl::pdf::PDFAnnotationMarker::maFillColor
Color maFillColor
Definition:
PDFAnnotationMarker.hxx:29
vcl::pdf::PDFAnnotationMarker::mnWidth
float mnWidth
Definition:
PDFAnnotationMarker.hxx:28
vcl::pdf::PDFAnnotationMarker::PDFAnnotationMarker
PDFAnnotationMarker()
Definition:
PDFAnnotationMarker.hxx:22
Generated on Sun Jul 30 2023 04:34:51 for LibreOffice Module vcl (master) by
1.9.3