我正在开发一个在显示器/LCD 上正确显示阿拉伯语单词的功能。(阿拉伯字母有四种不同的模式。)我有一组Map array
不同状态的阿拉伯字母 ( )。识别阿拉伯语字母后,我需要重新对齐字母。我的问题是如何将 Unicode 字符通过表 ( Map Table
)放入String variable
(pBuffer)?
例如:要写单词باب
,您需要从中选择字母Map table
并将其放在 aString
中以发送到显示器/LCD。
...
const unsigned char Map[][5] PROGMEM = {
/* code, isolated, initial, medial, final */
{0x0621, 0xFE80, 0x0000, 0x0000, 0x0000 }, //1 /* HAMZA ء*/
{0x0622, 0xFE81, 0x0000, 0x0000, 0xFE82 }, //2/* ALEF_MADDA آ*/
{0x0623, 0xFE83, 0x0000, 0x0000, 0xFE84 }, //3/* ALEF_HAMZA_ABOVE أ*/
{0x0624, 0xFE85, 0x0000, 0x0000, 0xFE86 }, //4/* WAW_HAMZA ؤ*/
{0x0625, 0xFE87, 0x0000, 0x0000, 0xFE88 }, //5/* ALEF_HAMZA_BELOW إ*/
{0x0626, 0xFE89, 0xFE8B, 0xFE8C, 0xFE8A }, //6/* YEH_HAMZA ئ*/
{0x0627, 0xFE8D, 0x0000, 0x0000, 0xFE8E }, //7/* ALEF ا*/
{0x0628, 0xFE8F, 0xFE91, 0xFE92, 0xFE90 } //8/* BEH ب*/
};
String pBuffer;
pBuffer += ((char)(Map[7][4]));
pBuffer += ((char)(Map[6][6]));
pBuffer += ((char)(Map[7][3]));
u8g2.setCursor(5, 20);
u8g2.print(pBuffer);
...
不幸的是,上面使用的方法不起作用。如何从上面的“地图”表中选择字符并将它们放在一个String
变量中?