Macbook,使用Lualatex的emoji包在论文中插入emoji表情使用Noto Color Emoji

我原来是用的xelatex的,然后想在beamer中插入emoji表情,但是发现使用

\usepackage{emoji}

这句话在xelatex中没用,然后在vscode中看到他提示说emoji包只能用lualatex编译

然后我看了这个documentation中,真的emoji只支持用lualatex,难受。

只能重新写过了。


然后我安装这个网址:https://fonts.google.com/noto/specimen/Noto+Emoji在mac中安装了noto emoji,然后在代码中设置了\setemojifont{Noto Color Emoji}。

安装过程是:直接下载Noto的压缩包,然后打开这个ttf,mac会自动安装这个字体。然后在mac的字体册中的我的字体中就可以看到这个Noto emoji了。

然后就可以在lualatex中使用了。

\documentclass{beamer}
\usepackage{luatexja-fontspec} % 加载 luatexja-fontspec 宏包以支持中文和字体设置
\usepackage{fontspec} % 加载 fontspec 宏包以设置字体

\usepackage{emoji}
% 设置中文字体
\setmainjfont{PingFang SC} % 尝试使用 PingFang SC 代替 Heiti SC
\setmainfont{Times New Roman} % 设置英文字体

% 设置支持表情符号的字体
%\setemojifont{Apple Color Emoji}
\setemojifont{Noto Color Emoji} %或者用
\begin{document}

	这是中文文本。

	这是一个表情符号:\emoji{joy}

\end{document}

要在 NodeCanvas 绘制带有 emoji 表情的字符串,需要遵循以下步骤: 1. 安装 canvas 模块。在终端输入以下命令: ``` npm install canvas ``` 2. 使用以下代码创建一个 Canvas 实例: ```javascript const { createCanvas } = require('canvas'); const canvas = createCanvas(800, 600); const ctx = canvas.getContext('2d'); ``` 3. 确定要使用的支持 emoji 的字体。在本例,我们将使用 Noto Color Emoji 字体: ```javascript ctx.font = '40px Noto Color Emoji'; ``` 4. 使用以下代码将带有 emoji 表情的字符串绘制到 Canvas 上: ```javascript const text = 'Hello, 😃!'; ctx.fillText(text, 50, 50); ``` 这将在 Canvas 上绘制出 "Hello, 😃!" 这个字符串,其 😃 表示一个笑脸的 emoji 表情。 5. 最后,将 Canvas 保存为 PNG 或 JPEG 格式的图像。在本例,我们将它保存为 PNG 格式: ```javascript const fs = require('fs'); const out = fs.createWriteStream(__dirname + '/output.png'); const stream = canvas.createPNGStream(); stream.pipe(out); out.on('finish', () => console.log('The PNG file was created.')); ``` 完整代码示例: ```javascript const { createCanvas } = require('canvas'); const canvas = createCanvas(800, 600); const ctx = canvas.getContext('2d'); ctx.font = '40px Noto Color Emoji'; const text = 'Hello, 😃!'; ctx.fillText(text, 50, 50); const fs = require('fs'); const out = fs.createWriteStream(__dirname + '/output.png'); const stream = canvas.createPNGStream(); stream.pipe(out); out.on('finish', () => console.log('The PNG file was created.')); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值