From 4d4202c38812411cb08568575c61ed4564911cd5 Mon Sep 17 00:00:00 2001 From: Peng Date: Sun, 25 Aug 2024 12:54:38 +0200 Subject: [PATCH] optimize --- docs/index.html | 4 ++-- ....txt => main.add74e878f3365da263e.js.LICENSE.txt} | 0 src/scripts/listeners/UniversalListeners.js | 12 ++++++++---- 3 files changed, 10 insertions(+), 6 deletions(-) rename docs/{main.023caedb981629fac8ce.js.LICENSE.txt => main.add74e878f3365da263e.js.LICENSE.txt} (100%) diff --git a/docs/index.html b/docs/index.html index 0350a94..2f05b88 100644 --- a/docs/index.html +++ b/docs/index.html @@ -31,5 +31,5 @@ } } applyTheme(); - window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", applyTheme);光棱坦克工厂

光棱坦克工厂

什么是光棱坦克? 推荐访问方式: prism.uyanide.com
本网站仅作辅助,并非此类坦克的唯一解!
(可在任意支持html5的浏览器中离线使用)

开/关灯

显形
制作
2.
(可多选,点击页面右侧可展开侧边栏列表)
或从剪贴板粘贴图片 (ctrl+v),
或从剪贴板
或直接将图片拖进窗口。

(越小隐写效果越好)
(但越小里图质量越差)
(不应高于右侧值)
(降低可提高隐写效果)
(但也会降低里图质量)
(越大显形效果越好)
(但越大表图质量越差)
(不应低于左侧值)
(表图对比度酌情调整)
(此参数不会影响显形)

version: UNKNOWN
如发现有功能不正常可手动清理浏览器缓存后刷新
更多其他项目:
幻影/无影/幻影无影杂交坦克工厂 全彩幻影坦克工厂(开发中) Bug反馈 Github - Uyanide (我) Github - Mirage_Decode (本项目仓库) 常见问题Q&A
显示使用须知
本网站仅供个人学习交流使用,禁止一切非法用途,否则一切后果由使用者自行承担。
显示主要更新记录
1.0实施版本号记录,用于优化缓存处理;
添加从剪贴板粘贴图片功能;
在显形界面添加“保存原始图像”功能。
1.1可以根据系统设置进行明暗主题切换;
添加“表图是否取灰度”功能;
1.2引入jpeg-js库部分源码,统一不同浏览器编码jpeg时的行为;
引入piexif库部分源码,用于读取jpeg图片的元数据;
支持jpeg图片在生成时写入参数以在显形时自动填写;
1.3使用jsDelievr CDN加速加载静态资源;
引入png-metadata库部分源码,用于读取png图片的元数据;
支持png图片在生成时写入参数以自动显形;
添加表里图对比度调整功能;
里图对比度可写入元数据。
1.4放弃使用jsDelievr,使用Cloudflare代理个人域名;
识别小米默认浏览器,修复其无法正常下载图片的问题;
识别贴吧内置浏览器,阻止其直接访问;
支持幻影坦克作为表图;
添加手动切换明暗主题功能,方便观察幻影坦克;
优化Alpha通道处理逻辑,为可能的幻影坦克整合铺路;
添加显形界面阈值直接输入的功能;
显形界面支持多文件输入,为方便查看增加侧边栏;
支持html文档下载以供离线使用。
\ No newline at end of file + window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", applyTheme);光棱坦克工厂

光棱坦克工厂

什么是光棱坦克? 推荐访问方式: prism.uyanide.com
本网站仅作辅助,并非此类坦克的唯一解!
(可在任意支持html5的浏览器中离线使用)

开/关灯

显形
制作
2.
(可多选,点击页面右侧可展开侧边栏列表)
或从剪贴板粘贴图片 (ctrl+v),
或从剪贴板
或直接将图片拖进窗口。

(越小隐写效果越好)
(但越小里图质量越差)
(不应高于右侧值)
(降低可提高隐写效果)
(但也会降低里图质量)
(越大显形效果越好)
(但越大表图质量越差)
(不应低于左侧值)
(表图对比度酌情调整)
(此参数不会影响显形)

version: UNKNOWN
如发现有功能不正常可手动清理浏览器缓存后刷新
更多其他项目:
幻影/无影/幻影无影杂交坦克工厂 全彩幻影坦克工厂(开发中) Bug反馈 Github - Uyanide (我) Github - Mirage_Decode (本项目仓库) 常见问题Q&A
显示使用须知
本网站仅供个人学习交流使用,禁止一切非法用途,否则一切后果由使用者自行承担。
显示主要更新记录
1.0实施版本号记录,用于优化缓存处理;
添加从剪贴板粘贴图片功能;
在显形界面添加“保存原始图像”功能。
1.1可以根据系统设置进行明暗主题切换;
添加“表图是否取灰度”功能;
1.2引入jpeg-js库部分源码,统一不同浏览器编码jpeg时的行为;
引入piexif库部分源码,用于读取jpeg图片的元数据;
支持jpeg图片在生成时写入参数以在显形时自动填写;
1.3使用jsDelievr CDN加速加载静态资源;
引入png-metadata库部分源码,用于读取png图片的元数据;
支持png图片在生成时写入参数以自动显形;
添加表里图对比度调整功能;
里图对比度可写入元数据。
1.4放弃使用jsDelievr,使用Cloudflare代理个人域名;
识别小米默认浏览器,修复其无法正常下载图片的问题;
识别贴吧内置浏览器,阻止其直接访问;
支持幻影坦克作为表图;
添加手动切换明暗主题功能,方便观察幻影坦克;
优化Alpha通道处理逻辑,为可能的幻影坦克整合铺路;
添加显形界面阈值直接输入的功能;
显形界面支持多文件输入,为方便查看增加侧边栏;
支持html文档下载以供离线使用。
\ No newline at end of file diff --git a/docs/main.023caedb981629fac8ce.js.LICENSE.txt b/docs/main.add74e878f3365da263e.js.LICENSE.txt similarity index 100% rename from docs/main.023caedb981629fac8ce.js.LICENSE.txt rename to docs/main.add74e878f3365da263e.js.LICENSE.txt diff --git a/src/scripts/listeners/UniversalListeners.js b/src/scripts/listeners/UniversalListeners.js index 9814a9a..b3566c1 100644 --- a/src/scripts/listeners/UniversalListeners.js +++ b/src/scripts/listeners/UniversalListeners.js @@ -44,20 +44,24 @@ function universalSetupEventListeners() { document.getElementById('sidebar').addEventListener('click', DecodeListeners.showSidebar); document.getElementById('downloadHtmlLink').addEventListener('click', () => { + // 重置侧边栏 PrismProcessor.DecodeList.clear(); - + if (applicationState.sidebarVisible) { + DecodeListeners.hideSidebar(); + } + // 生成新的 HTML 文档,复制head const currentHtml = document.documentElement.outerHTML; const parser = new DOMParser(); const doc = parser.parseFromString(currentHtml, 'text/html'); const sourceElement = doc.getElementById('bodyContent'); const newDoc = document.implementation.createHTMLDocument('Filtered Document'); newDoc.head.innerHTML = doc.head.innerHTML; - + // 添加离线状态标记 const script = newDoc.head.appendChild(newDoc.createElement('script')); script.innerHTML = 'applicationState.isOffline = true;'; - + // 添加body属性 doc.body.classList.forEach(cls => newDoc.body.classList.add(cls)); - + // 添加body内容,排除某些插件写入的元素 newDoc.body.appendChild(newDoc.importNode(sourceElement, true)); const a = document.createElement('a');