PDFTool  7.0
PtlAnnot.h
1 // PtlAnnot.h
3 // Copyright (C) 2013-2018 Antenna House,Inc.
4 // All rights reserved.
6 #ifndef PDFTK_PTLANNOT_H_
7 #define PDFTK_PTLANNOT_H_
8 
9 #include "PtlRect.h"
10 #include "PtlDate.h"
11 #include "PtlParamString.h"
12 
13 namespace PdfTk {
14 
15 class PtlColor;
16 class PtlColorDeviceRGB;
17 
23 class PDFTK_API PtlAnnot
24 {
25 public:
29  enum ANNOT_TYPE {
30  TYPE_TEXT = 1,
31  TYPE_LINK = 2,
32  TYPE_FREE_TEXT = 3,
33  TYPE_LINE = 4,
34  TYPE_SQUARE = 5,
35  TYPE_CIRCLE = 6,
36  TYPE_POLYGON = 7,
37  TYPE_POLYLINE = 8,
38  TYPE_HIGHLIGHT = 9,
39  TYPE_UNDERLINE = 10,
40  TYPE_SQUIGGLY = 11,
41  TYPE_STRIKEOUT = 12,
42  TYPE_STAMP = 13,
43  TYPE_CARET = 14,
44  TYPE_INK = 15,
45  TYPE_POPUP = 16,
46  TYPE_FILE_ATTACHMENT = 17,
47  TYPE_SOUND = 18,
48  TYPE_MOVIE = 19,
49  TYPE_WIDGET = 20,
50  TYPE_SCREEN = 21,
51  TYPE_PRINTER_MARK = 22,
52  TYPE_TRAP_NETWORK = 23,
53  TYPE_WATERMARK = 24,
54  TYPE_3D = 25,
55  TYPE_REDACT = 26,
56  TYPE_PROJECTION = 27,
57  TYPE_RICHMEDIA = 28,
58  TYPE_UNKNOWN = 100
59  };
60 
64  enum ANNOT_FLAGS {
65  FLAG_INVISIBLE = 0x00000001,
66  FLAG_HIDDEN = 0x00000002,
67  FLAG_PRINT = 0x00000004,
68  FLAG_NOZOOM = 0x00000008,
69  FLAG_NOROTATE = 0x00000010,
70  FLAG_NOVIEW = 0x00000020,
71  FLAG_READONLY = 0x00000040,
72  FLAG_LOCKED = 0x00000080,
73  FLAG_TOGGLE_NOVIEW = 0x00000100,
74  FLAG_LOCKED_CONTENTS = 0x00000200
75  };
76 
80  enum BORDER_STYLE {
81  BORDER_SOLID = 1,
82  BORDER_DASHED = 2,
83  BORDER_BEVELED = 3,
84  BORDER_INSET = 4,
85  BORDER_UNDERLINE = 5
86  };
87 
92  BORDER_WIDTH_NONE = 0,
93  BORDER_WIDTH_THIN = 1,
94  BORDER_WIDTH_MIDDLE = 2,
95  BORDER_WIDTH_THICK = 3
96  };
97 
98 private:
99  int m_dataAnnot;
100 public:
101  int getHandle() const;
102 
103 public:
111 
118  PtlAnnot(const PtlAnnot& obj);
119 
123  virtual ‾PtlAnnot();
124 
125 public:
132 
133 public:
140 
141 public:
149  bool isMarkup() const;
150 
151 public:
160 
171  void setRect(const PtlRect& rectMM);
172 
173 public:
188 
202  void setTextContents(const PtlParamString& contents);
203 
204 public:
211 
217  void setDate(const PtlDate& date);
218 
219 public:
228 
242  void setAnnotFlags(int flag);
243 
244 public:
264  const PtlColor& getColor();
265 
285  void setColor(const PtlColorDeviceRGB& color);
286 
301 
316 
317 public:
324 
331 
332 public:
341 
350 
357 
363  void setBorderWidthNative(float width);
364 };
365 
366 } // namespace PdfTk
367 
368 #endif // PDFTK_PTLANNOT_H_
PdfTk::PtlAnnot::setBorderWidth
void setBorderWidth(BORDER_LINE_WIDTH width)
境界線幅をBORDER_LINE_WIDTHで設定。
PdfTk::PtlAnnot::getBorderWidth
BORDER_LINE_WIDTH getBorderWidth()
境界線幅をBORDER_LINE_WIDTHで取得。
PdfTk::PtlAnnot::getInteriorColor
const PtlColor & getInteriorColor()
内部色を取得。
PdfTk::PtlAnnot::getDate
PtlDate getDate()
日時を取得。
PdfTk::PtlAnnot::getBorderStyle
BORDER_STYLE getBorderStyle()
境界線スタイルを取得。
PdfTk::PtlColor
PDFの色を表現したクラスです。 すべての色クラスのベースクラスです。
Definition: PtlColor.h:19
PdfTk::PtlAnnot::setBorderStyle
void setBorderStyle(BORDER_STYLE style)
境界線スタイルを設定。
PdfTk::PtlAnnot::setRect
void setRect(const PtlRect &rectMM)
矩形座標を設定。
PdfTk::PtlAnnot::setInteriorColor
void setInteriorColor(const PtlColorDeviceRGB &color)
内部色を設定。
PdfTk::PtlAnnot::BORDER_STYLE
BORDER_STYLE
境界線スタイル
Definition: PtlAnnot.h:80
PdfTk::PtlAnnot::ANNOT_FLAGS
ANNOT_FLAGS
注釈フラグ。
Definition: PtlAnnot.h:64
PdfTk::PtlAnnot::setAnnotFlags
void setAnnotFlags(int flag)
注釈フラグを設定。
PdfTk::PtlAnnot::getBorderWidthNative
float getBorderWidthNative()
注釈に設定してある境界線幅を直接取得。
PdfTk::PtlAnnot::operator=
PtlAnnot & operator=(const PtlAnnot &obj)
コピーオペレータ alias copy
PdfTk::PtlAnnot::PtlAnnot
PtlAnnot(const PtlAnnot &obj)
コピーコンストラクタ alias copy
PdfTk::PtlAnnot::setTextContents
void setTextContents(const PtlParamString &contents)
内容を設定。
PdfTk::PtlAnnot::setBorderWidthNative
void setBorderWidthNative(float width)
注釈の境界線幅を数値で直接設定。
PdfTk::PtlAnnot::getAnnotFlags
int getAnnotFlags()
注釈フラグを取得。
PdfTk::PtlAnnot::PtlAnnot
PtlAnnot(ANNOT_TYPE type)
コンストラクタ
PdfTk::PtlAnnot::getType
ANNOT_TYPE getType() const
注釈タイプを取得。
PdfTk::PtlAnnot
PDFの注釈を表現したクラスです。 すべての注釈クラスのベースクラスです。
Definition: PtlAnnot.h:24
PdfTk::PtlParamString
文字列を扱うクラスです。
Definition: PtlParamString.h:27
PdfTk::PtlAnnot::getRect
PtlRect getRect()
矩形座標を取得。
PdfTk::PtlAnnot::getColor
const PtlColor & getColor()
色を取得。
PdfTk::PtlAnnot::BORDER_LINE_WIDTH
BORDER_LINE_WIDTH
境界線幅
Definition: PtlAnnot.h:91
PdfTk::PtlAnnot::ANNOT_TYPE
ANNOT_TYPE
注釈のタイプ
Definition: PtlAnnot.h:29
PdfTk::PtlAnnot::setDate
void setDate(const PtlDate &date)
日時を設定。
PdfTk::PtlColorDeviceRGB
PDFのDeviceGray色を表現したクラスです。
Definition: PtlColorDeviceRGB.h:18
PdfTk::PtlRect
PDFの矩形座標を表現したクラスです。 矩形は左下(left,bottom)、右上(right,top)で表現されます。 座標の単位はmmで原点(0,0)は左下となりますので注意してください。
Definition: PtlRect.h:20
PdfTk::PtlDate
PDFの日時情報を表現したクラスです。
Definition: PtlDate.h:18
PdfTk::PtlAnnot::getTextContents
PtlParamString getTextContents()
内容を取得。
PdfTk::PtlAnnot::‾PtlAnnot
virtual ‾PtlAnnot()
デストラクタ
PdfTk::PtlAnnot::isMarkup
bool isMarkup() const
マークアップ注釈か否かを取得。
PdfTk::PtlAnnot::setColor
void setColor(const PtlColorDeviceRGB &color)
色を設定。