现代IT中的垂直字母

哈Ha! 我们这个时代的双向写作并不会让任何人感到惊讶。 Unicode控制字符支持它;已为其创建HTML <bdo>标记。 但是,水平脚本并不是唯一存在的用于记录人类语音的脚本。 除了通常的从左到右和从右到左之外,还有两个用于垂直书写的选项。 第一个是东亚语,用于基于中文的语言。 在它们中,象​​形文字从上到下,线条从右到左。 这种写作风格在日语中被称为“ Tategaki ”,在中文中被称为“ Dumb ”,在韩语中被称为“ Chonso ”。 我注意到,在这三种语言中,我们也使用了从左到右熟悉的欧洲风格,分别在日语中称为“ yokogaki ”,汉语中称为henpai ”和朝鲜语中称为hinso ”。 的确如此,今天亚洲人从左到右使用计算机进行书写和阅读。 第二种选择是蒙古语,字符也从上到下,但行从左到右。 在现代蒙古,这种书写风格早已被欧洲取代,但在中国的某些地区,它仍然可以记录蒙古语言。 那么多少计算机支持这样的字母呢? 让我们在不同的信息技术应用程序中查找垂直工件。

代码页


首先想到的是编码。 Unicode具有用于在两个方向上更改,插入和替换书写方向的控制字符,但是垂直书写没有上述内容。 唯一的问题是,从位置U + FE10到位置U + FE1F有“垂直形式”的块,以及从U + FE30到U + FE4F的“ QC兼容形式”,其中包含一些亚洲文字所使用的标点符号。 是否支持其他编码的垂直书写? 答案是否定的。 我检查了许多不同的代码页家族:BIG,BS,CP,CZA,EBCDIC,EUC,GB,HP,IBM,INIS,ISO,JIS,MAC,TRON,而且我从未发现过垂直书写能力的暗示。 不幸的是,在本节中,我们减去了很多。

桌面出版


考虑两个系统:Microsoft Office Word 2007和LibreOffice Writer6。我想在此处添加OpenOffice Writer 4,但它们与LibreWriter一起是一个单独的字段。 首先,让我们弄清楚这些程序的界面是否允许您完全垂直旋转文本,然后依次以docx,odt,xml DocBook,rtf和pdf格式保存并打开文档。

*旋转文本-表示精确旋转,设置方向。 我们不会考虑一行中只有一个字符且前导减少的方法。

因此,在提到的文字处理器中垂直书写的唯一方法是创建一个“题词”对象,并使用面板中的题词工具来更改文本的方向。 让我们尝试一下。 以任何亚洲文字为例,例如“こははは世界!”,然后执行指示的操作。

Microsoft Office Word



是的,Word让我感到失望。 随着文字的方向,他把所有的字符都翻了过来,就好像是普通的欧洲文字一样。 保持这样的结果没有任何意义。 让我们看看其他编辑器中发生了什么。

LibreOffice Writer



另一件事。 此外,LibreOffice知道欧洲字符与亚洲字符之间的区别,通常的“ Hello world”以字母开头:



在所有格式中,只有.odt和.pdf能够在标签中传输垂直文本。 此外,我无法使用LibreOffice Writer更改行的顺序。 线条仅从上至下或从右至左,仅此而已。

的HTML


更具体地说,它的CSS子空间。 有一个通用的写入模式属性,用于设置元素中文本的方向。 在撰写本文时,让我们检查一下最新版本的Mozilla Firefox和Google Chrome浏览器是如何进行的。 将属性应用于拉丁字符,加纳字符和汉字的组合段落(<p style =“ Writing-mode:vertical-rt; ”>ははは世界!<br />你好,世界!</ p>)。

Mozilla Firefox



谷歌浏览器



两种浏览器都进行管理并显示了预期的结果。 要更改线条的方向(从左到右),您需要指定写入模式:vertical-lt;

但是等等。 在亚洲语言中,使用垂直书写时,一些标点符号会旋转90度。 浏览器是否正确?

Mozilla Firefox



谷歌浏览器



不幸的是,第二个浏览器由于某种原因失败,没有显示日语标点符号,而是显示三个字符。

而且由于Mozilla Firefox浏览器是赢家,因此我们将尝试使用垂直装箱这种东西。 这些是对象形文字的某种注释,提示如何正确发音。 在文本中,它们从左到右分别写象形文字的上方 ,在文本中从上到下书写象形文字的右侧 。 让我们尝试使用<ruby>和<rt>标记在该段落中添加Furigan:



Mozilla做到了。

现在,我将留下一些链接。

WPF库,可将垂直文本添加到Windows应用程序
适用于iOS的垂直阅读器
她的混蛋
另一位读者
您可以在评论中添加此列表。

因此,我们发现只有在Mozilla Firefox浏览器中使用CSS才能获得完整的垂直文本。 可悲的结论。 为了使立垣和蒙古文的文字工作正常进行,我创建了DKOTI(文本信息交换二进制代码)代码系统。 关于其内容以及如何在Linux中添加适当的语言环境,如果您表达了这种愿望,我将撰写另一篇文章。

Source: https://habr.com/ru/post/zh-CN459568/


All Articles