WP6FontDescriptorPacket.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 /* libwpd
3  * Version: MPL 2.0 / LGPLv2.1+
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  * Major Contributor(s):
10  * Copyright (C) 2002 William Lachance (wrlach@gmail.com)
11  * Copyright (C) 2002 Marc Maurer (uwog@uwog.net)
12  *
13  * For minor contributions see the git repository.
14  *
15  * Alternatively, the contents of this file may be used under the terms
16  * of the GNU Lesser General Public License Version 2.1 or later
17  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
18  * applicable instead of those above.
19  *
20  * For further information visit http://libwpd.sourceforge.net
21  */
22 
23 /* "This product is not manufactured, approved, or supported by
24  * Corel Corporation or Corel Corporation Limited."
25  */
26 
27 #ifndef WP6FONTDESCRIPTORPACKET_H
28 #define WP6FONTDESCRIPTORPACKET_H
29 
30 #include <libwpd/libwpd.h>
31 #include "WP6PrefixDataPacket.h"
32 
34 {
35 public:
36  WP6FontDescriptorPacket(WPXInputStream *input, WPXEncryption *encryption, int id, uint32_t dataOffset, uint32_t dataSize);
38  void _readContents(WPXInputStream *input, WPXEncryption *encryption);
39  const WPXString &getFontName() const
40  {
41  return m_fontName;
42  }
43 
44 private:
45  void _readFontName(WPXInputStream *input, WPXEncryption *encryption);
46 
49  uint16_t m_characterWidth;
50  uint16_t m_ascenderHeight;
51  uint16_t m_xHeight;
53  uint16_t m_italicsAdjust;
54  uint8_t m_primaryFamilyId; // family id's are supposed to be one unified element, but I split them up to ease parsing
56 
59  uint8_t m_width;
60  uint8_t m_weight;
61  uint8_t m_attributes;
64  uint8_t m_fill; // fill byte
65  uint8_t m_fontType;
67 
68  uint16_t m_fontNameLength;
69 
71 };
72 #endif
73 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
uint16_t m_italicsAdjust
Definition: WP6FontDescriptorPacket.h:53
Definition: WPXString.h:32
uint16_t m_fontNameLength
Definition: WP6FontDescriptorPacket.h:68
uint8_t m_fontSourceFileType
Definition: WP6FontDescriptorPacket.h:66
uint8_t m_fontType
Definition: WP6FontDescriptorPacket.h:65
const WPXString & getFontName() const
Definition: WP6FontDescriptorPacket.h:39
uint8_t m_primaryCharacterSet
Definition: WP6FontDescriptorPacket.h:58
uint8_t m_classification
Definition: WP6FontDescriptorPacket.h:63
WP6FontDescriptorPacket(WPXInputStream *input, WPXEncryption *encryption, int id, uint32_t dataOffset, uint32_t dataSize)
Definition: WP6FontDescriptorPacket.cpp:40
uint8_t m_attributes
Definition: WP6FontDescriptorPacket.h:61
uint16_t m_ascenderHeight
Definition: WP6FontDescriptorPacket.h:50
uint8_t m_width
Definition: WP6FontDescriptorPacket.h:59
uint8_t m_primaryFamilyId
Definition: WP6FontDescriptorPacket.h:54
WP6FontDescriptorPacket & operator=(const WP6FontDescriptorPacket &)
uint8_t m_fill
Definition: WP6FontDescriptorPacket.h:64
uint8_t m_primaryFamilyMemberId
Definition: WP6FontDescriptorPacket.h:55
uint16_t m_xHeight
Definition: WP6FontDescriptorPacket.h:51
~WP6FontDescriptorPacket()
Definition: WP6FontDescriptorPacket.cpp:65
Definition: WP6FontDescriptorPacket.h:33
WPXString m_fontName
Definition: WP6FontDescriptorPacket.h:70
void _readFontName(WPXInputStream *input, WPXEncryption *encryption)
Definition: WP6FontDescriptorPacket.cpp:96
void _readContents(WPXInputStream *input, WPXEncryption *encryption)
Definition: WP6FontDescriptorPacket.cpp:69
uint8_t m_weight
Definition: WP6FontDescriptorPacket.h:60
Definition: WPXEncryption.h:35
uint16_t m_characterWidth
Definition: WP6FontDescriptorPacket.h:49
uint8_t m_scriptingSystem
Definition: WP6FontDescriptorPacket.h:57
uint8_t m_generalCharacteristics
Definition: WP6FontDescriptorPacket.h:62
Definition: WP6PrefixDataPacket.h:36
uint16_t m_descenderHeight
Definition: WP6FontDescriptorPacket.h:52
Definition: WPXStream.h:36

Generated for libwpd by doxygen 1.8.5