diff --git a/app/resources/data/template.html b/app/resources/data/template.html
index 608178f..fbaf8ed 100644
--- a/app/resources/data/template.html
+++ b/app/resources/data/template.html
@@ -900,465 +900,6 @@ function renderPage(page) {
const startIndex = (page - 1) * itemsPerPage;
const endIndex = startIndex + itemsPerPage;
- // 工具类函数
- function replaceEmoji(text) {
-
- // 定义替换规则,可以根据需要添加更多规则
- var replacementRules = [
- {
- pattern: /\[微笑\]/g,
- replacement: '
'
- },
- {
- pattern: /\[发呆\]/g,
- replacement: '
'
- },
- {
- pattern: /\[撇嘴\]/g,
- replacement: '
'
- },
- {
- pattern: /\[色\]/g,
- replacement: '
'
- },
- {
- pattern: /\[发呆\]/g,
- replacement: '
'
- },
- {
- pattern: /\[得意\]/g,
- replacement: '
'
- },
- {
- pattern: /\[流泪\]/g,
- replacement: '
'
- },
- {
- pattern: /\[害羞\]/g,
- replacement: '
'
- },
- {
- pattern: /\[闭嘴\]/g,
- replacement: '
'
- },
- {
- pattern: /\[睡\]/g,
- replacement: '
'
- },
- {
- pattern: /\[大哭\]/g,
- replacement: '
'
- },
- {
- pattern: /\[尴尬\]/g,
- replacement: '
'
- },
- {
- pattern: /\[发怒\]/g,
- replacement: '
'
- },
- {
- pattern: /\[调皮\]/g,
- replacement: '
'
- },
- {
- pattern: /\[呲牙\]/g,
- replacement: '
'
- },
- {
- pattern: /\[惊讶\]/g,
- replacement: '
'
- },
- {
- pattern: /\[难过\]/g,
- replacement: '
'
- },
- {
- pattern: /\[抓狂\]/g,
- replacement: '
'
- },
- {
- pattern: /\[吐\]/g,
- replacement: '
'
- },
- {
- pattern: /\[偷笑\]/g,
- replacement: '
'
- },
- {
- pattern: /\[愉快\]/g,
- replacement: '
'
- },
- {
- pattern: /\[白眼\]/g,
- replacement: '
'
- },
- {
- pattern: /\[傲慢\]/g,
- replacement: '
'
- },
- {
- pattern: /\[困\]/g,
- replacement: '
'
- },
- {
- pattern: /\[惊恐\]/g,
- replacement: '
'
- },
- {
- pattern: /\[憨笑\]/g,
- replacement: '
'
- },
- {
- pattern: /\[悠闲\]/g,
- replacement: '
'
- },
- {
- pattern: /\[咒骂\]/g,
- replacement: '
'
- },
- {
- pattern: /\[疑问\]/g,
- replacement: '
'
- },
- {
- pattern: /\[嘘\]/g,
- replacement: '
'
- },
- {
- pattern: /\[晕\]/g,
- replacement: '
'
- },
- {
- pattern: /\[衰\]/g,
- replacement: '
'
- },
- {
- pattern: /\[骷髅\]/g,
- replacement: '
'
- },
- {
- pattern: /\[敲打\]/g,
- replacement: '
'
- },
- {
- pattern: /\[再见\]/g,
- replacement: '
'
- },
- {
- pattern: /\[擦汗\]/g,
- replacement: '
'
- },
- {
- pattern: /\[抠鼻\]/g,
- replacement: '
'
- },
- {
- pattern: /\[鼓掌\]/g,
- replacement: '
'
- },
- {
- pattern: /\[坏笑\]/g,
- replacement: '
'
- },
- {
- pattern: /\[右哼哼\]/g,
- replacement: '
'
- },
- {
- pattern: /\[鄙视\]/g,
- replacement: '
'
- },
- {
- pattern: /\[委屈\]/g,
- replacement: '
'
- },
- {
- pattern: /\[快哭了\]/g,
- replacement: '
'
- },
- {
- pattern: /\[阴险\]/g,
- replacement: '
'
- },
- {
- pattern: /\[亲亲\]/g,
- replacement: '
'
- },
- {
- pattern: /\[可怜\]/g,
- replacement: '
'
- },
- {
- pattern: /\[Whimper\]/g,
- replacement: '
'
- },
- {
- pattern: /\[笑脸\]/g,
- replacement: '
'
- },
- {
- pattern: /\[生病\]/g,
- replacement: '
'
- },
- {
- pattern: /\[脸红\]/g,
- replacement: '
'
- },
- {
- pattern: /\[破涕为笑\]/g,
- replacement: '
'
- },
- {
- pattern: /\[恐惧\]/g,
- replacement: '
'
- },
- {
- pattern: /\[失望\]/g,
- replacement: '
'
- },
- {
- pattern: /\[无语\]/g,
- replacement: '
'
- },
- {
- pattern: /\[嘿哈\]/g,
- replacement: '
'
- },
- {
- pattern: /\[捂脸\]/g,
- replacement: '
'
- },
- {
- pattern: /\[奸笑\]/g,
- replacement: '
'
- },
- {
- pattern: /\[机智\]/g,
- replacement: '
'
- },
- {
- pattern: /\[皱眉\]/g,
- replacement: '
'
- },
- {
- pattern: /\[耶\]/g,
- replacement: '
'
- },
- {
- pattern: /\[吃瓜\]/g,
- replacement: '
'
- },
- {
- pattern: /\[加油\]/g,
- replacement: '
'
- },
- {
- pattern: /\[汗\]/g,
- replacement: '
'
- },
- {
- pattern: /\[天啊\]/g,
- replacement: '
'
- },
- {
- pattern: /\[Emm\]/g,
- replacement: '
'
- },
- {
- pattern: /\[社会社会\]/g,
- replacement: '
'
- },
- {
- pattern: /\[旺柴\]/g,
- replacement: '
'
- },
- {
- pattern: /\[好的\]/g,
- replacement: '
'
- },
- {
- pattern: /\[打脸\]/g,
- replacement: '
'
- },
- {
- pattern: /\[哇\]/g,
- replacement: '
'
- },
- {
- pattern: /\[翻白眼\]/g,
- replacement: '
'
- },
- {
- pattern: /\[666\]/g,
- replacement: '
'
- },
- {
- pattern: /\[让我看看\]/g,
- replacement: '
'
- },
- {
- pattern: /\[叹气\]/g,
- replacement: '
'
- },
- {
- pattern: /\[苦涩\]/g,
- replacement: '
'
- },
- {
- pattern: /\[難受\]/g,
- replacement: '
'
- },
- {
- pattern: /\[裂开\]/g,
- replacement: '
'
- },
- {
- pattern: /\[嘴唇\]/g,
- replacement: '
'
- },
- {
- pattern: /\[爱心\]/g,
- replacement: '
'
- },
- {
- pattern: /\[心碎\]/g,
- replacement: '
'
- },
- {
- pattern: /\[拥抱\]/g,
- replacement: '
'
- },
- {
- pattern: /\[强\]/g,
- replacement: '
'
- },
- {
- pattern: /\[弱\]/g,
- replacement: '
'
- },
- {
- pattern: /\[握手\]/g,
- replacement: '
'
- },
- {
- pattern: /\[胜利\]/g,
- replacement: '
'
- },
- {
- pattern: /\[抱拳\]/g,
- replacement: '
'
- },
- {
- pattern: /\[勾引\]/g,
- replacement: '
'
- },
- {
- pattern: /\[拳头\]/g,
- replacement: '
'
- },
- {
- pattern: /\[OK\]/g,
- replacement: '
'
- },
- {
- pattern: /\[合十\]/g,
- replacement: '
'
- },
- {
- pattern: /\[啤酒\]/g,
- replacement: '
'
- },
- {
- pattern: /\[咖啡]\]/g,
- replacement: '
'
- },
- {
- pattern: /\[蛋糕\]/g,
- replacement: '
'
- },
- {
- pattern: /\[玫瑰\]/g,
- replacement: '
'
- },
- {
- pattern: /\[凋谢\]/g,
- replacement: '
'
- },
- {
- pattern: /\[菜刀\]/g,
- replacement: '
'
- },
- {
- pattern: /\[炸弹\]/g,
- replacement: '
'
- },
- {
- pattern: /\[便便\]/g,
- replacement: '
'
- },
- {
- pattern: /\[月亮\]/g,
- replacement: '
'
- },
- {
- pattern: /\[太阳\]/g,
- replacement: '
'
- },
- {
- pattern: /\[庆 祝\]/g,
- replacement: '
'
- },
- {
- pattern: /\[礼物\]/g,
- replacement: '
'
- },
- {
- pattern: /\[红包\]/g,
- replacement: '
'
- },
- {
- pattern: /\[發\]/g,
- replacement: '
'
- },
- {
- pattern: /\[福\]/g,
- replacement: '
'
- },
- {
- pattern: /\[烟花\]/g,
- replacement: '
'
- },
- {
- pattern: /\[爆竹\]/g,
- replacement: '
'
- },
- {
- pattern: /\[猪头\]/g,
- replacement: '
'
- },
- {
- pattern: /\[跳跳\]/g,
- replacement: '
'
- },
- {
- pattern: /\[发抖\]/g,
- replacement: '
'
- },
- {
- pattern: /\[转圈\]/g,
- replacement: '
'
- }
- ];
-
- // 循环遍历替换规则
- for (var i = 0; i < replacementRules.length; i++) {
- var rule = replacementRules[i];
- text = text.replace(rule.pattern, rule.replacement);
- }
- return text;
- }
-
function timestampToTime(timestamp) {
let date = new Date(timestamp * 1000);
let year = date.getFullYear() + '-';
@@ -1385,7 +926,7 @@ function renderPage(page) {
function messageBubble(message, side) {
const messageBubbleTag = document.createElement('div');
messageBubbleTag.className = `bubble bubble-${side}`;
- messageBubbleTag.innerHTML = replaceEmoji(message.text);
+ messageBubbleTag.innerHTML = message.text;
return messageBubbleTag;
}
@@ -1420,7 +961,7 @@ function renderPage(page) {
function messageElementReferText(message, side) {
const messageElementRefer = document.createElement('div');
messageElementRefer.className = `chat-refer chat-refer-${side}`;
- messageElementRefer.innerHTML = replaceEmoji(message.refer_text);
+ messageElementRefer.innerHTML = message.refer_text;
return messageElementRefer;
}
@@ -1570,7 +1111,7 @@ function renderPage(page) {
messageElement.appendChild(message.is_send ? avatarTag : messageContent);
} else if (message.type == 0) {
messageElement.className = "item item-center";
- messageElement.innerHTML = `${replaceEmoji(message.text)}`;
+ messageElement.innerHTML = `${message.text}`;
} else if (message.type == 3) {
// displayname 和 img
messageContent.className = `content-wrapper content-wrapper-${side}`;
diff --git a/app/util/exporter/exporter_html.py b/app/util/exporter/exporter_html.py
index 46eec18..ae11110 100644
--- a/app/util/exporter/exporter_html.py
+++ b/app/util/exporter/exporter_html.py
@@ -16,6 +16,7 @@ from app.util.compress_content import parser_reply, share_card, music_share, fil
from app.util.emoji import get_emoji_url
from app.util.image import get_image_path, get_image
from app.util.music import get_music_path
+from app.util.replace_text import replace_text
icon_files = {
'./icon/word.png': ['doc', 'docx'],
@@ -40,6 +41,7 @@ class HtmlExporter(ExporterBase):
display_name = self.get_display_name(is_send, message)
avatar = self.get_avatar_path(is_send, message)
str_content = escape_js_and_html(str_content)
+ str_content = replace_text(str_content)
doc.write(
f'''{{ type:{1}, text: '{str_content}',is_send:{is_send},avatar_path:'{avatar}',timestamp:{timestamp},is_chatroom:{is_chatroom},displayname:'{display_name}'}},'''
)
@@ -144,6 +146,7 @@ class HtmlExporter(ExporterBase):
contentText = escape_js_and_html(content.get('title'))
if refer_msg:
referText = f"{escape_js_and_html(refer_msg.get('displayname'))}:{escape_js_and_html(refer_msg.get('content'))}"
+ referText = replace_text(referText)
doc.write(
f'''{{ type:49, text: '{contentText}',is_send:{is_send},sub_type:{content.get('type')},refer_text: '{referText}',avatar_path:'{avatar}',timestamp:{timestamp},is_chatroom:{is_chatroom},displayname:'{display_name}'}},'''
)
diff --git a/app/util/replace_text.py b/app/util/replace_text.py
new file mode 100644
index 0000000..f502620
--- /dev/null
+++ b/app/util/replace_text.py
@@ -0,0 +1,448 @@
+def replace_text(text):
+ for pattern, replacement in rules.items():
+ text = text.replace(pattern, replacement)
+ return text
+
+
+rules = {
+
+ '[微笑]':
+ '
'
+ ,
+
+ '[撇嘴]':
+ '
'
+ ,
+
+ '[色]':
+ '
'
+ ,
+
+ '[发呆]':
+ '
'
+ ,
+
+ '[得意]':
+ '
'
+ ,
+
+ '[流泪]':
+ '
'
+ ,
+
+ '[害羞]':
+ '
'
+ ,
+
+ '[闭嘴]':
+ '
'
+ ,
+
+ '[睡]':
+ '
'
+ ,
+
+ '[大哭]':
+ '
'
+ ,
+
+ '[尴尬]':
+ '
'
+ ,
+
+ '[发怒]':
+ '
'
+ ,
+
+ '[调皮]':
+ '
'
+ ,
+
+ '[呲牙]':
+ '
'
+ ,
+
+ '[惊讶]':
+ '
'
+ ,
+
+ '[难过]':
+ '
'
+ ,
+
+ '[抓狂]':
+ '
'
+ ,
+
+ '[吐]':
+ '
'
+ ,
+
+ '[偷笑]':
+ '
'
+ ,
+
+ '[愉快]':
+ '
'
+ ,
+
+ '[白眼]':
+ '
'
+ ,
+
+ '[傲慢]':
+ '
'
+ ,
+
+ '[困]':
+ '
'
+ ,
+
+ '[惊恐]':
+ '
'
+ ,
+
+ '[憨笑]':
+ '
'
+ ,
+
+ '[悠闲]':
+ '
'
+ ,
+
+ '[咒骂]':
+ '
'
+ ,
+
+ '[疑问]':
+ '
'
+ ,
+
+ '[嘘]':
+ '
'
+ ,
+
+ '[晕]':
+ '
'
+ ,
+
+ '[衰]':
+ '
'
+ ,
+
+ '[骷髅]':
+ '
'
+ ,
+
+ '[敲打]':
+ '
'
+ ,
+
+ '[再见]':
+ '
'
+ ,
+
+ '[擦汗]':
+ '
'
+ ,
+
+ '[抠鼻]':
+ '
'
+ ,
+
+ '[鼓掌]':
+ '
'
+ ,
+
+ '[坏笑]':
+ '
'
+ ,
+
+ '[右哼哼]':
+ '
'
+ ,
+
+ '[鄙视]':
+ '
'
+ ,
+
+ '[委屈]':
+ '
'
+ ,
+
+ '[快哭了]':
+ '
'
+ ,
+
+ '[阴险]':
+ '
'
+ ,
+
+ '[亲亲]':
+ '
'
+ ,
+
+ '[可怜]':
+ '
'
+ ,
+
+ '[Whimper]':
+ '
'
+ ,
+
+ '[笑脸]':
+ '
'
+ ,
+
+ '[生病]':
+ '
'
+ ,
+
+ '[脸红]':
+ '
'
+ ,
+
+ '[破涕为笑]':
+ '
'
+ ,
+
+ '[恐惧]':
+ '
'
+ ,
+
+ '[失望]':
+ '
'
+ ,
+
+ '[无语]':
+ '
'
+ ,
+
+ '[嘿哈]':
+ '
'
+ ,
+
+ '[捂脸]':
+ '
'
+ ,
+
+ '[奸笑]':
+ '
'
+ ,
+
+ '[机智]':
+ '
'
+ ,
+
+ '[皱眉]':
+ '
'
+ ,
+
+ '[耶]':
+ '
'
+ ,
+
+ '[吃瓜]':
+ '
'
+ ,
+
+ '[加油]':
+ '
'
+ ,
+
+ '[汗]':
+ '
'
+ ,
+
+ '[天啊]':
+ '
'
+ ,
+
+ '[Emm]':
+ '
'
+ ,
+
+ '[社会社会]':
+ '
'
+ ,
+
+ '[旺柴]':
+ '
'
+ ,
+
+ '[好的]':
+ '
'
+ ,
+
+ '[打脸]':
+ '
'
+ ,
+
+ '[哇]':
+ '
'
+ ,
+
+ '[翻白眼]':
+ '
'
+ ,
+
+ '[666]':
+ '
'
+ ,
+
+ '[让我看看]':
+ '
'
+ ,
+
+ '[叹气]':
+ '
'
+ ,
+
+ '[苦涩]':
+ '
'
+ ,
+
+ '[難受]':
+ '
'
+ ,
+
+ '[裂开]':
+ '
'
+ ,
+
+ '[嘴唇]':
+ '
'
+ ,
+
+ '[爱心]':
+ '
'
+ ,
+
+ '[心碎]':
+ '
'
+ ,
+
+ '[拥抱]':
+ '
'
+ ,
+
+ '[强]':
+ '
'
+ ,
+
+ '[弱]':
+ '
'
+ ,
+
+ '[握手]':
+ '
'
+ ,
+
+ '[胜利]':
+ '
'
+ ,
+
+ '[抱拳]':
+ '
'
+ ,
+
+ '[勾引]':
+ '
'
+ ,
+
+ '[拳头]':
+ '
'
+ ,
+
+ '[OK]':
+ '
'
+ ,
+
+ '[合十]':
+ '
'
+ ,
+
+ '[啤酒]':
+ '
'
+ ,
+
+ '[咖啡]]':
+ '
'
+ ,
+
+ '[蛋糕]':
+ '
'
+ ,
+
+ '[玫瑰]':
+ '
'
+ ,
+
+ '[凋谢]':
+ '
'
+ ,
+
+ '[菜刀]':
+ '
'
+ ,
+
+ '[炸弹]':
+ '
'
+ ,
+
+ '[便便]':
+ '
'
+ ,
+
+ '[月亮]':
+ '
'
+ ,
+
+ '[太阳]':
+ '
'
+ ,
+
+ '[庆祝]':
+ '
'
+ ,
+
+ '[礼物]':
+ '
'
+ ,
+
+ '[红包]':
+ '
'
+ ,
+
+ '[發]':
+ '
'
+ ,
+
+ '[福]':
+ '
'
+ ,
+
+ '[烟花]':
+ '
'
+ ,
+
+ '[爆竹]':
+ '
'
+ ,
+
+ '[猪头]':
+ '
'
+ ,
+
+ '[跳跳]':
+ '
'
+ ,
+
+ '[发抖]':
+ '
'
+ ,
+
+ '[转圈]':
+ '
'
+
+}