【问题标题】:Replace Emoji with image while preserving it as an Emoji用图像替换表情符号,同时将其保留为表情符号
【发布时间】:2021-09-26 02:31:12
【问题描述】:

我想用自定义图像替换我网站上的表情符号。这本身在 PHP 中不会有问题:

$string = "This is a laughing emoji 😂";
echo str_replace($string, "😂", ":'D"); //or replace with an image

但是,如果有人复制文本,我该如何管理,他们将能够复制带有表情符号的文本而不是替换的图像?就像保留字符😂 ????但只会改变结果,以便每个用户看起来都一样。这有可能吗?

【问题讨论】:

    标签: javascript php emoji


    【解决方案1】:

    一种方法是用<img> 图像标签替换表情符号,但将图像的alt 属性设置为原始表情符号。然后,如果将结果复制到只接受文本的地方,则将使用替代文本。

    “运行”这个 sn-p 看一个例子:

    Hello <img alt="&#128512;" src="data:image/png;base64,R0lGODlhDAAMAKIFAF5LAP/zxAAAANyuAP/gaP///wAAAAAAACH5BAEAAAUALAAAAAAMAAwAAAMlWLPcGjDKFYi9lxKBOaGcF35DhWHamZUW0K4mAbiwWtuf0uxFAgA7"> world!
    <br/>
    <textarea cols="25" rows="3">Paste here</textarea>

    两个词之间的表情符号看起来像 Gmail 表情符号,直到您将整行文本复制到某处。

    当然,您可以使用普通 URL 代替 data: URL。

    【讨论】:

    • 谢谢!我正要回答我的一个问题,因为以某种方式写下来解开了我大脑中的结。我真的应该习惯Rubber Ducking,我怎么会这样卡住? :D
    【解决方案2】:

    不,每个系统都有自己的字体集(包括表情符号),这就是它们在 android 和 iOS 上看起来不同的原因。您能够添加内容的唯一方法是在系统字体之外,即图标集。您可以包含图片或图片链接。

    <img src="imageLocation" alt="altTextorImage">
    

    【讨论】:

      猜你喜欢
      • 2022-07-23
      • 1970-01-01
      • 2019-12-11
      • 1970-01-01
      • 2020-12-03
      • 2016-03-22
      • 2014-06-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多