首页
学习
活动
专区
圈层
工具
发布

谈谈那些奇怪的字符(上)

事实上,可能你早已见识过了: [图片] 今天我们就来探讨一下这些奇怪的字符。 一、文字可以戴帽子和穿鞋子 提起泰文,很多朋友都会立即想到:萨瓦迪卡(你好)。 但这句话是怎么写的呢?...完整的形式是这样的: 所以,平时看惯了中英文的我们,需要改变一下思路了。 世界上的文字,并不全是规规整整横向排列的格子,也存在像泰文这种变形金刚组合式的文字。...简单的说,泰文的每个基本字符对应一个编码,用户在输入法里依次输入多个基本字符进行拼合,最后敲一个特殊的“结束字符”;这时前面输入的基本字符,就拼合成了一个单独的泰文字符,在屏幕中显示。...[图片] 四、字体的错位 前面我们一直在谈字符的本质,但字符在屏幕中的展示,还有一个关键的因素:字体。 相同的字符,使用了不同的字体,它们的显示也会有差别。...而前面我们说到,大家在玩这些奇奇怪怪的字符时,都是基于“类似bug”的设定在搞事情。这就有很大的局限性。 那“艺术家”们又会有些大胆的想法:我能不能主动创造一些新字符,就是为了错位和组合呢?

1.5K90

谈谈那些奇怪的字符(上)

今天我们就来探讨一下这些奇怪的字符。...简单的说,泰文的每个基本字符对应一个编码,用户在输入法里依次输入多个基本字符进行拼合,最后敲一个特殊的“结束字符”;这时前面输入的基本字符,就拼合成了一个单独的泰文字符,在屏幕中显示。...其次,在比较新版本的Webkit里,在显示上会阻止这种往上下冒的字符,这样至少不影响排版。...所以有部分字符已经不会出现上下叠加的情形了,你可以在不同浏览器,观察一下这个字符的显示:ส็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็...比如我们常用的Emoji表情,就已经是Unicode的标准字符集。 而前面我们说到,大家在玩这些奇奇怪怪的字符时,都是基于“类似bug”的设定在搞事情。这就有很大的局限性。

1.3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Jenkins 控制台输出中的奇怪字符

    有时候,在对一些文件进行编译的时候,会看到下面的奇怪输出字符。 e[1;33m 如上图显示的貌似一些乱码的东西。...问题和解决 其实这个不是问题,这是因为在你的程序中可能使用了 ANSI escape code 这种输出。 其目的是为了在中断中显示彩色的输出内容。...这种显示方式如果你的终端不支持的话就会显示出上面的类似乱码。 针对 Jenkins ,你则需要通过安装 AnsiColor 这个插件来解决了。...具体安装的方法我们就不在这里说了,你可以通过访问 Jenkins 的插件界面,通过搜索插件名称来进行安装。 上图显示已经安装成功的插件。...然后保存退出后再对你的项目在 Jenkins 上进行重新编译。 这个时候就可以在控制台上看到彩色输出了。 如上图显示的彩色输出。

    2.8K00

    谈谈那些奇怪的字符

    今天我们就来探讨一下这些奇怪的字符。...简单的说,泰文的每个基本字符对应一个编码,用户在输入法里依次输入多个基本字符进行拼合,最后敲一个特殊的“结束字符”;这时前面输入的基本字符,就拼合成了一个单独的泰文字符,在屏幕中显示。...其次,在比较新版本的Webkit里,在显示上会阻止这种往上下冒的字符,这样至少不影响排版。...所以有部分字符已经不会出现上下叠加的情形了,你可以在不同浏览器,观察一下这个字符的显示:ส็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็...而前面我们说到,大家在玩这些奇奇怪怪的字符时,都是基于“类似bug”的设定在搞事情。这就有很大的局限性。 那“艺术家”们又会有些大胆的想法:我能不能主动创造一些新字符,就是为了错位和组合呢?

    1.5K70

    谈谈那些奇怪的字符

    今天我们就来探讨一下这些奇怪的字符。...简单的说,泰文的每个基本字符对应一个编码,用户在输入法里依次输入多个基本字符进行拼合,最后敲一个特殊的“结束字符”;这时前面输入的基本字符,就拼合成了一个单独的泰文字符,在屏幕中显示。...其次,在比较新版本的Webkit里,在显示上会阻止这种往上下冒的字符,这样至少不影响排版。...所以有部分字符已经不会出现上下叠加的情形了,你可以在不同浏览器,观察一下这个字符的显示:ส็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็...而前面我们说到,大家在玩这些奇奇怪怪的字符时,都是基于“类似bug”的设定在搞事情。这就有很大的局限性。 那“艺术家”们又会有些大胆的想法:我能不能主动创造一些新字符,就是为了错位和组合呢?

    2K10

    当 Python 爬虫搭配起 Bilibili 唧唧,奇怪的生产力出现了

    一开始我需要在B站搜索关键词,然后不断点开视频后进行下载,同时在视频下载后还需要找到这个视频来修改BV号,效率实在太低,特别是当下载的视频多了,再返回来寻找它对应的BV号时也是个很繁琐的过程,因此决定进行编写...本次的脚本可以大幅度提高工作效率,但是它并不是全自动完成任务的,毕竟我们用到了Bilibili唧唧。...提取出网页里视频的url链接以及对应的视频名。...唧唧下载视频 给出唧唧的链接:http://jijidown.com/,很好用的小工具。 我们只需要将刚才爬取好的链接放在一边,不断复制BV号,然后唧唧进行下载即可。 ?...Python爬虫") os.chdir(bvpath) d = {} ''' bvdownload.txt里存放bv号与title名 若之前爬虫爬取了几千个,而唧唧只下载了几百个

    83210

    歌词显示控件的实现(上)——歌词解析

    考虑到歌词显示控件涉及到歌词解析,自定义控件的实现等等诸多方面,可能文章的篇幅上会比较冗长,同时也为了方便自己和码友们能够根据自己的需求和爱好各取所需,将《歌词显示控件的实现上》这篇文章分成上、下两篇,...分别是《歌词显示控件的实现上——歌词解析》和《歌词显示控件的实现下——歌词展示自定义View》。..., 2、再又转换成字符流 3、然后再调用BufferedReader的readLine()方法逐行读取文件内容 就能获得文件内容了,在这里有一点需要注意的是,各种流在使用结束后一定要调用close()方法关闭...首先拿到"]"字符的索引,然后截取对应标签的内容进行匹配,分别进行赋值。...这里就很简单了,不再累赘,注意一下使用StringBuilder拼接每行的歌词内容,每次拼接完成后加换行,才能出现我们想要的结果。 再看下效果: ?

    2.6K20

    WPF 图片显示中的保留字符问题

    但是前段时间遇到了一件奇怪的事: 开发机上运行正常的程序,在某些客户机器上却显示不了图片,而且除了这个问题,其它运行情况都正常。开始排查问题吧,先检查代码,然后检查编译打包过程,并没有发现任何问题。...再然后去客户机器上测试,对应路径下的图片是否存在,是否图片所在路径的读写有问题,还是没有发现问题。最后发现,当程序移到其它路径的时候,就一切正常了。而出现错误的路径是:D:\\C#\\ 。...这就是今天想说的问题,某些特殊符号(或叫保留字符)对图片显示的影响。 首先简单回顾一下WPF中显示图片常用的两种图片资源存储方式:资源 和 内容。资源会被编译到exe或dll中,使用优势是速度,简便。...看到这里就很明显了,我们的图片因为项目路径的关系,包含了“#”符号,而图片又使用了内容的方式,导致URI解析失败,图片没有显示。...好了,到此为止就已经很明确的知道了导致错误的原因了,但是暂时还没想到解决办法,只能告诉用户去规范目录命名,如果哪位有解决办法,欢迎回复赐教,感谢!

    1.6K110

    LCD作为终端显示字符串的过程

    GUI的字符串处理与中文字库显示,也许并不会特别关注,因为GUI已经帮助我们封装了一些通用的API,在调用相对应的API就可以显示想要的图像和字符串了。...有了上述资源,就可以进行后面的探究了,下面来梳理一下显示原理。 3.显示原理 计算机图形本质上就是像素点的集合,更加具体的就是红黄蓝三原色的组合。 ? 三原色的排布组成了一个像素点。...而这些像素的亮度决定了最后显示在屏幕上的效果。...上述就是字符1在字符中的存放信息,每个字节按位展开,.表示0,@表示1。则右边的注释展示了该串字符的信息。如果我们将上述信息告诉给cpu,然后CPU处理这些信息放到LCD上显示则可以显示字符串1。...一个标准字库是包含多个这样的字符串结构的,所以字符串需要一张表记录这些信息,根据asiic码表排序,字库的存放顺序也可如此,然后一个索引表记录着每个字符串的宽度,数组所在的起始地址信息,有了这些信息,就可以依次做解析然后转换成像素进行显示了

    1.6K20

    浅谈C中的wprintf和宽字符显示

    “也谈计算机字符编码 ”,由于前一阵业余翻译了“UTF-8 and Unicode FAQ for Unix/Linux”一文,自己对字符集、编码和Unicode等内容一直保着者很强的兴趣,自然不会放过这样的文章...作者的文章写得很明白易懂,虽然有一些概念上的细节问题我觉得有商榷之处;作者还给出一个简单的在windows下使用wprintf正确输出字符串“中文”的小例子,我linux下模仿作者给出的示例代码写了如下的示例代码...out   -   N 中文   问题解决了,可我还是感到迷茫:格式转换符"ls"和“s"的区别是什么?为什么原来的程序会出问题?“-N"这个字符串是怎么冒出来的?...就能正确识别受到的字节流并显示出"中文"  例子3  wprintf + %s +wstr (最初的代码!)  ...因此wprintf会顺利的将给定的宽字符串写入标准输出流,最终正确显示"中文"  看完这4个例子,你对wprintf、printf和%ls 、%s的使用还有疑惑么?  四、小结      1。

    1.4K20

    回显字符集显示乱码的问题

    有时我们使用SecureCRT软件连接到我们的Oracle目标主机,会发现有些回显信息显示为乱码,非常不方便操作。 本文将介绍最常见的两种乱码情况解决方法。...一、系统字符集显示乱码 1.1 echo $LANG 查看系统字符集 1.2 根据系统字符集,CRT设置对应的字符集编码 二、sqlplus 字符集乱码 2.1 echo $NLS_LANG 查看设置值...2.2 根据系统字符集,设置对应的NLS_LANG变量 一、系统字符集显示乱码 系统输入命令回显中文会显示乱码,表现如下: ``` # df -h 鏂囦欢绯荤粺 瀹归噺 宸茬敤...-> Appearance -> Character encoding 选择与系统对应的字符集编码。...一般情况下: bash 对应配置文件 ~/.bash_profile csh 对应配置文件 ~/.cshrc 至此,我们就可以顺畅的操作,不再有字符集乱码的烦恼了。

    1.1K30

    762 字符串匹配----给定两个长度相同的字符串 a 和字符串 b。如果在某个位置 i 上,满足字符串 a 上的字符 a 和字符串 b 上的字符 b 相同,那么这个位置上的字符就是匹配

    给定两个长度相同的字符串 aa 和字符串 bb。...如果在某个位置 ii 上,满足字符串 aa 上的字符 a[i]a[i] 和字符串 bb 上的字符 b[i]b[i] 相同,那么这个位置上的字符就是匹配的。...如果两个字符串的匹配位置的数量与字符串总长度的比值大于或等于 kk,则称两个字符串是匹配的。 现在请你判断给定的两个字符串是否匹配。...输入格式 第一行包含一个浮点数 kk,第二行包含字符串 aa,第三行包含字符串 bb。 输入的字符串中不包含空格。 输出格式 如果两个字符串匹配,则输出 yes。 否则,输出 no。...数据范围 0≤k≤10≤k≤1, 字符串的长度不超过 100100。

    1.3K20

    html页面导出为pdf(jsPDF、iText、wkhtmltopdf)

    调研了几种html导出pdf的实现方式,这里把要点记录下来分享下。...调研对象 优点 缺点 分页 图片 表格 链接 中文 特殊字符、样式 导出样例 备注 jsPDF 1、整个过程在客户端执行(不需要服务器参与),调用简单 1、生成的pdf为图片形式,且内容失真 支持 支持...一、html2canvas+jsPDF ---- 这种方式的原理是利用html2canvas遍历页面中的dom节点,渲染成canvas image,再用jsPDF把canvas image转化为pdf,...目前发现的两个比较明显的缺点: 1、生成的pdf质量不高,失真比较严重(不过在github上这个方法可以适当提高下生成pdf的清晰度https://github.com/niklasvh/html2canvas...字符串来生成pdf,需要注意的是: 1、如果页面中有中文,服务器端需要下载字体库simsun.ttc,在后台进行引用,同时在页面的样式中加入对应字体的定义,如:body{font-family: SimSun

    7.9K10

    你家的智能音响发出奇怪的声音了吗?那么可能被黑客入侵了

    智能家居的普及使人们的生活更加的便利和丰富多彩,比如将智能音响连接到家里WiFi,不管放置在家中的任何角落,都可以享受到互联网中的所有音乐,播客,网络电台,既方便,又提升了生活品味。...然而最近有研究人员发现,智能音响竟然为黑客入侵家庭网络提供了快捷通道!主要是具有公开密钥的 Sonos 和 Bose 智能音箱存在安全漏洞,黑客能够通过简单的网络扫描进行远程操控。...不过,一名用户在 Sonos 论坛上曝光的事情,就令人担忧了:她的 Sonos 智能音箱以最大的音量发出了房门嘎吱作响、婴儿啼哭以及玻璃摔碎的声音,因此她本人受到了很大惊吓。...不过,它再一次提醒人们,特别注意家中所有互联设备的安全性,从路由器到网络设备,尤其是我们的隐私被越来越多配有摄像头和麦克风的智能设备捕捉的情况下,说不定有坏心眼的黑客就利用这些漏洞进行犯罪呢,轻则给我们惊吓...,重则造成我们的损失,之前还听到消息有人银行卡密码被盗,就是因为家里智能家居泄密了,还有公共网的游戏卡号,里面的装备也很值钱,全被黑客卖了,损失惨重啊!

    1.1K60

    如何仅使用 JavaScript 将任何 HTML 页面或表单转化为 PDF文件

    PDF 是一种流行的文件格式,我们用来在不同平台和设备上呈现和共享具有固定布局的文档。...在结果上,我们调用 save(),传递我们想要的输出 PDF 文件的名称。...这是我们打开 PDF 时显示的内容: 安装 jsPDF 要开始使用 jsPDF 库,我们可以使用以下命令从 NPM 安装它: npm i jspdf 安装后,我们可以将其导入到 JavaScript...click', async () => { await doc.html(formEl).save('test.pdf'); }); 在网页中,我们在两个表单输入中放入了一些测试值,以查看它们是否显示在...PDF: 但是,我们无法与 PDF 文件中的表单输入或按钮进行交互。 总结 jsPDF 库提供了一种将 HTML 内容(包括表单)转换为 PDF 格式的便捷方式。

    5K20

    房上的猫:字符串

    >可以通过使用String类提供的方法来完成对字符串的操作    >String类提供了许多有用的方法,如获得字符串长度,对两个字符串进行比较,连接两个字符串及提取一个字符串中的某一部分 二.字符串长度...=="于equals的区别:   (1)"=="判断的是两个字符串对象在内存中的首地址是否相等,即判断是否是同一个字符串对象   (2)equals判断的是两个字符串对象的值是否相等  3.字符串中的忽略大小写...转换字符串中的英文字母为大写     //返回字符串的大写形式 四.字符串的连接  连接字符串的方法又两种:使用"+"运算符和使用String类的concat()方法  1."...,它返回出现第一个匹配字符的位置   (2)如果没有找到匹配,则返回-1   (3)调用时,括号中写明要搜索的字符(或字符串)的名字  2.lastIndexOf()方法:   该方法也是在字符串内搜索某个指定的字符或字符串...,但是它是搜索最后一个出现的字符(或字符串)的位置  3.substring(int index)方法:   该方法用于提取从位置索引开始的字符串部分,调用时括号中写的是要提取的字符串的开始位置,方法的返回值就是要提取的字符串

    1.1K70
    领券