标签: emoji

覆盖表情符号图形

我想用我自己的自定义图形覆盖表情符号图标(仅在我的应用程序中).

从我到目前为止所读到的,一种可能的解决方案是创建一个自定义字体扩展,它会覆盖所需的unicode字符.我希望保持与CATextLayer的互操作性.

编辑:看起来自定义字体不是我的解决方案; 字体必须以灰度定义.下一个可能性:创建一个自定义CALayer,根据表情符号代码将字符串分成多个段,并手动进行类型设置+图形渲染(即使用核心图形和核心文本)

编辑:还希望在表视图中保持平滑的滚动性能.

iphone core-text ios emoji

14
推荐指数
1
解决办法
3708
查看次数

{Emoji_Presentation} 和 {Extended_Pictographic} 有什么区别?

“如何使用 javascript 检测表情符号”问题的最佳答案Extended_Pictographic使用.

Emoji_PresentationDavid Walsh在这篇博文中提到了。

javascript emoji

14
推荐指数
2
解决办法
4748
查看次数

为什么 /a 有效时 / 是无效路径?

我\xe2\x80\x99m 试图理解为什么某些 HTML 属性未通过 W3C 验证。我在真实的代码库中遇到了这个问题,但这里\xe2\x80\x99s是一个最小的复制:

\n
<!DOCTYPE html><html lang="en"><head><title>a</title></head><body>\n\n<img alt="1" src="\xe2\xad\x90">\n<img alt="2" src="/\xe2\xad\x90">\n<img alt="3" src="/a\xe2\xad\x90">\n<img alt="4" src="/a/\xe2\xad\x90">\n<img alt="5" src="">\n<img alt="6" src="/"> <!-- Only this is invalid. -->\n<img alt="7" src="/a">\n<img alt="8" src="/a/">\n\n</body></html>\n
Run Code Online (Sandbox Code Playgroud)\n

W3C 验证器仅报告一个错误,影响第六张图像:

\n
\n
    \n
  1. 错误:元素/属性值错误:路径段中存在非法字符:不允许。srcimg?

    \n
    <img alt="6" src="/">\n
    Run Code Online (Sandbox Code Playgroud)\n
  2. \n
\n
\n

为什么只有这个有问题,其他的没有?\xe2\x80\x99 有什么不同?

\n

html url-parsing w3c-validation emoji

14
推荐指数
1
解决办法
711
查看次数

Apple彩色表情符号字体是如何工作的,是否有Android版本?

我在iPhone上看到有一种名为Apple Color Emoji的truetype字体.它包含iPhone上存在的表情符号,可用于任何应用程序.

我想知道:

  1. 这个字体是如何以多色显示的?!Truetype字体只能包含黑白字形.
  2. 可以在Android手机上使用这种字体或类似的字体吗?

iphone fonts android truetype emoji

13
推荐指数
2
解决办法
7476
查看次数

检测用户是否在UITextView中键入了表情符号字符

我有一个UITextView,我需要检测用户是否输入表情符号字符.

我认为只检查最新字符的unicode值就足够了,但是对于新的表情符号2s,一些字符分散在整个unicode索引中(即Apple新设计的版权和注册徽标).

也许与使用NSLocale或LocalizedString值检查字符的语言有关?

有谁知道一个好的解决方案?

谢谢!

unicode objective-c detect ios emoji

13
推荐指数
1
解决办法
2万
查看次数

在Google Chrome中显示表情符号

我有一个支持聊天的Google Chrome扩展程序.Chrome扩展程序显示桌面通知中发送给您的邮件.我注意到每当我从iPhone发送表情符号时,它都会在桌面通知中正确显示.但是当我尝试在实际应用程序中显示相同的表情符号时(它是一个注入页面的iframe),它显示为正方形.

好像https://code.google.com/p/chromium/issues/detail?id=62435上有一个漏洞.我想知道为什么它在桌面通知中正常工作而不是其他?还有,我能做些什么来解决它吗?

google-chrome google-chrome-extension emoji

13
推荐指数
1
解决办法
3万
查看次数

如何检测用户何时更改键盘?

有没有办法检测用户何时更改键盘类型,特别是在这种情况下更改为表情符号键盘?

cocoa-touch uikeyboard ios emoji

13
推荐指数
1
解决办法
6891
查看次数

获取表情符号字符的描述

每个表情符号都有一个描述,你可以在Mac OS的??Space特殊字符选择器中看到.这里列出了它们.有没有办法让我在代码中查询这个描述(没有将它们全部输入到Struct中)?

我想做点什么:

let : Character = ""
let desc: String = .description
Run Code Online (Sandbox Code Playgroud)

desc决心"SMILING FACE WITH OPEN MOUTH AND SMILING EYES".

string character emoji swift

13
推荐指数
3
解决办法
2894
查看次数

为什么表情符号有两个不同的utf-8代码?如何从utf-8转换表情符号,在ios中使用NSString?

我们发现了一个问题,一些表情符号有两个utf-8代码,例如:

emoji   unicode    utf-8                another utf-8
      U+1F601    \xf0\x9f\x98\x81     \xed\xa0\xbd\xed\xb8\x81
Run Code Online (Sandbox Code Playgroud)

但是ios语言无法解码其他类型的utf-8,因此当我从utf-8解码字符串时会产生错误.

ios代码


在我找到的所有文档中,我只能为表情符号找到一种类型的utf-8代码,无处找到另一种代码.

我引用的文件包括:

表情符号代码链接

整个utf-8代码链接

但是在web工具bianma中,所有两种类型的utf-8代码都可以正确转换为表情符号.

输入代码

输出中


所以,我的问题是:

  1. 为什么一个表情符号有两种类型的utf-8代码?

  2. 哪个文件包含两种类型的utf-8代码?

  3. 如何使用ios语言中的NSString正确转换utf-8中的字符串?

unicode utf-8 nsstring ios emoji

13
推荐指数
1
解决办法
2万
查看次数

将Laravel MYSQL更改为utf8mb4以用于现有数据库中的表情符号支持

我正在使用Laravel 5.3,我已经设置了我的生产服务器.已使用以下数据库配置创建所有数据库迁移:

'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', 'localhost'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],
Run Code Online (Sandbox Code Playgroud)

但是现在,我的一些用户报告说,当他们尝试保存带有表情符号图标的表单时,他们会收到错误.搜索后我发现我需要设置mysql字符集才能utf8mb4使其工作,所以我的配置应该是这样的:

'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', 'localhost'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8mb4',
            'collation' => …
Run Code Online (Sandbox Code Playgroud)

mysql emoji laravel laravel-migrations laravel-5.3

13
推荐指数
3
解决办法
7303
查看次数