我正在使用 Adafruit_ST7735(带有 Adafruit_GFX)库在我的 1.8 TFT 显示器上显示内容。当我设置tft.setTextWrap(false); 它确实包装了文本,但它不关心单词。例如,它像这样包装它:
我喜欢打
篮球,我真的很喜欢
玩电脑
游戏
我需要让它看起来像这样:
我喜欢打
篮球,我真的很
喜欢玩
电脑游戏
短词放在下一行,但较长的词分成两行,并用 - 连接,这样我可以显示比将每个单词放在新行上更多的文本。我对此的主要斗争是角色以SD方式一个接一个地出现,如下所示:
File myFile = SD.open(file_name);
if (myFile) {
while (myFile.available() > myFile.size() - 300) {
tft.write(myFile.read());
}
myFile.close();
} else {
tft.print("Error opening file.");
}
我将如何为传入的字符编写这样的文字处理器,以便将短词(即包含少于或等于 5 个字符)转移到下一行,而将较长的词(即包含超过 5 个字符)用 - 和一部分在一行,另一部分在下一行(如最后一个示例)?