36 const uint16_t loword =
static_cast<uint16_t>(charcode);
42 const auto* found =
std::lower_bound(
45 uint16_t hiword =
static_cast<uint16_t>(charcode >> 16);
48 return element
.m_LoWordHigh <
static_cast<uint16_t>(charcode);
50 if (found != end && loword >= found->m_LoWordLow &&
51 loword <= found->m_LoWordHigh) {
52 return found->m_CID + loword - found->m_LoWordLow;
55 pMap = FindNextCMap(pMap);
66 const auto* found =
std::lower_bound(
67 begin, end, loword, [](
const SingleCmap& element, uint16_t code) {
68 return element
.code < code;
70 if (found != end && found->code == loword)
78 const auto* found =
std::lower_bound(
79 begin, end, loword, [](
const RangeCmap& element, uint16_t code) {
80 return element
.high < code;
82 if (found != end && loword >= found->low && loword <= found->high)
83 return found->cid + loword - found->low;
87 pMap = FindNextCMap(pMap);