15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include "config.h"
#import "OFString.h"
#import "common.h"
const of_char16_t of_windows_1251_table[] = {
0x0402, 0x0403, 0x201A, 0x0453, 0x201E, 0x2026, 0x2020, 0x2021,
0x20AC, 0x2030, 0x0409, 0x2039, 0x040A, 0x040C, 0x040B, 0x040F,
0x0452, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
0xFFFF, 0x2122, 0x0459, 0x203A, 0x045A, 0x045C, 0x045B, 0x045F,
0x00A0, 0x040E, 0x045E, 0x0408, 0x00A4, 0x0490, 0x00A6, 0x00A7,
0x0401, 0x00A9, 0x0404, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x0407,
0x00B0, 0x00B1, 0x0406, 0x0456, 0x0491, 0x00B5, 0x00B6, 0x00B7,
|
|
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include "config.h"
#import "OFString.h"
#import "common.h"
const OFChar16 of_windows_1251_table[] = {
0x0402, 0x0403, 0x201A, 0x0453, 0x201E, 0x2026, 0x2020, 0x2021,
0x20AC, 0x2030, 0x0409, 0x2039, 0x040A, 0x040C, 0x040B, 0x040F,
0x0452, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
0xFFFF, 0x2122, 0x0459, 0x203A, 0x045A, 0x045C, 0x045B, 0x045F,
0x00A0, 0x040E, 0x045E, 0x0408, 0x00A4, 0x0490, 0x00A6, 0x00A7,
0x0401, 0x00A9, 0x0404, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x0407,
0x00B0, 0x00B1, 0x0406, 0x0456, 0x0491, 0x00B5, 0x00B6, 0x00B7,
|
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
static const unsigned char page21[] = {
0xB9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x99
};
static const uint8_t page21Start = 0x16;
bool
of_unicode_to_windows_1251(const of_unichar_t *input, unsigned char *output,
size_t length, bool lossy)
{
for (size_t i = 0; i < length; i++) {
of_unichar_t c = input[i];
if OF_UNLIKELY (c > 0x7F) {
uint8_t idx;
if OF_UNLIKELY (c > 0xFFFF) {
if (lossy) {
output[i] = '?';
|
|
|
|
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
static const unsigned char page21[] = {
0xB9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x99
};
static const uint8_t page21Start = 0x16;
bool
of_unicode_to_windows_1251(const OFUnichar *input, unsigned char *output,
size_t length, bool lossy)
{
for (size_t i = 0; i < length; i++) {
OFUnichar c = input[i];
if OF_UNLIKELY (c > 0x7F) {
uint8_t idx;
if OF_UNLIKELY (c > 0xFFFF) {
if (lossy) {
output[i] = '?';
|