6.6 获取宽度 (简易)
简化的字符串宽度计算
获取宽度_W简易
WY_GetStringWidth 是一个简化的字符串宽度计算函数,适用于等宽字体场景。该函数假设每个字符宽度等于字号大小,适合快速估算字符串显示所需的像素宽度。
wy_string_width.c
/**
* @brief 得到灰度文字的宽度 (W横置横排)
*
* @param pdata 文字数据
* @param dot_w 文字宽度 例如:48x48大小的文字 dot_w = 48
* @param dot_h 文字高度 例如:48x48大小的文字 dot_h = 48
* @param gray 取值: 1 / 2 / 4
* @return int 实际文字宽度
*/
int _get_font_width(uint8_t *pdata, uint16_t dot_w, uint16_t dot_h, uint16_t gray)
{
uint16_t byte_w, i;
int j, len;
uint8_t tmp = 0;
byte_w = ((dot_w + 7) >> 3) * gray;
for (j = byte_w - 1; j >= 0; j--)
if (0 != tmp)
}
len = ((j / gray) * 8) + ((j % gray) * 8 + (8 - i)) / gray;
//
if (len >= dot_h)
return len;
}
}
return dot_w;
}

