我在 html 电子邮件中使用unicode 黑色电话字符 (\xe2\x98\x8e U+260E)。在 iOS 邮件应用程序(在 iPhone 和 iPad 上测试)上,黑色电话字符呈现为红色表情符号电话图标。
\n\n
请注意,Unicode 白色电话字符 (\xe2\x98\x8f U+260F)不会显示为表情符号。
\n\n我尝试将字体强制为“Helvetica”\xe2\x80\xa6,但没有成功。
\n\n有没有办法强制 iOS Mail 使用纯黑色电话 unicode 字符?
\n不仅是基本角色,还有乱七八糟的胡言乱语。我知道 Zalgo 文本是通过组合 Unicode 字符创建的,并且由于表情符号是 Unicode 字符,因此我想到了这个想法。
我已经阅读了有关将图形表情符号转换为文本表示的方法的相关问题的答案。我已经测试过了,它奏效了。
我想要一些与魔法相关的角色,我可以按照我需要的方式使用 css 进行风格化。最好是魔杖,但那个表情符号还没有,所以我决定用Mage。
那就是我的问题开始的地方。我有一种将表情符号转换为文本的机制,并且我有一个我想要的表情符号,但这对似乎不能一起工作。我已经在 Firefox 和 Chrome 中对其进行了测试。两者都始终显示图形表示。Mage 表情符号在 Notepad++ 中显示为文本,所以并不是这样的表示不存在(我认为它总是应该可用,而对图形版本的支持可能不支持)。它不起作用的原因可能是什么?有没有其他方法可以强制文本版本?
这是我尝试过的示例(结果如下: ? ? ?? ? ?? ):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style>
body {
font-size: 5em;
}
</style>
</head>
<body>
🧙︎ 🎩︎ ✨︎ 🍔︎ ⌛︎
</body>
</html>Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 Go 打印从 JSON 文件加载的 Unicode 表情符号字符。当我加载和解组我的文件时,传递给的 struct 字段fmt.Println只打印转义的字符串序列。
例如,一个字符串存储在文件中{…"Unicode":"\\U0001f47f"}并打印它产生\U0001f417而不是表情符号字符。调用fmt.Printf("%q", str)yield \\U0001f417。我无法找到解决方案,我有点困惑。我试图删除转义序列并将其连接到模板字符串中,但没有任何影响。我也尝试使用字符串缓冲区,但它也不起作用。
我使用UITextView启用了文本属性编辑的 ,当文本中有表情符号时,我在获取属性时遇到问题。
这是我使用的代码:
var textAttributes = [(attributes: [NSAttributedString.Key: Any], range: NSRange)]()
let range = NSRange(location: 0, length: textView.attributedText.length)
textView.attributedText.enumerateAttributes(in: range) { dict, range, _ in
textAttributes.append((attributes: dict, range: range))
}
for attribute in textAttributes {
if let swiftRange = Range(attribute.range, in: textView.text) {
print("NSRange \(attribute.range): \(textView.text![swiftRange])")
} else {
print("NSRange \(attribute.range): cannot convert to Swift range")
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试使用“示例文本 ??”之类的文本时,输出如下:
NSRange {0, 12}:示例文本
NSRange {12, 1}:无法转换为 Swift 范围
NSRange {13, 1}:无法转换为 Swift 范围
如您所见,我无法获取带有表情符号的文本。
文本属性由我NSTextStorage在文本视图上应用的自定义设置。这是setAttributes …
我想检查字符串是否只包含表情符号,它不应该包含字母、数字或特殊字符。
使用一个表情符号可以正常工作,但对于两个以上的表情符号,它返回 false,请查看代码片段。
var emoji_regex = /^(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c[\ude32-\ude3a]|[\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])$/;
const emo_test = str => console.log(emoji_regex.test(str));
emo_test(""); //true
emo_test("hello"); //false
emo_test("9034"); //false
emo_test("$z5##"); //false
emo_test(""); //trueRun Code Online (Sandbox Code Playgroud)
对于最后一个它只包含表情符号所以应该返回true但它正在返回false,任何解决方案?
我们正试图让我们的应用程序接受表情符号。我们正在尝试将表情符号限制为此列表中的表情符号。
因此,我正在尝试读取表情符号的 unicode 值(例如,U+1F600 for ) - 这样我就可以验证用户输入的表情符号是否来自上述列表。
有人可以帮助我如何读取表情符号的 unicode 值吗?或任何其他方式我可以实现此验证?使用编码值等?
}
String actualEmojiString = "";
for(int i=0; i< actualEmojiString.codePointCount(0, actualEmojiString.length()); i++) {
int codePoint = actualEmojiString.charAt(i);
if(Character.isSurrogate(actualEmojiString.charAt(i))) {
codePoint = Character.toCodePoint(actualEmojiString.charAt(i), actualEmojiString.charAt(i));
}
System.out.println( "HexCode value for emoji: [" + actualEmojiString.charAt(i) + "] is [" +"U+" + Integer.toHexString(codePoint | 0x10000).substring(0) +"]"
+ "["+"\\u" + Integer.toHexString(codePoint | 0x10000).substring(1) + "]");
Run Code Online (Sandbox Code Playgroud)
输出:
HexCode value for emoji: [?] is [U+1f03d][\uf03d]
HexCode value for emoji: [?] is [U+190200][\u90200]
Run Code Online (Sandbox Code Playgroud) 我通过 Google 日历向我们的体育俱乐部提供团队日历。它包含多个团队和运动(如足球、网球、飞镖...)的所有比赛预约。我把 Unicode 图标放在主题的开头,比如飞镖板和我们家飞镖比赛的房子和外面的汽车。
像这样:DC Flight Control - Team Dart Donkies
在智能手机上,图标显示为彩色图像。
在 Win7 系统上的浏览器中为纯黑色图标。
在我的 Win10 系统上也是彩色图像。
相同的 Google 帐户、相同的视图、相同的 Google 设置...
这是一个视窗而定的东西吗?谁能解释一下?
正如大多数答案所建议的那样Ctrl + i对我不起作用。我在互联网上找不到答案。