You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.9 KiB
54 lines
1.9 KiB
// Copyright 2014 PDFium Authors. All rights reserved. |
|
// Use of this source code is governed by a BSD-style license that can be |
|
// found in the LICENSE file. |
|
|
|
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
|
|
|
#include "xfa/fxbarcode/BC_UtilCodingConvert.h" |
|
|
|
CBC_UtilCodingConvert::CBC_UtilCodingConvert() {} |
|
|
|
CBC_UtilCodingConvert::~CBC_UtilCodingConvert() {} |
|
|
|
void CBC_UtilCodingConvert::UnicodeToLocale(const CFX_WideString& src, |
|
CFX_ByteString& dst) { |
|
dst = CFX_ByteString::FromUnicode(src); |
|
} |
|
|
|
void CBC_UtilCodingConvert::LocaleToUtf8(const CFX_ByteString& src, |
|
CFX_ByteString& dst) { |
|
CFX_WideString unicode = CFX_WideString::FromLocal(src.AsStringC()); |
|
dst = unicode.UTF8Encode(); |
|
} |
|
|
|
void CBC_UtilCodingConvert::LocaleToUtf8(const CFX_ByteString& src, |
|
CFX_ArrayTemplate<uint8_t>& dst) { |
|
CFX_WideString unicode = CFX_WideString::FromLocal(src.AsStringC()); |
|
CFX_ByteString utf8 = unicode.UTF8Encode(); |
|
for (int32_t i = 0; i < utf8.GetLength(); i++) { |
|
dst.Add(utf8[i]); |
|
} |
|
} |
|
|
|
void CBC_UtilCodingConvert::Utf8ToLocale(const CFX_ArrayTemplate<uint8_t>& src, |
|
CFX_ByteString& dst) { |
|
CFX_ByteString utf8; |
|
for (int32_t i = 0; i < src.GetSize(); i++) { |
|
utf8 += src[i]; |
|
} |
|
CFX_WideString unicode = CFX_WideString::FromUTF8(utf8.AsStringC()); |
|
dst = CFX_ByteString::FromUnicode(unicode); |
|
} |
|
|
|
void CBC_UtilCodingConvert::Utf8ToLocale(const uint8_t* src, |
|
int32_t count, |
|
CFX_ByteString& dst) { |
|
CFX_WideString unicode = |
|
CFX_WideString::FromUTF8(CFX_ByteStringC(src, count)); |
|
dst = CFX_ByteString::FromUnicode(unicode); |
|
} |
|
|
|
void CBC_UtilCodingConvert::UnicodeToUTF8(const CFX_WideString& src, |
|
CFX_ByteString& dst) { |
|
dst = src.UTF8Encode(); |
|
}
|
|
|