Foxit PDF SDK
fs_headerfooter.h
Go to the documentation of this file.
1 
15 #ifndef FS_HEADERFOOTER_H_
16 #define FS_HEADERFOOTER_H_
17 
18 #include "common/fs_common.h"
19 
25 namespace foxit {
29 namespace pdf {
35 class PageNumberRange FS_FINAL : public Object {
36  public:
48  , filter(filter) {}
49 
52  : start_number(-1)
53  , end_number(-1)
54  , filter(foxit::common::Range::e_All) {}
55 
61  PageNumberRange(const PageNumberRange& page_range)
62  : start_number(page_range.start_number)
63  , end_number(page_range.end_number)
64  , filter(page_range.filter) {}
65 
74  start_number = page_range.start_number;
75  end_number = page_range.end_number;
76  filter = page_range.filter;
77  return *this;
78  }
79 
91  this->start_number = start_number;
92  this->end_number = end_number;
93  this->filter = filter;
94  }
95 
105 };
106 
113 class HeaderFooterContent FS_FINAL : public Object {
114  public:
134 
137 
150 
165  return *this;
166  }
167 
183  this->header_left_content = header_left_content;
184  this->header_center_content = header_center_content;
185  this->header_right_content = header_right_content;
186  this->footer_left_content = footer_left_content;
187  this->footer_center_content = footer_center_content;
188  this->footer_right_content = footer_right_content;
189  }
190 
203 };
204 
206 class HeaderFooter FS_FINAL : public Object {
207  public:
232  : font(font)
240  , content(content)
243  , is_replace_font(true) {}
244 
247  : text_size(0)
248  , text_color(0)
249  , has_text_shrinked(false)
250  , has_fixedsize_for_print(false)
251  , start_page_number(0)
252  , is_to_embed_font(false)
253  , is_underline(false)
254  , is_replace_font(true) {
255  page_margin = RectF(72.0, 36.0, 72.0, 36.0);
256  }
257 
264  : font(other.font)
265  , text_size(other.text_size)
266  , text_color(other.text_color)
267  , page_range(other.page_range)
268  , page_margin(other.page_margin)
272  , content(other.content)
274  , is_underline(other.is_underline)
275  , is_replace_font(other.is_replace_font) {}
276 
285  font = other.font;
286  text_size = other.text_size;
287  text_color = other.text_color;
288  page_range = other.page_range;
289  page_margin = other.page_margin;
293  content = other.content;
295  is_underline = other.is_underline;
297  return *this;
298  }
299 
326  this->font = font;
327  this->text_size = text_size;
328  this->text_color = text_color;
329  this->page_range = page_range;
330  this->page_margin = page_margin;
331  this->has_text_shrinked = has_text_shrinked;
332  this->has_fixedsize_for_print = has_fixedsize_for_print;
333  this->start_page_number = start_page_number;
334  this->content = content;
335  this->is_to_embed_font = is_to_embed_font;
336  this->is_underline = is_underline;
337  this->is_replace_font = true;
338  }
339 
348 
350  float text_size;
351 
354 
362 
380 
383 
386 
395 
398 
401 
404 
407 };
408 
413 class HeaderFooterContentGenerator FS_FINAL : public Base {
414  public:
420  typedef enum _DateFormatType {
463  } DateFormatType;
464 
470  typedef enum _PageNumberFormat {
482 
483 
484  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
485  explicit HeaderFooterContentGenerator(FS_HANDLE handle);
486 
489 
492 
499 
508 
516  bool operator==(const HeaderFooterContentGenerator& other) const;
517 
525  bool operator!=(const HeaderFooterContentGenerator& other) const;
526 
534  bool IsEmpty() const;
535 
549  void AddDate(DateFormatType format_type);
550 
564  void AddPageNumber(PageNumberFormat format_type);
565 
573  void AddString(const WString& new_string);
574 
582  void Clear();
583 
590 };
591 
592 } // namespace pdf
593 } // namespace foxit
594 
595 #endif // FS_HEADERFOOTER_H_
foxit::FS_HANDLE
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:214
foxit::Object
CFX_Object Object
Object type.
Definition: fs_basictypes.h:221
fs_common.h
Header file for common definitions and classes.
foxit::pdf::PageNumberRange::Set
void Set(int32 start_number, int32 end_number, foxit::common::Range::Filter filter)
Set value.
Definition: fs_headerfooter.h:90
foxit::pdf::PageNumberRange::PageNumberRange
PageNumberRange(const PageNumberRange &page_range)
Constructor, with another page number range object.
Definition: fs_headerfooter.h:61
foxit::pdf::PageNumberRange::end_number
int32 end_number
Page number of the end page in current range, starting from 1.
Definition: fs_headerfooter.h:99
foxit::pdf::PageNumberRange
Definition: fs_headerfooter.h:35
foxit::pdf::PageNumberRange::start_number
int32 start_number
Page number of the start page in current range, starting from 1.
Definition: fs_headerfooter.h:97
foxit
Foxit namespace.
Definition: fs_taggedpdf.h:27
CFX_FloatRect
Definition: fx_coordinates.h:771
foxit::RGB
uint32 RGB
RGB color type, 24 bits, ((b) | ((g) << 8) | ((r) << 16)))
Definition: fs_basictypes.h:212
foxit::int32
FX_INT32 int32
32-bit signed integer.
Definition: fs_basictypes.h:194
foxit::pdf::PageNumberRange::operator=
PageNumberRange & operator=(const PageNumberRange &page_range)
Assign operator.
Definition: fs_headerfooter.h:73
foxit::common::Font
Definition: fs_common.h:1391
foxit::pdf::PageNumberRange::filter
foxit::common::Range::Filter filter
Filter type to decide which page numbers of this range would be used. Please refer to values starting...
Definition: fs_headerfooter.h:104
CFX_WideString
WIDE STRING CLASS.
Definition: fx_string.h:1452
foxit::common::Range::Filter
Filter
Enumeration for range filter.
Definition: fs_common.h:1243
foxit::RectF
CFX_FloatRect RectF
Rectangle, in float.
Definition: fs_basictypes.h:451
foxit::pdf::PageNumberRange::PageNumberRange
PageNumberRange()
Constructor.
Definition: fs_headerfooter.h:51
foxit::Base
Definition: fs_basictypes.h:427
foxit::pdf::PageNumberRange::PageNumberRange
PageNumberRange(int32 start_number, int32 end_number, foxit::common::Range::Filter filter)
Constructor, with parameters.
Definition: fs_headerfooter.h:45