The SWORD Project  1.9.0.svnversion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
latin1utf8.cpp
Go to the documentation of this file.
1 /******************************************************************************
2  *
3  * latin1utf8.cpp - SWFilter descendant Latin1UTF8 to convert a Latin-1
4  * character to UTF-8
5  *
6  * $Id: latin1utf8.cpp 2980 2013-09-14 21:51:47Z scribe $
7  *
8  * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
9  * CrossWire Bible Society
10  * P. O. Box 2528
11  * Tempe, AZ 85280-2528
12  *
13  * This program is free software; you can redistribute it and/or modify it
14  * under the terms of the GNU General Public License as published by the
15  * Free Software Foundation version 2.
16  *
17  * This program is distributed in the hope that it will be useful, but
18  * WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20  * General Public License for more details.
21  *
22  */
23 
24 #include <stdlib.h>
25 #include <stdio.h>
26 #include <latin1utf8.h>
27 #include <swmodule.h>
28 
29 
31 
32 
34 }
35 
36 
37 char Latin1UTF8::processText(SWBuf &text, const SWKey *key, const SWModule *module)
38 {
39  const unsigned char *from;
40 
41  if ((unsigned long)key < 2) // hack, we're en(1)/de(0)ciphering
42  return (char)-1;
43 
44  SWBuf orig = text;
45  from = (const unsigned char *)orig.c_str();
46 
47  for (text = ""; *from; from++) {
48  if (*from < 0x80) {
49  text += *from;
50  }
51  else if (*from < 0xc0) {
52  switch(*from) {
53  case 0x80: // '€'
54  text += 0xe2; // 'â' text += 0x82; // '‚' text += 0xac; // '¬' break; case 0x82: // '‚' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9a; // 'š' break; case 0x83: // 'ƒ' text += 0xc6; // 'Æ' text += 0x92; // '’' break; case 0x84: // '„' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9e; // 'ž' break; case 0x85: // '…' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa6; // '¦' break; case 0x86: // '†' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa0; // ' ' break; case 0x87: // '‡' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa1; // '¡' break; case 0x88: // 'ˆ' text += 0xcb; // 'Ë' text += 0x86; // '†' break; case 0x89: // '‰' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
55  text += 0x82; // '‚'
56  text += 0xac; // '¬'
57  break;
58  case 0x82: // '‚'
59  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9a; // 'š' break; case 0x83: // 'ƒ' text += 0xc6; // 'Æ' text += 0x92; // '’' break; case 0x84: // '„' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9e; // 'ž' break; case 0x85: // '…' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa6; // '¦' break; case 0x86: // '†' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa0; // ' ' break; case 0x87: // '‡' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa1; // '¡' break; case 0x88: // 'ˆ' text += 0xcb; // 'Ë' text += 0x86; // '†' break; case 0x89: // '‰' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
60  text += 0x80; // '€'
61  text += 0x9a; // 'š'
62  break;
63  case 0x83: // 'ƒ'
64  text += 0xc6; // 'Æ'
65  text += 0x92; // '’'
66  break;
67  case 0x84: // '„'
68  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9e; // 'ž' break; case 0x85: // '…' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa6; // '¦' break; case 0x86: // '†' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa0; // ' ' break; case 0x87: // '‡' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa1; // '¡' break; case 0x88: // 'ˆ' text += 0xcb; // 'Ë' text += 0x86; // '†' break; case 0x89: // '‰' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
69  text += 0x80; // '€'
70  text += 0x9e; // 'ž'
71  break;
72  case 0x85: // '…'
73  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa6; // '¦' break; case 0x86: // '†' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa0; // ' ' break; case 0x87: // '‡' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa1; // '¡' break; case 0x88: // 'ˆ' text += 0xcb; // 'Ë' text += 0x86; // '†' break; case 0x89: // '‰' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
74  text += 0x80; // '€'
75  text += 0xa6; // '¦'
76  break;
77  case 0x86: // '†'
78  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa0; // ' ' break; case 0x87: // '‡' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa1; // '¡' break; case 0x88: // 'ˆ' text += 0xcb; // 'Ë' text += 0x86; // '†' break; case 0x89: // '‰' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
79  text += 0x80; // '€'
80  text += 0xa0; // ' '
81  break;
82  case 0x87: // '‡'
83  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa1; // '¡' break; case 0x88: // 'ˆ' text += 0xcb; // 'Ë' text += 0x86; // '†' break; case 0x89: // '‰' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
84  text += 0x80; // '€'
85  text += 0xa1; // '¡'
86  break;
87  case 0x88: // 'ˆ'
88  text += 0xcb; // 'Ë'
89  text += 0x86; // '†'
90  break;
91  case 0x89: // '‰'
92  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb0; // '°' break; case 0x8A: // 'Š' text += 0xc5; // 'Å' text += 0xa0; // ' ' break; case 0x8B: // '‹' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
93  text += 0x80; // '€'
94  text += 0xb0; // '°'
95  break;
96  case 0x8A: // 'Š'
97  text += 0xc5; // 'Å'
98  text += 0xa0; // ' '
99  break;
100  case 0x8B: // '‹'
101  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xb9; // '¹' break; case 0x8C: // 'Œ' text += 0xc5; // 'Å' text += 0x92; // '’' break; case 0x8E: // 'Ž' text += 0xc5; // 'Å' text += 0xbd; // '½' break; case 0x91: // '‘' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
102  text += 0x80; // '€'
103  text += 0xb9; // '¹'
104  break;
105  case 0x8C: // 'Œ'
106  text += 0xc5; // 'Å'
107  text += 0x92; // '’'
108  break;
109  case 0x8E: // 'Ž'
110  text += 0xc5; // 'Å'
111  text += 0xbd; // '½'
112  break;
113  case 0x91: // '‘'
114  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x98; // '˜' break; case 0x92: // '’' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
115  text += 0x80; // '€'
116  text += 0x98; // '˜'
117  break;
118  case 0x92: // '’'
119  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x99; // '™' break; case 0x93: // '“' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
120  text += 0x80; // '€'
121  text += 0x99; // '™'
122  break;
123  case 0x93: // '“'
124  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9c; // 'œ' break; case 0x94: // '”' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
125  text += 0x80; // '€'
126  text += 0x9c; // 'œ'
127  break;
128  case 0x94: // '”'
129  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x9d; // '�' break; case 0x95: // '•' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
130  text += 0x80; // '€'
131  text += 0x9d; // '�'
132  break;
133  case 0x95: // '•'
134  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xa2; // '¢' break; case 0x96: // '–' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
135  text += 0x80; // '€'
136  text += 0xa2; // '¢'
137  break;
138  case 0x96: // '–'
139  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x93; // '“' break; case 0x97: // '—' text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
140  text += 0x80; // '€'
141  text += 0x93; // '“'
142  break;
143  case 0x97: // '—'
144  text += 0xe2; // 'â' text += 0x80; // '€' text += 0x94; // '”' break; case 0x98: // '˜' text += 0xcb; // 'Ë' text += 0x9c; // 'œ' break; case 0x99: // '™' text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
145  text += 0x80; // '€'
146  text += 0x94; // '”'
147  break;
148  case 0x98: // '˜'
149  text += 0xcb; // 'Ë'
150  text += 0x9c; // 'œ'
151  break;
152  case 0x99: // '™'
153  text += 0xe2; // 'â' text += 0x84; // '„' text += 0xa2; // '¢' break; case 0x9A: // 'š' text += 0xc5; // 'Å' text += 0xa1; // '¡' break; case 0x9B: // '›' text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
154  text += 0x84; // '„'
155  text += 0xa2; // '¢'
156  break;
157  case 0x9A: // 'š'
158  text += 0xc5; // 'Å'
159  text += 0xa1; // '¡'
160  break;
161  case 0x9B: // '›'
162  text += 0xe2; // 'â' text += 0x80; // '€' text += 0xba; // 'º' break; case 0x9C: // 'œ' text += 0xc5; // 'Å' text += 0x93; // '“' break; case 0x9E: // 'ž' text += 0xc5; // 'Å' text += 0xbe; // '¾' break; case 0x9F: // 'Ÿ' text += 0xc5; // 'Å' text += 0xb8; // '¸' break; default: text += 0xC2; text += *from; } } else { text += 0xC3; text += (*from - 0x40); } } return 0; } SWORD_NAMESPACE_END
163  text += 0x80; // '€'
164  text += 0xba; // 'º'
165  break;
166  case 0x9C: // 'œ'
167  text += 0xc5; // 'Å'
168  text += 0x93; // '“'
169  break;
170  case 0x9E: // 'ž'
171  text += 0xc5; // 'Å'
172  text += 0xbe; // '¾'
173  break;
174  case 0x9F: // 'Ÿ'
175  text += 0xc5; // 'Å'
176  text += 0xb8; // '¸'
177  break;
178  default:
179  text += 0xC2;
180  text += *from;
181  }
182  }
183  else {
184  text += 0xC3;
185  text += (*from - 0x40);
186  }
187  }
188  return 0;
189 }
190 
191 
#define SWORD_NAMESPACE_START
Definition: defs.h:39
Definition: swbuf.h:47
SWText * module
Definition: osis2mod.cpp:105
virtual char processText(SWBuf &text, const SWKey *key=0, const SWModule *module=0)
Definition: latin1utf8.cpp:37
const char * c_str() const
Definition: swbuf.h:158
#define SWORD_NAMESPACE_END
Definition: defs.h:40
Definition: swkey.h:77