江协科技 OLED库 OLED_Print( )函数自动换行

复制代码
void OLED_Printf(int16_t X, int16_t Y, uint8_t FontSize, char *format, ...)
{
	char String[256];						//定义字符数组
	va_list arg;							//定义可变参数列表数据类型的变量arg
	va_start(arg, format);					//从format开始,接收参数列表到arg变量
	vsprintf(String, format, arg);			//使用vsprintf打印格式化字符串和参数列表到字符数组中
	va_end(arg);							//结束变量arg
	
	if(FontSize == OLED_6X8)                //在显示6X8字符时效果不好,因为128/6 = 21...2
	{                                       //这会导致每行的最后会多显示两列,需要更改底层解决
		for(uint16_t i = 0; i < strlen(String); i+=21)
		{
			OLED_ShowString(X, Y+i/21*9, &String[i], FontSize);//OLED显示字符数组(字符串)
		}
	}else if(FontSize == OLED_8X16){
		for(uint16_t i = 0; i < strlen(String); i+=16)
		{
			OLED_ShowString(X, Y+i, &String[i], FontSize);//OLED显示字符数组(字符串)
		}
	}
}

6X8字符显示

复制代码
OLED_Printf(0, 0, OLED_6X8, "Hi crkylin, this is your thirty-two days in this company, congratulations for you honestly!");

显示效果

8X16字符显示

复制代码
OLED_Printf(0, 0, OLED_8X16, "Hi crkylin, this is your thirty-two days in this company, congratulations for you honestly!");

显示效果

中文字符显示效果

相关推荐
CNNACN电商经济14 天前
纸价波动加速中小产能出清,包装印刷板块龙头份额提升与议价能力重估
科技·生活
绿算技术14 天前
Mooncake 与绿算ForinnBase GroundPool如何联手打破推理僵局?
科技·算法·架构
nanoscientific14 天前
在芬顿耦合微纳米气泡系统中最大化利用界面处的Fe²⁺以实现有机污染物降解。
科技·微纳米气泡
蓝速科技14 天前
蓝速科技 AI 数字人部署与交互实战指南
人工智能·科技·交互
智塑未来15 天前
蒸汽热力循环仿真精度效果评估——秩益科技DIMAXER核电能源解决方案技术白皮书
科技·能源
苏州邦恩精密15 天前
GOM三维扫描在制造中的真实价值:让“修模”从经验动作变成数据动作
人工智能·科技·机器学习·3d·自动化·制造
云边云科技_云网融合15 天前
SASE:重新定义企业网络安全边界的 “云网安一体化“ 方案
网络·科技
cd_9492172115 天前
云工场科技将携AIoT道路巡查与算力体系,亮相大湾区智慧交通大会
人工智能·科技
searchforAI15 天前
啥是LLM?大语言模型从原理到选型的完整科普
人工智能·科技·深度学习·ai·语言模型·知识图谱·agent
第***月15 天前
云南跟团行:在山水与烟火间读懂远方
科技·生活·旅游·美食·风景