Exemple #1
0
int SkStrLCSearch(const char*const* base, int count, const char target[],
                  size_t len, size_t elemSize)
{
    SkASSERT(target);

    SkAutoAsciiToLC tolc(target, len);

    return SkStrSearch(base, count, tolc.lc(), len, elemSize);
}
static void add_name(const char name[], FamilyRec* family) {
    SkAutoAsciiToLC tolc(name);
    name = tolc.lc();

    NameFamilyPair* list = gNameList.begin();
    int             count = gNameList.count();

    int index = SkStrLCSearch(&list[0].fName, count, name, sizeof(list[0]));

    if (index < 0) {
        list = gNameList.insert(~index);
        list->construct(name, family);
    }
}
Exemple #3
0
 SkFontStyleSet* onMatchFamily(const char familyName[]) const override {
     if (!familyName) {
         return nullptr;
     }
     SkAutoAsciiToLC tolc(familyName);
     for (int i = 0; i < fNameToFamilyMap.count(); ++i) {
         if (fNameToFamilyMap[i].name.equals(tolc.lc())) {
             return SkRef(fNameToFamilyMap[i].styleSet);
         }
     }
     // TODO: eventually we should not need to name fallback families.
     for (int i = 0; i < fFallbackNameToFamilyMap.count(); ++i) {
         if (fFallbackNameToFamilyMap[i].name.equals(tolc.lc())) {
             return SkRef(fFallbackNameToFamilyMap[i].styleSet);
         }
     }
     return nullptr;
 }