Philip P. Moltmann | ac3d58c | 2016-03-04 15:19:21 -0800 | [diff] [blame] | 1 | // Copyright 2014 PDFium Authors. All rights reserved.
|
| 2 | // Use of this source code is governed by a BSD-style license that can be
|
| 3 | // found in the LICENSE file.
|
| 4 |
|
| 5 | // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| 6 |
|
| 7 | #include "barcode.h"
|
| 8 | #include "BC_UtilCodingConvert.h"
|
| 9 | CBC_UtilCodingConvert::CBC_UtilCodingConvert() {}
|
| 10 | CBC_UtilCodingConvert::~CBC_UtilCodingConvert() {}
|
| 11 | void CBC_UtilCodingConvert::UnicodeToLocale(const CFX_WideString& src,
|
| 12 | CFX_ByteString& dst) {
|
| 13 | dst.ConvertFrom(src);
|
| 14 | }
|
| 15 | void CBC_UtilCodingConvert::LocaleToUtf8(const CFX_ByteString& src,
|
| 16 | CFX_ByteString& dst) {
|
| 17 | CFX_WideString unicode = CFX_WideString::FromLocal(src, src.GetLength());
|
| 18 | dst = unicode.UTF8Encode();
|
| 19 | }
|
| 20 | void CBC_UtilCodingConvert::LocaleToUtf8(const CFX_ByteString& src,
|
| 21 | CFX_ByteArray& dst) {
|
| 22 | CFX_WideString unicode = CFX_WideString::FromLocal(src, src.GetLength());
|
| 23 | CFX_ByteString utf8 = unicode.UTF8Encode();
|
| 24 | for (int32_t i = 0; i < utf8.GetLength(); i++) {
|
| 25 | dst.Add(utf8[i]);
|
| 26 | }
|
| 27 | }
|
| 28 | void CBC_UtilCodingConvert::Utf8ToLocale(const CFX_ByteArray& src,
|
| 29 | CFX_ByteString& dst) {
|
| 30 | CFX_ByteString utf8;
|
| 31 | for (int32_t i = 0; i < src.GetSize(); i++) {
|
| 32 | utf8 += src[i];
|
| 33 | }
|
| 34 | CFX_WideString unicode = CFX_WideString::FromUTF8(utf8, utf8.GetLength());
|
| 35 | dst.ConvertFrom(unicode);
|
| 36 | }
|
| 37 | void CBC_UtilCodingConvert::Utf8ToLocale(const uint8_t* src,
|
| 38 | int32_t count,
|
| 39 | CFX_ByteString& dst) {
|
| 40 | CFX_WideString unicode = CFX_WideString::FromUTF8((const char*)src, count);
|
| 41 | dst.ConvertFrom(unicode);
|
| 42 | }
|
| 43 | void CBC_UtilCodingConvert::UnicodeToUTF8(const CFX_WideString& src,
|
| 44 | CFX_ByteString& dst) {
|
| 45 | dst = src.UTF8Encode();
|
| 46 | }
|