前言:泰文Unicode编码表及排版规则

泰文 Unicode字符表 泰文符号

字符数量统计: 128 Unicode编码范围:0E00—0E7F代码点

泰文是一个Unicode块,包含泰文、Lanna Tai和Pali语言的字符。依据泰文工业标准620-2533。

范围

U+0E00…U+0E7F (128 代码位)
已经分配:87代码位
暂未使用:41个保留位

Unicode字符表


字符表链接:http://www.52unicode.com/thai-zifu

排版规则

一、字母编码

这里只介绍泰文的Unicode编码。Unicode编码为双字节,前面为高字节,后面为低字节,这里都用十六进制表示。如0E00表示一个空格,0E为高字节,00为低字节。

泰文编码和字母的对照关系如下:
编码段: 0E00-0E16,0E17-0E2D,0E2E-0E30
泰文字符:กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะ
编码段: 0E31-0E3A
泰文字符:
ัา ำ ี ึ ื ุ ู ฺ
编码段: 0E3F-0E46
泰文字符:฿ เ แ โ ใ ไ ๅ ๆ
编码段: 0E47-0E4E
泰文字符: ็ ่ ้ ๊ ๋ ์ ํ ๎
编码段: 0E4F-0E5B
泰文字符:๏๐๑๒๓๔๕๖๗๘๙๚๛

二、拼写规则

泰语是一种拼音文字。有元音,辅音和声调。

2.1. 元音

元音有单元音和复元音之分,复元音是由两个或三个单元音组成的。单元音可以位于辅音的上下左右各侧(说明:下面的杠“_”表示辅音的位置)。

规则①:在辅音右边的单元音
字符: -า -ะ -อ
例子: กา จะ ดอ

规则②:在辅音左边的单元音
字符: เ- แ- โ- เ-าะ เ-ะ แ-ะ โ-ะ เ-อ แ-อ
例子:เก แจ โอ แตะ โดะ

规则③:在辅音上边的单元音
字符: -ิ -ี -ึ -ื
例子: ดีษืฉึ

规则④:在辅音下边的单元音
字符: -ุ -ู
例子: กุมู

2.2 辅音

单辅音有中辅音,高辅音,低辅音,塞音,擦音等之分。它们与长元音和短元音相拼时,能够影响或决定声调。复辅音是由多个单辅音组成的。

单辅音:กจดตฎฏบปอขคฆฉชฌผพภฝฟถฐทธฑฒสศษซหฮงนมยญวรลฬ

规则①:有辅音字母อ 字母和元音字母อ 外形相同,只能靠其位置进行区分。
例子: ออ

规则②:有辅音字符ปฝฟ,上面加元音或声调时,元音或声调字符要略微向左移一些。
例子:ปิป๊ฟีฝื่

2.3 声调

泰文中有5个声调,只有第一声不用标出来。
声调:    

规则①:声调加在辅音的右上方。
例子:ก่า

规则②:辅音上有元音,再加声调符号时,声调符号要加在元音上。
例子:อื่ทึ๊

2.4 尾音

尾音: -ง -น -ม -ำ -ก -ด -บ

规则①:元音字母-ะ 后有尾音时。要把-ะ写成-ั,放在辅音和尾音之间的上方。
例子: 如กะง 要写成กัง

规则②:元音字母เ-ะ 和แ-ะ 后有尾音时,把-ะ 写成-็,放在辅音和尾音之间的上方。
例子: 如เตะม 写成เต็ม

规则③:元音字母โ-ะ 后有尾音时,โ-ะ省略不写成。
例子: 如โตะม 写成ตม

规则④:复元音-ัว 后有尾音时,要将去-ั掉。
例子: 如จัวน 写成จวน

规则⑤: -ำ 和-ัม 读音相同,词义不同。
例子: 如จกำ和กัม

2.5 数字

泰文有自己的数字符(0-9)。
数字字符:๐๑๒๓๔๕๖๗๘๙

2.6 其他

其他符号ฤฦๅ ์(不发音符号)ๆ(重复符号)ฯ(简略符号)

三、处理方式

根据上述的拼写规则,可以把所有字符形象的分为如下几类:

  1. 鞋子字符。它可以叠加在主体字符的下面,就像给主体字符穿的鞋子一样。
  2. 主体字符。它上面可以叠加帽子字符,下面可以叠加鞋子字符,就像给它带上帽子,穿上鞋子一样。
  3. 帽子字符。它可以叠加在主体字符的下面,就像给主体字符带上帽子一样。
  4. 声调字符。它是一个词语的声调,必须叠放在主体字符或帽子字符上面。
  5. 独立字符。它是不可以穿鞋子,不可以带帽子,也不可以加声调的一类字符。
  6. 标点符号。它是用来断句的标点符号,和其他语言中的标点符号的功能一样。

下面是类型,编码,字符之间的对照关系。

  1. 鞋子
    编码段:0E38-0E39
    字符: ุ ู
  2. 主体
    编码段:0E01-0E10,0E11-0E1F,0E20-0E2E,0E32
    字符:กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮ า
  3. 帽子
    编码段:0E31, 0E47,0E33-0E37,0E4C-0E4E
    字符: ั ็ ำ ิ ี ึ ื ์ ํ ๎
  4. 声调
    编码段:0E48-0E4B
    字符:    
  5. 独立
    编码段:0E2F,0E30,0E3A,0E40-0E46,0E5A-0E5B
    字符: ฯะ ฺ เ แ โ ใ ไ ๅ ๆ๚๛
  6. 标点
    编码段:0E00,0E3F,0E4F-0E59
    字符: ฿ ๏๐๑๒๓๔๕๖๗๘๙
  7. 其他
    编码段:0E3B-0E3E,0E5B-0E7F

补充说明:

  1. 如果用①②③④⑤⑥分别表示鞋子字符,主体字符,帽子字符,声调字符,独立字符和标点符号。
    则可能出现的组合情况有:①②,①②③,①②④,①②③④,②③,②④,②③④,⑤和⑥。
  2. ①和③之间没有②的时候,③需要往下移动一点。
  3. ②的编码是0E1B,0E1D,0E1F时,③或④或③④,最好向左移动一点。

代码编写

//泰文 上下标字符 unicode

static int ThaiSup_Subs[] = {0x0e31, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37, 0x0e38, 0x0e39, 0x0e47, 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x0e4e};

//泰文编码范围0E00-0E3a,0E3f-0E5b

bool isThai(int subunicode)
{//泰文编码范围0E00-0E3a,0E3f-0E5b,if (((subunicode>0x0e00) && (subunicode<0x0e3a)) ||((subunicode>0x0e3f) && (subunicode<0x0e5b))){return  true;}else {return false;}
}

UTF-8 (Unicode)

  • u4e00-u9fa5 (中文)
  • x3130-x318F (韩文)
  • xAC00-xD7A3 (韩文)
  • u0800-u4e00 (日文)
    实际上发现:
    除了u4e00-u9fa5 (中文)之外,还有(0x3400, 0x4DB5)也是。

GB18030在GB13000.1的20902个汉字的基础上增加了CJK扩展A的6582个汉字(Unicode码0x3400-0x4db5),一共收录了27484个汉字。对应的utf8也进行了相应增加。

参考链接:
Unicode字符表:https://www.52unicode.com/

汉字字符集编码查询:https://www.qqxiuzi.cn/bianma/zifuji.php

泰文排版规则:http://blog.sina.com.cn/s/blog_5d8cc6410100s2ux.html

Unicode百度百科:https://baike.baidu.com/item/Unicode/750500?fr=aladdin

LED点阵显示:

泰文入库问题:

泰文拆分问题:https://blog.csdn.net/cbbbc/article/details/47022337

完整的CJK Unicode范围:https://blog.csdn.net/loseblue/article/details/2436578

泰文Unicode编码表及排版规则相关推荐

  1. UniCode编码表,过滤不可见特殊字符

    不可见字符过滤方案 我是在项目中,使用freemarker生成word时,wordxml不能解析不可见字符,导出导出的word报错,不能正常打开. 于是我将freemarker解析后的xml进行了不可 ...

  2. 【Unicode编码表】UniCode编码表+转化器

    UniCode编码表[转载:https://www.cnblogs.com/csguo/p/7401874.html] Unicode编码则是采用双字节16位来进行编号,可编65536字符,基本上包含 ...

  3. 汉字Unicode编码表(最小值0x4e00,最大值0x952f)

    汉字的unicode编码最小值为:0x4e00,最大值为0x952f 关于 unicode编码表: 1unicode编码表   Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个字符, ...

  4. [转] UniCode编码表

    Unicode编码则是采用双字节16位来进行编号,可编65536字符,基本上包含了世界上所有的语言字符,它也就成为了全世界一种通用的编码,而且用十六进制4位表示一个编码,非常简结直观,为大多数开发者所 ...

  5. punycode转码以及UniCode编码表参考文章

    Punycode是什么? Punycode是一个根据RFC 3492标准而制定的编码系统,主要用於把域名从地方语言所采用的Unicode编码转换成为可用於DNS系统的编码.Punycode可以防止ID ...

  6. CSS中文字体 Unicode 编码表

    一.简介 CSS(层叠样式表)是用于样式化Web页面的强大工具,它可以用来控制页面的外观和行为.在CSS中,可以使用多种字体来设置文本的外观和格式,包括中文字体.中文字体的实现需要引入相应的字体文件, ...

  7. charCodeAt() 方法了解和用法unicode编码表

    前言:最近在看一些算法题,发现有时候借用到charCodeAt方法,所以趁此机会来学习一下(●ˇ∀ˇ●) 什么是charCodeAt? MDN的解释: charCodeAt() 方法返回 0 到 65 ...

  8. Unicode编码表/0000-0FFF

    Unicode编码表/0000-0FFF 图例: Unicode 3.1 Unicode 1.0 Unicode 3.2 Unicode 1.1 Unicode 4.0 Unicode 2.0 Uni ...

  9. unicode编码表_6-字符编码-文件处理

    1.字符编码 1.什么是字符编码人类在于计算机交互时,用的都是人类能读懂的字符,如:中文字符,英文字符,日文字符的等,而计算机只能识别二进制数,详解如下:(进制数即由0和1组成的数字,例如010010 ...

  10. Unicode 编码表

    正则查找: 中文文字+中文符号+表情符号+... [^\x00-\xff] 其中 \x00-\xff 匹配 ASCII 代码中十六进制代码为 00-ff 的字符, 加个取反 ^ ,则就表示表示匹配非单 ...

最新文章

  1. Java was not the perfect solution for every pro...
  2. 20180513模拟赛
  3. mongodb主从复制及副本集的部署
  4. EdgeX Foundry理论篇
  5. web第一节2020.5.11
  6. LeetCode 52.N-Queens II
  7. CCF 201512-2 消除类游戏
  8. 核心对象+持久对象全析(2)
  9. 微信小程序│ 游戏开发 │连连看游戏
  10. 关于分钻石的数学题有五个海盗得到了一百颗的钻石
  11. 云班课计算机题答案,云班课答案获取
  12. 如何关闭AndroidX?
  13. 西安市2012年教师资格证考试报名时间:3月10-15日
  14. Jetson AGX Xavier刷机+安装opencv+使用TensorRT加速推理yolo全过程+心路历程
  15. HQL:求出每个商品的打折天数
  16. 失去英国电信的华为是否会失去整个欧洲?
  17. 利用VBA建立基金或者股票的实时净值和日线或者周线图并一键生成word文章
  18. 混凝土破碎设备在城市建设中功不可没
  19. VMware Ubuntu 22.04 配置静态IP
  20. 招商基金数字化转型下的研发管理|ONES 客户案例

热门文章

  1. 数据治理之数据质量管理
  2. 数学模型:优化模型(一)存贮问题
  3. Ubuntu16.04 + Digits + caffee
  4. c# winform Get请求接口
  5. OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x000001faf3e50000
  6. python spark教程菜鸟教程_菜鸟教程hadoop-hadoop入门教程
  7. 读书笔记3——《用户故事与敏捷方法》
  8. DB2的下载、图解安装、可能出现的问题(一篇解决)
  9. win10 文件夹背景 win10教程
  10. Win10蓝屏原因分析记录