From 87aa145d03d2e79f8b93f90a4d1d9d9c12cbca7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=9C=9F=E7=8B=97?= <9944191+song2770@user.noreply.gitee.com> Date: Tue, 10 Jun 2025 13:57:51 +0800 Subject: [PATCH] fix --- favicon.ico | Bin 85886 -> 164939 bytes images/favicon.ico | Bin 0 -> 85886 bytes index.html | 8 +----- js/audio.js | 2 +- js/defaultText.js | 12 +++++++++ js/flip.js | 2 +- js/main.js | 44 ++++++++++++++++++-------------- js/scroll.js | 2 +- js/settings.js | 2 +- js/text.js | 2 +- js/theme.js | 2 +- js/watermark.js | 2 +- public/favicon.ico | Bin 0 -> 85886 bytes public/images/chevron-left.svg | 3 +++ public/images/chevron-right.svg | 3 +++ public/images/flip.svg | 1 + public/images/font.svg | 3 +++ public/images/fullscreen.svg | 3 +++ public/images/import.svg | 3 +++ public/images/language.svg | 3 +++ public/images/lock.svg | 3 +++ public/images/logo.svg | 20 +++++++++++++++ public/images/moon.svg | 3 +++ public/images/pause.svg | 3 +++ public/images/play.svg | 3 +++ public/images/record.svg | 3 +++ public/images/scroll.svg | 3 +++ public/images/sun.svg | 3 +++ public/images/theme.svg | 3 +++ public/images/unlock.svg | 3 +++ public/images/watermark.svg | 3 +++ vite.config.ts | 15 +++++++++++ 32 files changed, 129 insertions(+), 33 deletions(-) create mode 100644 images/favicon.ico create mode 100644 js/defaultText.js create mode 100644 public/favicon.ico create mode 100644 public/images/chevron-left.svg create mode 100644 public/images/chevron-right.svg create mode 100644 public/images/flip.svg create mode 100644 public/images/font.svg create mode 100644 public/images/fullscreen.svg create mode 100644 public/images/import.svg create mode 100644 public/images/language.svg create mode 100644 public/images/lock.svg create mode 100644 public/images/logo.svg create mode 100644 public/images/moon.svg create mode 100644 public/images/pause.svg create mode 100644 public/images/play.svg create mode 100644 public/images/record.svg create mode 100644 public/images/scroll.svg create mode 100644 public/images/sun.svg create mode 100644 public/images/theme.svg create mode 100644 public/images/unlock.svg create mode 100644 public/images/watermark.svg diff --git a/favicon.ico b/favicon.ico index 243dd4e4d4bc097573f85523f01a46ad7240b809..e59f1090df34b6d338b0169a45100363f72d7cb3 100644 GIT binary patch literal 164939 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 智能提词器 + @@ -243,12 +244,5 @@ - - - - - - - \ No newline at end of file diff --git a/js/audio.js b/js/audio.js index b077bd8..37802d9 100644 --- a/js/audio.js +++ b/js/audio.js @@ -1,5 +1,5 @@ // 音频控制器 -class AudioController { +export class AudioController { constructor() { this.mediaRecorder = null; this.audioChunks = []; diff --git a/js/defaultText.js b/js/defaultText.js new file mode 100644 index 0000000..4ab8ca1 --- /dev/null +++ b/js/defaultText.js @@ -0,0 +1,12 @@ +// 默认文本内容模块 +export const defaultText = `我是一个提词器的示例文本。 +你可以直接编辑我,或者粘贴内容。 +也可以点击左侧功能区的文件夹图标,上传文件。 +需要是"*.txt"的文本文档格式。 +本项目支持翻转(水平、垂直) +在开始使用之前,请注意设置以下内容: +字体,字体大小,滚动速度 +项目已开源到Github,地址为 +https://github.com/Song2770/ez4prompt +如果你觉得好用,不妨为我的项目点一颗Star。 +如果你遇到了问题,欢迎留言。`; \ No newline at end of file diff --git a/js/flip.js b/js/flip.js index d9acb9b..d8d4989 100644 --- a/js/flip.js +++ b/js/flip.js @@ -1,5 +1,5 @@ // 翻转控制器 -class FlipController { +export class FlipController { constructor() { this.init(); } diff --git a/js/main.js b/js/main.js index e547964..bdffccc 100644 --- a/js/main.js +++ b/js/main.js @@ -1,3 +1,13 @@ +// 导入所有控制器模块 +import { ThemeController } from './theme.js'; +import { ScrollController } from './scroll.js'; +import { TextController } from './text.js'; +import { AudioController } from './audio.js'; +import { SettingsController } from './settings.js'; +import { WatermarkController } from './watermark.js'; +import { FlipController } from './flip.js'; +import { defaultText } from './defaultText.js'; + // 主应用程序入口 class TeleprompterApp { constructor() { @@ -13,6 +23,15 @@ class TeleprompterApp { } init() { + // 先初始化各个模块 + window.themeController = new ThemeController(); + window.scrollController = new ScrollController(); + window.textController = new TextController(); + window.audioController = new AudioController(); + window.settingsController = new SettingsController(); + window.watermarkController = new WatermarkController(); + window.flipController = new FlipController(); + this.setupEventListeners(); this.loadDefaultText(); this.updateTimeDisplay(); @@ -21,15 +40,6 @@ class TeleprompterApp { // 每秒更新时间显示 setInterval(() => this.updateTimeDisplay(), 1000); - - // 初始化各个模块 - window.themeController = new ThemeController(); - window.scrollController = new ScrollController(); - window.textController = new TextController(); - window.audioController = new AudioController(); - window.settingsController = new SettingsController(); - window.watermarkController = new WatermarkController(); - window.flipController = new FlipController(); } getDefaultSettings() { @@ -417,16 +427,12 @@ class TeleprompterApp { } loadDefaultText() { - fetch('example.txt') - .then(response => response.text()) - .then(text => { - window.textController.setText(text); - this.updateScrollbar(); - }) - .catch(error => { - console.error('加载默认文本失败:', error); - window.textController.setText('请导入文本文件或直接编辑此处内容。'); - }); + try { + window.textController.setText('我是一个提词器的示例文本。\n你可以直接编辑我,或者粘贴内容。\n可以点击左侧功能区的文件夹图标,上传文件。需要是"*.txt"的文本文档格式。\n本项目支持翻转(水平、垂直)\n在开始使用之前,请注意设置以下内容:字体,字体大小,滚动速度\n项目已开源到Github,地址为https://github.com/Song2770/ez4prompt\n如果你觉得好用,不妨为我的项目点一颗Star。\n如果你遇到了问题,欢迎留言。'); + this.updateScrollbar(); + } catch (error) { + console.error('加载默认文本失败:', error); + } } updateTimeDisplay() { diff --git a/js/scroll.js b/js/scroll.js index 1a92719..1536c9d 100644 --- a/js/scroll.js +++ b/js/scroll.js @@ -1,5 +1,5 @@ // 滚动控制器 -class ScrollController { +export class ScrollController { constructor() { this.isAutoScrolling = false; this.scrollSpeed = 30; diff --git a/js/settings.js b/js/settings.js index 79b7f9a..209abfc 100644 --- a/js/settings.js +++ b/js/settings.js @@ -1,5 +1,5 @@ // 设置控制器 -class SettingsController { +export class SettingsController { constructor() { this.init(); } diff --git a/js/text.js b/js/text.js index 3ee4295..dec7c8c 100644 --- a/js/text.js +++ b/js/text.js @@ -1,5 +1,5 @@ // 文本控制器 -class TextController { +export class TextController { constructor() { this.init(); } diff --git a/js/theme.js b/js/theme.js index e190a0d..b5204ad 100644 --- a/js/theme.js +++ b/js/theme.js @@ -1,5 +1,5 @@ // 主题控制器 -class ThemeController { +export class ThemeController { constructor() { this.currentTheme = 'dark'; this.init(); diff --git a/js/watermark.js b/js/watermark.js index ef8471c..db8d49f 100644 --- a/js/watermark.js +++ b/js/watermark.js @@ -1,5 +1,5 @@ // 水印控制器 -class WatermarkController { +export class WatermarkController { constructor() { this.init(); } diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..243dd4e4d4bc097573f85523f01a46ad7240b809 GIT binary patch literal 85886 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 + + \ No newline at end of file diff --git a/public/images/chevron-right.svg b/public/images/chevron-right.svg new file mode 100644 index 0000000..d003757 --- /dev/null +++ b/public/images/chevron-right.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/flip.svg b/public/images/flip.svg new file mode 100644 index 0000000..4131540 --- /dev/null +++ b/public/images/flip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/images/font.svg b/public/images/font.svg new file mode 100644 index 0000000..dc11984 --- /dev/null +++ b/public/images/font.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/fullscreen.svg b/public/images/fullscreen.svg new file mode 100644 index 0000000..91b61d0 --- /dev/null +++ b/public/images/fullscreen.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/import.svg b/public/images/import.svg new file mode 100644 index 0000000..689c64d --- /dev/null +++ b/public/images/import.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/language.svg b/public/images/language.svg new file mode 100644 index 0000000..bcbd3b7 --- /dev/null +++ b/public/images/language.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/lock.svg b/public/images/lock.svg new file mode 100644 index 0000000..8ee3c20 --- /dev/null +++ b/public/images/lock.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/logo.svg b/public/images/logo.svg new file mode 100644 index 0000000..7e79f61 --- /dev/null +++ b/public/images/logo.svg @@ -0,0 +1,20 @@ + + + + + + + + + diff --git a/public/images/moon.svg b/public/images/moon.svg new file mode 100644 index 0000000..92de57e --- /dev/null +++ b/public/images/moon.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/pause.svg b/public/images/pause.svg new file mode 100644 index 0000000..058a27a --- /dev/null +++ b/public/images/pause.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/play.svg b/public/images/play.svg new file mode 100644 index 0000000..dfa0f41 --- /dev/null +++ b/public/images/play.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/record.svg b/public/images/record.svg new file mode 100644 index 0000000..6070079 --- /dev/null +++ b/public/images/record.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/scroll.svg b/public/images/scroll.svg new file mode 100644 index 0000000..37bc4b2 --- /dev/null +++ b/public/images/scroll.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/sun.svg b/public/images/sun.svg new file mode 100644 index 0000000..4c57d69 --- /dev/null +++ b/public/images/sun.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/theme.svg b/public/images/theme.svg new file mode 100644 index 0000000..3bea856 --- /dev/null +++ b/public/images/theme.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/unlock.svg b/public/images/unlock.svg new file mode 100644 index 0000000..172a81c --- /dev/null +++ b/public/images/unlock.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/images/watermark.svg b/public/images/watermark.svg new file mode 100644 index 0000000..9cd4a93 --- /dev/null +++ b/public/images/watermark.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/vite.config.ts b/vite.config.ts index 147380a..73841ed 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -7,4 +7,19 @@ export default defineConfig({ optimizeDeps: { exclude: ['lucide-react'], }, + build: { + assetsInlineLimit: 0, // 禁用资源内联,确保SVG文件作为独立文件 + rollupOptions: { + output: { + assetFileNames: (assetInfo) => { + // 保持SVG文件的原始路径结构 + if (assetInfo.name && assetInfo.name.endsWith('.svg')) { + return 'images/[name][extname]'; + } + return 'assets/[name]-[hash][extname]'; + } + } + } + }, + assetsInclude: ['**/*.svg'] });