Twitter Emoji (特维莫吉语)
一个提供标准 Unicode 的简单库 爱莫吉 在所有平台上提供支持.
Twemoji v17.0 (英语) 遵守 Unicode 17.0 spec 并支持 Emoji 17.0 spec。 。 。 . 我们不支持定制的emoji.
Twemoji 库为所有推荐用于一般交换的 Unicode 定义的 emoji 提供支持.
使用量
通过国家预防机制安装
运行您已启动的项目的以下内容 :
npm install @twemoji/api
CDN 支持
默认 CDN 支持通过 日记。 。 。 .
在下面 <head> hTML 文档的标记 :
<script src="https://cdn.jsdelivr.net/npm/@twemoji/api@latest/dist/twemoji.min.js" crossorigin="anonymous"></script>
这保证了您将永远使用最新版本的图书馆.
如果相反,您希望明确加入最新版本,您可以添加以下标记:
<script src="https://cdn.jsdelivr.net/npm/@twemoji/[email protected]/dist/twemoji.min.js" integrity="sha384-Y5xukbGJwykbHHkTbLJykYLcBPFxrwipTbEh0puxhkz9CZ90raTPGe2Ks4vCxsYU" crossorigin="anonymous"></script>
下载
如果您想要下载特定版本,请查看 gh-pages 分公司,你将在那里找到我们最新版本和旧版本的已建资产.
API 密码
下面是所有暴露在 twemoji 名称空间.
twemoji.parse (.) V1 (英语)
这是主解析工具, 每解析类型有3个超载 .
虽然这个工具支持两种解析,但我们建议你使用 DOM 解析,下文解释。 每类解析都接受回调以生成图像源或带有解析信息选项对象.
第二种解析是字符串解析,在遗留文献中解释 这里。这是不推荐的,因为这种方法不会使字符串消毒或以其他方式阻止恶意代码被执行;这种消毒已经超出了范围.
DOM 解析
如果第一个论点是 twemoji.parse 是一个 HTMLElement,生成的图像标记将替换 emoji 即 内部 #text 只有节点 完全避免使用 innerHTML。 。 。 .
如果安全是主要关切,这种解析可被视为最安全的选择,但因DOM操作不可避免地受到轻微的性能处罚 费用。 。 。 .
var div = document.createElement('div');
div.textContent = 'I \u2764\uFE0F emoji!';
document.body.appendChild(div);
twemoji.parse(document.body);
var img = div.querySelector('img');
// note the div is preserved
img.parentNode === div; // true
img.src; // https://cdn.jsdelivr.net/gh/jdecked/twemoji@latest/assets/72x72/2764.png
img.alt; // \u2764\uFE0F
img.className; // emoji
img.draggable; // false
所有其他超载情况 string dOM 解析方法完全相同.
作为参数的对象
以下是可选对象接受的属性列表,可以传递给 parse 函数.
{
callback: Function, // default the common replacer
attributes: Function, // default returns {}
base: string, // default jsDelivr
ext: string, // default ".png"
className: string, // default "emoji"
size: string|number, // default "72x72"
folder: string // in case it's specified
// it replaces .size info, if any
}
回调
用于生成图像的函数 src(s) (中文(简体) ).
默认它是一个类似以下函数:
function imageSourceGenerator(icon, options) {
return ''.concat(
options.base, // by default jsDelivr
options.size, // by default "72x72" string
'/',
icon, // the found emoji as code point
options.ext // by default ".png"
);
}
基础
默认url 与 twemoji.base,因此,如果修改了前者,它将反映为所有解析字符串或节点的默认值.
电话分机
默认图像扩展名与 twemoji.ext 这是 ".png"。 。 。 .
如果您修改了前者, 它会反映为所有解析字符串或节点的默认值 .
类Name
默认 class 每个生成的图像是 emoji。可以通过该属性指定不同的属性.
大小
默认资产大小与 twemoji.size 这是 "72x72"。 。 。 .
如果您修改了前者, 它会反映为所有解析字符串或节点的默认值 .
文件夹
如果你不想指定图像的大小。 可以选择一个文件夹,例如SVG emoji.
twemoji.parse(genericNode, {
folder: 'svg',
ext: '.svg'
});
这将生成 urls 这样 https://cdn.jsdelivr.net/gh/jdecked/twemoji@latest/assets/svg/2764.svg 而不是使用基于特定大小的图像.
公用事业
基本公用设施 / 帮助将代码转换为 JavaScript 代词,反之亦然.
twemoji.convert. from CodePoint () (中文(简体) )
对于给定的HEX编码点,返回UTF-16代对.
twemoji.convert.fromCodePoint('1f1e8');
// "\ud83c\udde8"
twemoji.convert.to CodePoint () (中文(简体) )
对于给定的UTF-16代位对子,返回等同的HEX编码点.
twemoji.convert.toCodePoint('\ud83c\udde8\ud83c\uddf3');
// "1f1e8-1f1f3"
twemoji.convert.toCodePoint('\ud83c\udde8\ud83c\uddf3', '~');
// "1f1e8~1f1f3"
提示
内嵌样式
如果您想根据周围的文本来大小化emoji,可以在您的样式表上添加以下 CSS :
img.emoji {
height: 1em;
width: 1em;
margin: 0 .05em 0 .1em;
vertical-align: -0.1em;
}
这会确保Emoji从.. font-size 显示的文本。 它还在每个emoji前后增加一点空间,并拉上一点来更好地进行光学对接.
UTF-8 字符集
要正确支持emoji,文档字符集必须设置为UTF-8. 这可以通过在文档中包含以下元标记来实现 <head>
<meta charset="utf-8">
排除字符( V1)
要排除某些字符被 twemoji.js所取代,请使用回调来调用 twemoji.parse(),为特定的unicode图标返回假. 例如:
twemoji.parse(document.body, {
callback: function(icon, options, variant) {
switch ( icon ) {
case 'a9': // © copyright
case 'ae': // ® registered trademark
case '2122': // ™ trademark
return false;
}
return ''.concat(options.base, options.size, '/', icon, options.ext);
}
});
遗留的 API (V1)
如果你还在使用我们的V1 API, 你可以读我们的遗产文件 这里。 。 。 .
捐款
提供的文件可见 这里。 。 。 .
分配要求
作为一个开放源码项目,在我们看来,从法律、实际和激励的角度来看,归属是至关重要的。 图片由CC-BY 4.0授权使用 最佳归因做法。 。 。 .
然而,我们认为指南有点繁琐,作为一个项目,将接受在项目README或网站“About”部分或页脚中提及。 在移动应用程序中,一个常见位置将位于Sets/About部分(例如,见移动Twitter应用程序设置->About->Legal部分)。 我们认为在HTML/JS来源中提及也足够.
社区项目
- Twemoji 骗局 以 @ShahriarKh (英语):一个用于探索,复制和下载emojis的易用欺骗表!
- 翠摩地 厉害 以 @ 塞巴斯蒂安·艾格纳: 使用 CSS 类( 如 字体帅呆了) (中文(简体) ).
- 特维莫吉·鲁比 以 @ Jolly好代码:在"鲁比"中使用"特"(Twemoji).
- 特莫吉乌蒂尔斯 以 @gustavwilliam (英语): 用于查找和下载Twemoji源文件的公用事业.
- 笔名的Twemoji 以 @Nathanielnw (英语):在"笔会"中使用"特"(Twemoji).
- FrwTwemoji - 点网中的Twemoji 以 @ 法语W:在任何多特网项目(C#,asp.net.)中使用Twemoji.
- Emojia some - 黄色的特维莫吉 以 @ datenstrom (英语):在您的网站上使用Twemoji.
- 推特的Emoji小组 以 @danielbovey (英语)在推特上插入Twemoji.
- Twitter 彩色 Emoji 字体 以 @bdelickson (英语): 在Linux & OS X上使用Twemoji作为您的系统默认字体.
- 爱莫吉卡 以 @xoudini (英语): 一个iOS框架允许您用Twemoji来替换所有字符串中的标准的emoji.
- 维莫吉 以 @nbartels (英语): 在 GWT 中使用 Twemoji
- JavaFXEmojiText 花样 以 @pavlobu (英语):一个JavaFX库,允许您将扩展的EmojiTextFlow中的所有标准emoji替换为Twemoji.
- Vue Twemoji 拾取器 以 @kevinfaguiar (法语): 为Vue提供快插件-n- play Twemoji Picker(+Twemoji渲染的文本域).
- EmojiOn Roku (英语) 以 @ KasperGam (英语):在"禄"上用"特活地"(Twemoji)!!
- LaTeX 特维莫吉 以 @rossel.jost (英语):在"LaTeX"中使用特维莫吉.
- Ưμ㼯A 以 @ 天文学: 在您的 PHP 网站项目中使用 twemoji, 用 twemoji urls 替换标准 Emoji .
- 自定义 Twemoji API 以 @blakegearin (英语): API用于取取Twemoji相貌并创建Twemoji相貌乳头.
提交者和贡献者
- Justine De Caires(前拖车)
- 杰森·索福尼亚(前特维尔特人)
- 布莱恩·哈格蒂(前特瓦特人)
- 内森·唐斯(前推特)
- 汤姆·武特克(前特派员)
- 安德里亚·吉阿迈尔奇(前特派员)
- 约恩·阿斯穆森(英语:Joen Asmussen (WordPress))
- 马库斯·卡兹米尔扎克(记者)
- 凯文·VQ水坝(前Discord)
- 吉卡·塔姆(Discord)
- 本·奥尔森(Discord)
这个项目的目标是简单地为每个人提供情感。 我们当然欢迎改进和修正,但由于该项目的简单性质,我们可能不会合并社区提出的每一项拉动请求.
缴款规则载于 CONTRIBUTING.md 文档.
谢谢大家 捐助者。 。 。 .
许可证
见 自由主义 财务报告和审定财务报表 自由-巨头 完整许可证文本的文件.
麻省理工学院许可的代码: http://opensource.org/licenses/MIT 互联网档案馆的存檔,存档日期2013-12-02
根据 CC-BY 4.0 许可的图形 : https://creativecommons.org/licenses/by/ 4.0/ (英语)