📄 font.h
字号:
void SetIndex(unsigned16_t fntidx); unsigned16_t GetIndex(void); /* FONT Index wrappers*/ void SetName(std::string fntname); std::string GetName(void); /* FONT height wrappers*/ void SetHeight(unsigned16_t fntheight); unsigned16_t GetHeight(void); /* FONT boldstyle wrappers*/ void SetBoldStyle(boldness_option_t fntboldness); unsigned16_t GetBoldStyle(void); /* FONT underline wrappers*/ void SetUnderlineStyle(underline_option_t fntunderline); unsigned8_t GetUnderlineStyle(void); /* FONT script wrappers*/ void SetScriptStyle(script_option_t fntscript); unsigned16_t GetScriptStyle(void); /* FONT script wrappers*/ void SetColor(color_name_t fntcolor); unsigned16_t GetColor(void); void SetItalic(bool italic); void SetStrikeout(bool so); /* FONT attributes wrappers */ void SetAttributes(unsigned16_t attr); unsigned16_t GetAttributes(void); // Machintoch only void SetOutline(bool ol); void SetShadow(bool sh); // Miscellaneous; void SetFamily(unsigned8_t fam); unsigned8_t GetFamily(void); void SetCharset(unsigned8_t chrset); unsigned8_t GetCharset(void); unsigned32_t GetSignature(); void operator=(font_t& right); private: unsigned16_t index; std::string name; unsigned16_t height; unsigned16_t boldstyle; unsigned8_t underline; unsigned16_t script; unsigned16_t color; unsigned16_t attributes; unsigned8_t family; unsigned8_t charset; unsigned16_t m_usage_counter; void UpdateSignature(); unsigned32_t m_signature; bool m_sigchanged; static const unsigned16_t BOLD_OPTION_TABLE[]; static const unsigned16_t SCRIPT_OPTION_TABLE[]; static const unsigned8_t UNDERLINE_OPTION_TABLE[]; static const unsigned16_t COLOR_OPTION_TABLE[]; }; class fontbysig { public: bool operator()(font_t* a, font_t* b) const { return (a->GetSignature() < b->GetSignature()); }; }; typedef std::set<xlslib_core::font_t*,fontbysig XLSLIB_DFLT_ALLOCATOR> Font_Set_t; typedef Font_Set_t::iterator Font_Set_Itor_t; typedef std::list<xlslib_core::font_t* XLSLIB_DFLT_ALLOCATOR> Font_List_t; typedef Font_List_t::iterator Font_List_Itor_t; class CFont: public CRecord { protected: public: CFont(std::string name = FONT_DFLT_FONTNAME, unsigned16_t height = FONT_DFLT_HEIGHT, unsigned16_t boldstyle = FONT_BOLDNESS_NORMAL, unsigned8_t underline = FONT_UNDERLINE_NONE, unsigned16_t script = FONT_SCRIPT_NONE, unsigned16_t color = FONT_DFLT_PALETTE, unsigned16_t attributes = FONT_DFLT_ATTRIBUTES, unsigned8_t family = FONT_DFLT_FAMILY, unsigned8_t charset = FONT_DFLT_CHARSET ); CFont(font_t* fontdef); ~CFont(); int SetName(std::string& name); int GetName(std::string& name); int SetBoldValue(unsigned16_t boldstyle); unsigned16_t GetBoldValue(void); int SetUnderlineStyle(unsigned8_t ul); unsigned8_t GetUnderlineStyle(void); int SetScriptStyle(unsigned16_t script); unsigned16_t GetScriptStyle(void); int SetColorIndex(unsigned16_t color); unsigned16_t GetColorIndex(void); int SetAttributes(unsigned16_t attr); unsigned16_t GetAttributes(void); int SetFamily(unsigned8_t family); unsigned8_t GetFamily(void); int SetCharSet(unsigned8_t charset); unsigned8_t GetCharSet(void); };}#endif //FONT_H/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * $Log: font.h,v $ * Revision 1.1.1.1 2004/08/27 16:31:46 darioglz * Initial Import. * * Revision 1.17 2004/04/06 22:35:43 dgonzalez * + Added namespace xlslib_core to isolate the core xlslib library names. * * Revision 1.16 2004/04/06 15:10:24 dgonzalez * + Added keys to generate distributable headers * * Revision 1.15 2004/01/29 03:18:55 dgonzalez * + Using the config.h file * * Revision 1.14 2004/01/15 17:17:31 dgonzalez * + The memory allocator used by STL-containers is defined #conditionally. * * Revision 1.13 2003/12/09 19:04:21 dgonzalez * + Not a real difference * * Revision 1.12 2003/12/05 01:18:27 dgonzalez * + Common include files were placed in common.h (and this file was * included instead. * + The font_interface was redefined to something lighter. Due name * clashing with xf_i when these interfaces were defined as parent of * cell_t. * + Signature was implemented to font_t. Any interface function that modi * fies any data member of the class set a flag for later signature * update. The signature is CRC based and is used to uniquify font_t * instances inside an stl-set-container. * + The fontbysig functor was added for being used in the set container * as a sorting criteria. It is based on the signature. * + The stl-set-container of pointers to font_t* typedef was defined here. * * Revision 1.11 2003/11/29 17:53:49 dgonzalez * + The larger functions were uninlined. * + The virtual pure interface font_i was defined * * Revision 1.10 2003/11/28 01:31:30 dgonzalez * + The MarkUsed functionality was added (similar to xf_t) * * Revision 1.9 2003/11/26 16:49:26 dgonzalez * + Indented and untabified * * Revision 1.8 2003/11/04 17:07:58 dgonzalez * + Changed the initialization of CGlobalRecord's defaults for compatibility with * MSVC++. The original code was left commented out for future use. * * Revision 1.7 2003/11/04 01:04:42 dgonzalez * + All the list containers changed to manage pointers. * + Valgrind utility reports 960 posible memory leaks. TODO: Verify it * * Revision 1.6 2003/11/03 16:58:56 dgonzalez * + The following typedefed enums were added to improve typechecking in the font * definition: * - boldness_option_t * - script_option_t * - underline_option_t * + Font colors were defined based in the color codes defined in the module colors.h. * + font_t is now implemented as a class. A full set of wrapper functions were implemented * inline for Get/Set font properties. * + font_init_t struct was added for storing initialization values of default font of a * document. * + The following lookup tables were added to retrieve the field's options used for setting * the font's values. * * Revision 1.5 2003/10/24 23:24:32 dgonzalez * + Added CVS-Keyword substitution. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -