StarEncoding Class Reference

the main class to read/. More...

#include <StarEncoding.hxx>

Public Types

enum  Encoding {
  E_DONTKNOW =0 , E_MS_1252 , E_APPLE_ROMAN , E_IBM_437 ,
  E_IBM_850 , E_IBM_860 , E_IBM_861 , E_IBM_863 ,
  E_IBM_865 , E_SYMBOL =10 , E_ASCII_US , E_ISO_8859_1 ,
  E_ISO_8859_2 , E_ISO_8859_3 , E_ISO_8859_4 , E_ISO_8859_5 ,
  E_ISO_8859_6 , E_ISO_8859_7 , E_ISO_8859_8 , E_ISO_8859_9 ,
  E_ISO_8859_14 , E_ISO_8859_15 , E_IBM_737 , E_IBM_775 ,
  E_IBM_852 , E_IBM_855 , E_IBM_857 , E_IBM_862 ,
  E_IBM_864 , E_IBM_866 , E_IBM_869 , E_MS_874 ,
  E_MS_1250 , E_MS_1251 , E_MS_1253 , E_MS_1254 ,
  E_MS_1255 , E_MS_1256 , E_MS_1257 , E_MS_1258 ,
  E_APPLE_CENTEURO =42 , E_APPLE_CROATIAN , E_APPLE_CYRILLIC , E_APPLE_GREEK =47 ,
  E_APPLE_ICELAND =51 , E_APPLE_ROMANIAN , E_APPLE_TURKISH =54 , E_APPLE_UKRAINIAN ,
  E_APPLE_CHINSIMP , E_APPLE_CHINTRAD , E_APPLE_JAPANESE , E_APPLE_KOREAN ,
  E_MS_932 , E_MS_936 , E_MS_949 , E_MS_950 ,
  E_SHIFT_JIS , E_GB_2312 , E_GBT_12345 , E_GBK ,
  E_BIG5 , E_EUC_JP , E_EUC_CN , E_KOI8_R =74 ,
  E_UTF7 , E_UTF8 , E_ISO_8859_10 , E_ISO_8859_13 ,
  E_EUC_KR , E_JIS_X_0201 =81 , E_JIS_X_0208 , E_JIS_X_0212 ,
  E_MS_1361 , E_BIG5_HKSCS =86 , E_TIS_620 , E_KOI8_U ,
  E_ISCII_DEVANAGARI , E_UCS4 =0xFFFE , E_UCS2 =0xFFFF
}
 the different encoding More...
 

Public Member Functions

 StarEncoding ()
 constructor
 
virtual ~StarEncoding ()
 destructor
 

Static Public Member Functions

static Encoding getEncodingForId (int id)
 return an encoding corresponding to an id
 
static bool convert (std::vector< uint8_t > const &src, Encoding encoding, std::vector< uint32_t > &dest, std::vector< size_t > &srcPositions)
 try to convert a list of character and transforms it a unicode's list
 

Static Protected Member Functions

static bool read (std::vector< uint8_t > const &src, size_t &pos, Encoding encoding, std::vector< uint32_t > &dest)
 try to read a character and add it to string
 

Detailed Description

the main class to read/.

. some basic encoding in StarOffice documents

Member Enumeration Documentation

◆ Encoding

the different encoding

Enumerator
E_DONTKNOW 
E_MS_1252 
E_APPLE_ROMAN 
E_IBM_437 
E_IBM_850 
E_IBM_860 
E_IBM_861 
E_IBM_863 
E_IBM_865 
E_SYMBOL 
E_ASCII_US 
E_ISO_8859_1 
E_ISO_8859_2 
E_ISO_8859_3 
E_ISO_8859_4 
E_ISO_8859_5 
E_ISO_8859_6 
E_ISO_8859_7 
E_ISO_8859_8 
E_ISO_8859_9 
E_ISO_8859_14 
E_ISO_8859_15 
E_IBM_737 
E_IBM_775 
E_IBM_852 
E_IBM_855 
E_IBM_857 
E_IBM_862 
E_IBM_864 
E_IBM_866 
E_IBM_869 
E_MS_874 
E_MS_1250 
E_MS_1251 
E_MS_1253 
E_MS_1254 
E_MS_1255 
E_MS_1256 
E_MS_1257 
E_MS_1258 
E_APPLE_CENTEURO 
E_APPLE_CROATIAN 
E_APPLE_CYRILLIC 
E_APPLE_GREEK 
E_APPLE_ICELAND 
E_APPLE_ROMANIAN 
E_APPLE_TURKISH 
E_APPLE_UKRAINIAN 
E_APPLE_CHINSIMP 
E_APPLE_CHINTRAD 
E_APPLE_JAPANESE 
E_APPLE_KOREAN 
E_MS_932 
E_MS_936 
E_MS_949 
E_MS_950 
E_SHIFT_JIS 
E_GB_2312 
E_GBT_12345 
E_GBK 
E_BIG5 
E_EUC_JP 
E_EUC_CN 
E_KOI8_R 
E_UTF7 
E_UTF8 
E_ISO_8859_10 
E_ISO_8859_13 
E_EUC_KR 
E_JIS_X_0201 
E_JIS_X_0208 
E_JIS_X_0212 
E_MS_1361 
E_BIG5_HKSCS 
E_TIS_620 
E_KOI8_U 
E_ISCII_DEVANAGARI 
E_UCS4 
E_UCS2 

Constructor & Destructor Documentation

◆ StarEncoding()

StarEncoding::StarEncoding ( )

constructor

◆ ~StarEncoding()

StarEncoding::~StarEncoding ( )
virtual

destructor

Member Function Documentation

◆ convert()

bool StarEncoding::convert ( std::vector< uint8_t > const &  src,
StarEncoding::Encoding  encoding,
std::vector< uint32_t > &  dest,
std::vector< size_t > &  srcPositions 
)
static

◆ getEncodingForId()

◆ read()

bool StarEncoding::read ( std::vector< uint8_t > const &  src,
size_t &  pos,
StarEncoding::Encoding  encoding,
std::vector< uint32_t > &  dest 
)
staticprotected

try to read a character and add it to string

Note
: normally, we only read caracter one by one but sometimes, we need to read a complete set of caracters (utf7, ...). limits can be use to retrieve the "original" caracters.

Referenced by convert().


The documentation for this class was generated from the following files:

Generated on Fri Apr 14 2023 04:41:10 for libstaroffice by doxygen 1.9.6