libwps_tools_win.h
Go to the documentation of this file.
1 /* -*- Mode: C++; c-default-style: "k&r"; indent-tabs-mode: nil; tab-width: 2; c-basic-offset: 2 -*- */
2 /* libwps
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) 2009, 2011 Alonso Laurent (alonso@loria.fr)
11  * Copyright (C) 2006, 2007 Andrew Ziem
12  * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
13  * Copyright (C) 2004 Marc Maurer (uwog@uwog.net)
14  * Copyright (C) 2003-2005 William Lachance (william.lachance@sympatico.ca)
15  *
16  * For minor contributions see the git repository.
17  *
18  * Alternatively, the contents of this file may be used under the terms
19  * of the GNU Lesser General Public License Version 2.1 or later
20  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
21  * applicable instead of those above.
22  *
23  * For further information visit http://libwps.sourceforge.net
24  */
25 
26 /* This header contains code specific to windows file :
27  * - a class used to convert DOS/Win3 font characters in unicode
28  * - a class used to defined the text Language
29  */
30 
31 #ifndef WPS_WIN
32 # define WPS_WIN
33 
34 # include <string>
35 
36 # include "libwps_internal.h"
37 
39 namespace libwps_tools_win
40 {
42 class Font
43 {
44 public:
53 
55 
61 
63  UNKNOWN
64  };
65  // CP_10006, CP_10007, CP_10029, CP_10079, CP_10081
67  static unsigned long unicode(unsigned char c, Type type);
69  static librevenge::RVNGString unicodeString(const unsigned char *p, unsigned long size, Type type, bool skipUnknown=true);
71  static librevenge::RVNGString unicodeString(std::string const &text, Type type);
73  static librevenge::RVNGString unicodeString(librevenge::RVNGInputStream *stream, unsigned long size, Type type);
75  static Type getTypeForOEM(int oem);
77  static Type getTypeForString(char const *encoding);
83  static Type getFontType(librevenge::RVNGString &name);
85  static librevenge::RVNGString getTypeName(Type type);
86 protected:
87 };
88 
89 // see http://msdn.microsoft.com/en-us/library/bb213877.aspx (Community Content)
91 namespace Language
92 {
94 std::string name(long id);
96 std::string localeName(long id);
98 void addLocaleName(long id, librevenge::RVNGPropertyList &propList);
100 long getDefault();
101 }
102 
103 }
104 
105 
106 #endif
107 // vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
libwps_tools_win::Font::LICS
@ LICS
Definition: libwps_tools_win.h:54
libwps_tools_win::unicodeFromCP869
static unsigned long unicodeFromCP869(unsigned char c)
Definition: libwps_tools_win.cpp:780
libwps_tools_win::Font::WIN3_TURKISH
@ WIN3_TURKISH
Definition: libwps_tools_win.h:51
libwps_tools_win::unicodeFromMacGujarati
static unsigned long unicodeFromMacGujarati(unsigned char c)
Definition: libwps_tools_win.cpp:6880
libwps_tools_win::unicodeFromCP857
static unsigned long unicodeFromCP857(unsigned char c)
Definition: libwps_tools_win.cpp:636
libwps_tools_win::unicodeFromMacRoman
static unsigned long unicodeFromMacRoman(unsigned char c)
Definition: libwps_tools_win.cpp:7005
libwps_tools_win::Font::CP_1006
@ CP_1006
Definition: libwps_tools_win.h:49
libwps_tools_win::Font::MAC_FARSI
@ MAC_FARSI
Definition: libwps_tools_win.h:57
libwps_tools_win::Font::WIN3_ARABIC
@ WIN3_ARABIC
Definition: libwps_tools_win.h:50
libwps_tools_win::Font::WIN3_CYRILLIC
@ WIN3_CYRILLIC
Definition: libwps_tools_win.h:51
libwps_tools_win::unicodeFromCP1255
static unsigned long unicodeFromCP1255(unsigned char c)
Take a character in CP1255 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6500
libwps_tools_win::Language::addLocaleName
void addLocaleName(long id, librevenge::RVNGPropertyList &propList)
add locale name (ie. fo:language,fo:country ) to propList
Definition: libwps_tools_win.cpp:7510
libwps_tools_win::unicodeFromCP860
static unsigned long unicodeFromCP860(unsigned char c)
Definition: libwps_tools_win.cpp:654
libwps_tools_win::Font
a class to convert a DOS© or Windows3© character in unicode
Definition: libwps_tools_win.h:43
libwps_tools_win::unicodeFromMacGaelic
static unsigned long unicodeFromMacGaelic(unsigned char c)
Definition: libwps_tools_win.cpp:6830
libwps_tools_win::Font::Type
Type
enum Type
Definition: libwps_tools_win.h:46
libwps_tools_win::unicodeFromCP737
static unsigned long unicodeFromCP737(unsigned char c)
Definition: libwps_tools_win.cpp:514
libwps_tools_win::Font::WIN3_VIETNAMESE
@ WIN3_VIETNAMESE
Definition: libwps_tools_win.h:52
libwps_tools_win::Font::CP_932
@ CP_932
Definition: libwps_tools_win.h:49
libwps_tools_win::unicodeFromCP1257
static unsigned long unicodeFromCP1257(unsigned char c)
Take a character in CP1257 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6559
libwps_tools_win::Font::MAC_HEBREW
@ MAC_HEBREW
Definition: libwps_tools_win.h:58
libwps_tools_win::Font::CP_865
@ CP_865
Definition: libwps_tools_win.h:48
libwps_tools_win::unicodeFromMacRomanian
static unsigned long unicodeFromMacRomanian(unsigned char c)
Definition: libwps_tools_win.cpp:7030
libwps_tools_win::unicodeFromCP874
static unsigned long unicodeFromCP874(unsigned char c)
Definition: libwps_tools_win.cpp:798
libwps_tools_win::unicodeFromCP037
static unsigned long unicodeFromCP037(unsigned char c)
Definition: libwps_tools_win.cpp:389
libwps_tools_win::Font::CP_875
@ CP_875
Definition: libwps_tools_win.h:49
libwps_tools_win::Font::CP_852
@ CP_852
Definition: libwps_tools_win.h:47
libwps_tools_win::unicodeFromCP1250
static unsigned long unicodeFromCP1250(unsigned char c)
Take a character in CP1250 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6363
libwps_tools_win::unicodeFromMacSymbol
static unsigned long unicodeFromMacSymbol(unsigned char c)
Definition: libwps_tools_win.cpp:7106
libwps_tools_win::Font::MAC_ROMAN
@ MAC_ROMAN
Definition: libwps_tools_win.h:59
libwps_tools_win::Font::CP_869
@ CP_869
Definition: libwps_tools_win.h:49
libwps_tools_win::unicodeFromCP856
static unsigned long unicodeFromCP856(unsigned char c)
Definition: libwps_tools_win.cpp:618
libwps_tools_win::unicodeFromCP866
static unsigned long unicodeFromCP866(unsigned char c)
Definition: libwps_tools_win.cpp:762
libwps_tools_win::Font::unicodeString
static librevenge::RVNGString unicodeString(const unsigned char *p, unsigned long size, Type type, bool skipUnknown=true)
converts a list of character in unicode
Definition: libwps_tools_win.cpp:7283
libwps_tools_win::Font::MAC_SYMBOL
@ MAC_SYMBOL
Definition: libwps_tools_win.h:62
libwps_tools_win::unicodeFromCP1026
static unsigned long unicodeFromCP1026(unsigned char c)
Definition: libwps_tools_win.cpp:6318
libwps_tools_win::unicodeFromMacArabic
static unsigned long unicodeFromMacArabic(unsigned char c)
Definition: libwps_tools_win.cpp:6655
libwps_tools_win::Font::WIN3_HEBREW
@ WIN3_HEBREW
Definition: libwps_tools_win.h:51
libwps_tools_win::unicodeFromCP862
static unsigned long unicodeFromCP862(unsigned char c)
Definition: libwps_tools_win.cpp:690
libwps_tools_win::Font::MAC_GREEK
@ MAC_GREEK
Definition: libwps_tools_win.h:58
libwps_tools_win::unicodeFromCP865
static unsigned long unicodeFromCP865(unsigned char c)
Definition: libwps_tools_win.cpp:744
libwps_tools_win::unicodeFromMacHebrew
static unsigned long unicodeFromMacHebrew(unsigned char c)
Definition: libwps_tools_win.cpp:6930
libwps_tools_win::unicodeFromCP950
static librevenge::RVNGString unicodeFromCP950(const unsigned char *c, unsigned long size, bool skipUnknown)
Definition: libwps_tools_win.cpp:2856
libwps_tools_win::Font::CP_862
@ CP_862
Definition: libwps_tools_win.h:48
libwps_tools_win::Font::MAC_DEVANAGA
@ MAC_DEVANAGA
Definition: libwps_tools_win.h:57
libwps_tools_win::Font::CP_866
@ CP_866
Definition: libwps_tools_win.h:48
libwps_tools_win::Font::CP_950
@ CP_950
Definition: libwps_tools_win.h:49
libwps_tools_win::Font::CP_857
@ CP_857
Definition: libwps_tools_win.h:47
libwps_tools_win::unicodeFromMacCyrillic
static unsigned long unicodeFromMacCyrillic(unsigned char c)
Definition: libwps_tools_win.cpp:6755
libwps_tools_win::Font::MAC_ROMANIAN
@ MAC_ROMANIAN
Definition: libwps_tools_win.h:59
libwps_tools_win::unicodeFromCP1254
static unsigned long unicodeFromCP1254(unsigned char c)
Take a character in CP1254 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6471
libwps_tools_win::unicodeFromMacGurmukhi
static unsigned long unicodeFromMacGurmukhi(unsigned char c)
Definition: libwps_tools_win.cpp:6905
libwps_tools_win::Font::WIN3_GREEK
@ WIN3_GREEK
Definition: libwps_tools_win.h:51
libwps_tools_win::unicodeFromMacTurkish
static unsigned long unicodeFromMacTurkish(unsigned char c)
Definition: libwps_tools_win.cpp:7080
libwps_tools_win::unicodeFromCP875
static unsigned long unicodeFromCP875(unsigned char c)
Definition: libwps_tools_win.cpp:816
libwps_tools_win::Font::CP_737
@ CP_737
Definition: libwps_tools_win.h:46
libwps_tools_win::unicodeFromCP850
static unsigned long unicodeFromCP850(unsigned char c)
Take a character in CP850 encoding, convert it Courtesy of glib2 and iconv.
Definition: libwps_tools_win.cpp:554
libwps_tools_win::unicodeFromCP855
static unsigned long unicodeFromCP855(unsigned char c)
Definition: libwps_tools_win.cpp:600
libwps_tools_win::unicodeFromMacCroatian
static unsigned long unicodeFromMacCroatian(unsigned char c)
Definition: libwps_tools_win.cpp:6730
WPS_DEBUG_MSG
#define WPS_DEBUG_MSG(M)
Definition: libwps_internal.h:134
libwps_tools_win::Font::getTypeForString
static Type getTypeForString(char const *encoding)
Definition: libwps_tools_win.cpp:195
libwps_tools_win::Font::unicode
static unsigned long unicode(unsigned char c, Type type)
converts a character in unicode, knowing the character and the font type
Definition: libwps_tools_win.cpp:7160
libwps_tools_win::Font::MAC_GAELIC
@ MAC_GAELIC
Definition: libwps_tools_win.h:57
libwps_tools_win::unicodeFromMacIceland
static unsigned long unicodeFromMacIceland(unsigned char c)
Definition: libwps_tools_win.cpp:6955
WPS_FALLTHROUGH
#define WPS_FALLTHROUGH
fall through attributes
Definition: libwps_internal.h:82
libwps_tools_win::Font::MAC_CEUROPE
@ MAC_CEUROPE
Definition: libwps_tools_win.h:56
libwps_tools_win::Font::getTypeName
static librevenge::RVNGString getTypeName(Type type)
return the type name
Definition: libwps_tools_win.cpp:259
libwps_tools_win::unicodeFromCP864
static unsigned long unicodeFromCP864(unsigned char c)
Definition: libwps_tools_win.cpp:726
libwps_tools_win::Font::MAC_THAI
@ MAC_THAI
Definition: libwps_tools_win.h:60
libwps_tools_win::Font::UNKNOWN
@ UNKNOWN
Definition: libwps_tools_win.h:63
libwps::appendUnicode
void appendUnicode(uint32_t val, librevenge::RVNGString &buffer)
adds an unicode character to a string ( with correct encoding ).
Definition: libwps_internal.cpp:836
libwps_tools_win::Font::CP_861
@ CP_861
Definition: libwps_tools_win.h:48
libwps_tools_win::Font::MAC_GUJARATI
@ MAC_GUJARATI
Definition: libwps_tools_win.h:58
libwps_tools_win::unicodeFromWingdings
static unsigned long unicodeFromWingdings(unsigned char c)
Definition: libwps_tools_win.cpp:6614
libwps_tools_win::unicodeFromMacCeltic
static unsigned long unicodeFromMacCeltic(unsigned char c)
Definition: libwps_tools_win.cpp:6680
libwps_tools_win::unicodeFromMacGreek
static unsigned long unicodeFromMacGreek(unsigned char c)
Definition: libwps_tools_win.cpp:6855
libwps_tools_win::unicodeFromCP1252
static unsigned long unicodeFromCP1252(unsigned char c)
Take a character in CP1252 encoding, convert it Courtesy of glib2 and iconv.
Definition: libwps_tools_win.cpp:6422
libwps_tools_win::unicodeFromCP775
static unsigned long unicodeFromCP775(unsigned char c)
Definition: libwps_tools_win.cpp:532
libwps_tools_win::unicodeFromCP437
static unsigned long unicodeFromCP437(unsigned char c)
Definition: libwps_tools_win.cpp:455
libwps_tools_win::Font::CP_1026
@ CP_1026
Definition: libwps_tools_win.h:50
libwps_tools_win::Font::CP_856
@ CP_856
Definition: libwps_tools_win.h:47
libwps_tools_win::Font::MAC_CYRILLIC
@ MAC_CYRILLIC
Definition: libwps_tools_win.h:57
libwps_tools_win::unicodeFromCP861
static unsigned long unicodeFromCP861(unsigned char c)
Definition: libwps_tools_win.cpp:672
libwps_tools_win::unicodeFromCP1258
static unsigned long unicodeFromCP1258(unsigned char c)
Take a character in CP1258 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6588
libwps_tools_win::Font::CP_437
@ CP_437
Definition: libwps_tools_win.h:46
libwps_tools_win::Font::CP_037
@ CP_037
Definition: libwps_tools_win.h:46
libwps_tools_win::unicodeFromCP932
static librevenge::RVNGString unicodeFromCP932(const unsigned char *c, unsigned long size, bool skipUnknown)
Definition: libwps_tools_win.cpp:858
libwps_tools_win::Font::MAC_CELTIC
@ MAC_CELTIC
Definition: libwps_tools_win.h:56
libwps_tools_win::unicodeFromMacInuit
static unsigned long unicodeFromMacInuit(unsigned char c)
Definition: libwps_tools_win.cpp:6980
libwps_tools_win::unicodeFromCP1006
static unsigned long unicodeFromCP1006(unsigned char c)
Definition: libwps_tools_win.cpp:6300
libwps_tools_win::Font::getTypeForOEM
static Type getTypeForOEM(int oem)
Definition: libwps_tools_win.cpp:112
libwps_tools_win.h
libwps_tools_win::unicodeFromMacCEurope
static unsigned long unicodeFromMacCEurope(unsigned char c)
Definition: libwps_tools_win.cpp:6705
libwps::readData
bool readData(RVNGInputStreamPtr &input, unsigned long size, librevenge::RVNGBinaryData &data)
try to read sz bytes from input and store them in a librevenge::RVNGBinaryData
Definition: libwps_internal.cpp:332
libwps_tools_win::Font::WIN3_CEUROPE
@ WIN3_CEUROPE
Definition: libwps_tools_win.h:50
libwps_tools_win::Font::CP_860
@ CP_860
Definition: libwps_tools_win.h:47
libwps_tools_win::Language::name
std::string name(long id)
returns the name given Windows© id
Definition: libwps_tools_win.cpp:7332
libwps_tools_win::unicodeFromLICS
static unsigned long unicodeFromLICS(unsigned char c)
Definition: libwps_tools_win.cpp:7143
libwps_tools_win::Font::CP_500
@ CP_500
Definition: libwps_tools_win.h:46
libwps_tools_win::unicodeFromCP424
static unsigned long unicodeFromCP424(unsigned char c)
Definition: libwps_tools_win.cpp:430
libwps_tools_win::unicodeFromMacFarsi
static unsigned long unicodeFromMacFarsi(unsigned char c)
Definition: libwps_tools_win.cpp:6805
libwps_tools_win::Font::MAC_ICELAND
@ MAC_ICELAND
Definition: libwps_tools_win.h:59
libwps_tools_win::Font::WIN3_WEUROPE
@ WIN3_WEUROPE
Definition: libwps_tools_win.h:52
libwps_tools_win::unicodeFromCP1256
static unsigned long unicodeFromCP1256(unsigned char c)
Take a character in CP1256 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6529
libwps_tools_win::Font::CP_775
@ CP_775
Definition: libwps_tools_win.h:46
libwps_tools_win::Font::DOS_850
@ DOS_850
Definition: libwps_tools_win.h:47
libwps_tools_win::unicodeFromMacDevanaga
static unsigned long unicodeFromMacDevanaga(unsigned char c)
Definition: libwps_tools_win.cpp:6780
libwps_internal.h
libwps_tools_win::Font::CP_424
@ CP_424
Definition: libwps_tools_win.h:46
libwps_tools_win::Font::MAC_ARABIC
@ MAC_ARABIC
Definition: libwps_tools_win.h:56
libwps_tools_win::Font::MAC_CROATIAN
@ MAC_CROATIAN
Definition: libwps_tools_win.h:56
libwps_tools_win::Font::CP_864
@ CP_864
Definition: libwps_tools_win.h:48
libwps_tools_win::unicodeFromCP500
static unsigned long unicodeFromCP500(unsigned char c)
Definition: libwps_tools_win.cpp:473
libwps_tools_win::Font::MAC_TURKISH
@ MAC_TURKISH
Definition: libwps_tools_win.h:60
libwps_tools_win::Font::MAC_GURMUKHI
@ MAC_GURMUKHI
Definition: libwps_tools_win.h:58
libwps_tools_win::unicodeFromCP852
static unsigned long unicodeFromCP852(unsigned char c)
Definition: libwps_tools_win.cpp:582
libwps_tools_win::unicodeFromCP863
static unsigned long unicodeFromCP863(unsigned char c)
Definition: libwps_tools_win.cpp:708
libwps_tools_win::Font::MAC_INUIT
@ MAC_INUIT
Definition: libwps_tools_win.h:59
libwps_tools_win::Font::getFontType
static Type getFontType(librevenge::RVNGString &name)
returns the type of the font using the fontName
Definition: libwps_tools_win.cpp:39
libwps_tools_win::unicodeFromMacThai
static unsigned long unicodeFromMacThai(unsigned char c)
Definition: libwps_tools_win.cpp:7055
libwps_tools_win::Font::CP_874
@ CP_874
Definition: libwps_tools_win.h:49
libwps_tools_win::unicodeFromCP1253
static unsigned long unicodeFromCP1253(unsigned char c)
Take a character in CP1253 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6441
libwps_tools_win
some Windows© classes and tools
Definition: libwps_tools_win.cpp:32
UNDEF
#define UNDEF
Definition: libwps_tools_win.cpp:385
libwps_tools_win::Font::WIN3_BALTIC
@ WIN3_BALTIC
Definition: libwps_tools_win.h:50
libwps_tools_win::Font::CP_855
@ CP_855
Definition: libwps_tools_win.h:47
libwps_tools_win::Language::localeName
std::string localeName(long id)
returns the simplified locale name
Definition: libwps_tools_win.cpp:7423
libwps_tools_win::unicodeFromCP1251
static unsigned long unicodeFromCP1251(unsigned char c)
Take a character in CP1251 encoding, convert it Courtesy of unicode.org: http://unicode....
Definition: libwps_tools_win.cpp:6392
libwps_tools_win::Font::CP_863
@ CP_863
Definition: libwps_tools_win.h:48
libwps_tools_win::Language::getDefault
long getDefault()
returns the default language: 0x409 : english(US)
Definition: libwps_tools_win.cpp:7327
libwps_tools_win::Font::WIN3_WINGDINGS
@ WIN3_WINGDINGS
Definition: libwps_tools_win.h:62

Generated on Tue Nov 14 2023 08:14:50 for libwps by doxygen 1.8.20