37 const uint16_t loword =
static_cast<uint16_t>(charcode);
43 const auto* found =
std::lower_bound(
46 uint16_t hiword =
static_cast<uint16_t>(charcode >> 16);
49 return element
.m_LoWordHigh <
static_cast<uint16_t>(charcode);
51 if (found != end && loword >= found->m_LoWordLow &&
52 loword <= found->m_LoWordHigh) {
53 return found->m_CID + loword - found->m_LoWordLow;
56 pMap = FindNextCMap(pMap);
67 const auto* found =
std::lower_bound(
68 begin, end, loword, [](
const SingleCmap& element, uint16_t code) {
69 return element.code < code;
71 if (found != end && found->code == loword)
79 const auto* found =
std::lower_bound(
80 begin, end, loword, [](
const RangeCmap& element, uint16_t code) {
81 return element.high < code;
83 if (found != end && loword >= found->low && loword <= found->high)
84 return found->cid + loword - found->low;
88 pMap = FindNextCMap(pMap);