小程序后台管理系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

11 KiB

富文本编辑器完整功能说明

🎯 功能概述

我已经成功为您的富文本编辑器实现了完整的图片、视频上传和一键排版功能,完美解决了弹窗被工具栏遮挡的问题:

图片功能

  1. 图片库选择:从已上传的图片库中选择图片(推荐)
  2. 快速图片上传:点击按钮快速上传新图片
  3. 直接上传:拖拽或粘贴图片直接上传到OSS

视频功能

  1. 视频库选择:从已上传的视频库中选择视频(推荐)
  2. 快速视频上传:点击按钮快速上传新视频

排版功能

  1. 一键排版:自动优化文章格式和排版(新增)

功能特点

1. 文件库选择功能(主要功能)

  • 点击工具栏"图片"按钮弹出文件库
  • 浏览所有已上传的图片
  • 支持按分组筛选
  • 支持搜索功能
  • 双击选择图片或点击"选择"按钮
  • 可在弹窗中直接上传新图片
  • 弹窗层级优化,不会被编辑器工具栏遮挡

2. 快速上传功能

  • 点击工具栏"上传"按钮快速选择文件上传
  • 文件大小限制:10MB
  • 支持所有常见图片格式
  • 上传成功后自动插入到编辑器

3. 直接上传功能

  • 支持拖拽图片到编辑器
  • 支持粘贴剪贴板中的图片
  • 自动上传到阿里云OSS
  • 文件大小限制:10MB

4. 视频库选择功能

  • 点击工具栏"视频"按钮弹出视频库
  • 浏览所有已上传的视频
  • 支持按分组筛选
  • 支持搜索功能
  • 双击选择视频或点击"选择"按钮
  • 可在弹窗中直接上传新视频
  • 弹窗层级优化,不会被编辑器工具栏遮挡

5. 快速视频上传功能

  • 点击工具栏"上传视频"按钮快速选择文件上传
  • 文件大小限制:100MB
  • 支持所有常见视频格式
  • 上传成功后自动插入到编辑器

6. 智能一键排版功能(人性化设计)

  • 点击工具栏"一键排版"按钮自动优化文章格式
  • 10大智能优化
    • 🏷️ 标题优化:6级标题层次分明,H1带下划线
    • 📝 段落优化:中文首行缩进,合理行高间距
    • 🖼️ 图片优化:居中显示,圆角阴影,响应式
    • 📋 列表优化:清晰缩进,合理间距
    • 💬 引用优化:左边框,渐变背景,斜体
    • 💻 代码优化:专业字体,语法高亮背景
    • 📊 表格优化:渐变表头,专业边框
    • 🔗 链接优化:悬停下划线效果
    • 分隔线优化:渐变效果,优雅间距
    • 🧹 内容清理:清除冗余空白,规范结构
  • 人性化体验
    • 📱 友好提示:emoji 图标 + 温馨文案
    • ⏱️ 加载动画:让用户感受到系统在工作
    • 🎉 成功反馈:完成后的庆祝提示
    • 📊 优化统计:显示具体优化了哪些项目

7. 段落首行缩进切换功能(新增)

  • 点击工具栏"首行缩进"按钮切换段落缩进格式
  • 智能切换
    • 🔄 自动检测当前段落是否已有首行缩进
    • 📐 一键在有缩进/无缩进之间切换
    • 📝 批量处理文章中的所有段落
  • 中文优化
    • 标准缩进:使用 2em 的首行缩进
    • 智能识别:只对段落标签进行处理
    • 样式保持:保留段落的其他样式属性
  • 友好反馈
    • 添加缩进:📐 已添加段落首行缩进
    • 移除缩进:📐 已移除段落首行缩进

8. 栏目选择记忆功能(新增)

  • 智能记忆用户最后选择的栏目,避免重复选择
  • 智能记忆
    • 🧠 自动保存用户选择的栏目到本地存储
    • 🔄 新建文章时自动填入上次选择的栏目
    • 💾 跨会话保持,关闭浏览器后仍然有效
  • 优先级策略
    • 🎯 从栏目页面点击"添加文章"时,优先使用传入的栏目
    • 📝 其他情况下使用记忆的栏目
    • ✏️ 编辑文章时保持原有栏目不变
  • 用户体验
    • 🚀 减少重复操作,提升发布效率
    • 🎯 特别适合批量发布同类文章
    • 🔄 用户可随时更改,不强制绑定

3. 图片编辑功能

  • 图片对齐(左对齐、居中、右对齐)
  • 图片旋转(左转、右转)
  • 图片尺寸调整
  • 图片标题和描述
  • 图片样式类别:
    • 无样式
    • 响应式图片
    • 圆角图片
    • 圆形图片

🚀 使用方法

方法一:图片库选择(推荐)

  1. 点击编辑器工具栏的"图片"按钮
  2. 在弹出的图片库窗口中:
    • 浏览已上传的图片
    • 使用搜索框查找特定图片
    • 选择分组筛选图片
    • 双击图片进行选择,或点击"选择"按钮
  3. 如需上传新图片,点击"上传图片"按钮
  4. 选择完成后图片自动插入到编辑器

方法二:快速图片上传

  1. 点击编辑器工具栏的"上传"按钮
  2. 在文件选择对话框中选择图片文件
  3. 系统自动上传并插入图片

方法三:直接上传

  1. 在编辑器中定位光标到需要插入图片的位置
  2. 直接拖拽图片文件到编辑器,或
  3. 复制图片后在编辑器中粘贴(Ctrl+V)
  4. 系统自动上传并插入图片

方法四:视频库选择(推荐)

  1. 点击编辑器工具栏的"视频"按钮
  2. 在弹出的视频库窗口中:
    • 浏览已上传的视频
    • 使用搜索框查找特定视频
    • 选择分组筛选视频
    • 双击视频进行选择,或点击"选择"按钮
  3. 如需上传新视频,点击"上传视频"按钮
  4. 选择完成后视频自动插入到编辑器

方法五:快速视频上传

  1. 点击编辑器工具栏的"上传视频"按钮
  2. 在文件选择对话框中选择视频文件
  3. 系统自动上传并插入视频

方法六:智能一键排版(全新升级)

  1. 编写完文章内容后,点击编辑器工具栏的"一键排版"按钮
  2. 在弹出的排版样式选择窗口中选择合适的排版模板:
    • 📄 标准排版:平衡的间距和字体,适合大多数文章
    • 📋 紧凑排版:较小间距,适合长文章节省空间
    • 📖 舒适排版:较大间距和行高,提升阅读体验
    • 🎓 学术排版:严谨格式规范,适合学术论文
  3. 系统智能分析文章内容并应用专业排版格式
  4. 智能优化包括
    • 内容识别:自动检测中英文比例,应用对应排版规则
    • 段落优化:智能调整行高、间距、首行缩进
    • 标题层级:统一H1-H6标题样式,支持紧凑/标准模式
    • 媒体美化:图片视频添加圆角、阴影、居中效果
    • 列表优化:完善缩进、间距、嵌套列表处理
    • 表格美化:渐变表头、专业边框、悬停效果
    • 引用样式:左边框、背景渐变、斜体效果
    • 代码优化:专业字体、语法高亮背景
    • 链接美化:悬停下划线效果
    • 内容清理:清除冗余空白、规范结构
  5. 优化完成后显示详细的优化报告

🔧 技术实现

核心配置

const config = ref({
  height: 620,
  paste_data_images: true,
  automatic_uploads: true,

  // 自定义工具栏,添加图片和上传按钮
  toolbar: [
    'fullscreen preview code codesample emoticons custom_image_selector quick_upload media',
    'undo redo | forecolor backcolor',
    'bold italic underline strikethrough',
    'alignleft aligncenter alignright alignjustify',
    'outdent indent | numlist bullist',
    'formatselect fontselect fontsizeselect',
    'link charmap anchor pagebreak | ltr rtl'
  ].join(' | '),

  // 直接上传处理器
  images_upload_handler: (blobInfo, success, error) => {
    // 文件大小和类型检查
    // 上传到OSS
    // 错误处理
  },

  // 自定义按钮设置
  setup: (editor) => {
    // 图片库选择按钮
    editor.ui.registry.addButton('custom_image_selector', {
      text: '图片',
      icon: 'image',
      tooltip: '插入图片(从图片库选择)',
      onAction: () => {
        // 打开图片库弹窗
      }
    });

    // 快速图片上传按钮
    editor.ui.registry.addButton('quick_upload', {
      text: '上传',
      icon: 'upload',
      tooltip: '快速上传图片',
      onAction: () => {
        // 打开文件选择对话框
      }
    });

    // 视频库选择按钮
    editor.ui.registry.addButton('custom_video_selector', {
      text: '视频',
      icon: 'embed',
      tooltip: '插入视频(从视频库选择)',
      onAction: () => {
        // 打开视频库弹窗
      }
    });

    // 快速视频上传按钮
    editor.ui.registry.addButton('quick_video_upload', {
      text: '上传视频',
      icon: 'upload',
      tooltip: '快速上传视频',
      onAction: () => {
        // 打开视频文件选择对话框
      }
    });

    // 一键排版按钮
    editor.ui.registry.addButton('auto_format', {
      text: '一键排版',
      icon: 'template',
      tooltip: '自动优化文章格式和排版',
      onAction: () => {
        // 执行排版优化
      }
    });
  }
});

文件库集成

  • 使用现有的 SelectData 组件
  • 支持图片和视频类型筛选
  • 集成分组管理功能
  • 支持搜索和预览
  • 统一的文件管理界面

💡 优势

  1. 解决层级问题:文件库弹窗不再被编辑器工具栏遮挡
  2. 避免重复上传:可以复用已上传的图片和视频
  3. 统一文件管理:所有媒体文件在文件库中统一管理
  4. 多种上传方式:满足不同使用场景和习惯
  5. 文件组织:支持分组和搜索,便于管理大量文件
  6. 性能优化:减少重复上传,节省存储空间
  7. 用户体验优化:清晰的按钮分工,操作更直观
  8. 智能一键排版
    • 四种专业排版模板可选
    • 智能内容识别和分析
    • 全面的格式优化
    • 详细的优化反馈
  9. 专业排版效果
    • 符合中文排版习惯
    • 支持多种内容元素
    • 视觉层次清晰
    • 阅读体验优秀

🎨 样式定制

编辑器内的图片支持以下样式类:

  • .img-responsive:响应式图片(宽度100%)
  • .img-rounded:圆角图片
  • .img-circle:圆形图片

📝 注意事项

  1. 文件大小限制
    • 图片文件大小限制为10MB
    • 视频文件大小限制为100MB
  2. 文件类型支持
    • 图片:支持所有常见图片格式(jpg, png, gif, webp等)
    • 视频:支持所有常见视频格式(mp4, avi, mov, wmv等)
  3. 上传失败时会显示错误提示
  4. 建议优先使用文件库选择功能,避免重复上传
  5. 文件库弹窗已优化层级,不会被编辑器工具栏遮挡
  6. 工具栏按钮分工明确:
    • "图片"按钮:从图片库选择
    • "上传"按钮:快速上传图片
    • "视频"按钮:从视频库选择
    • "上传视频"按钮:快速上传视频
    • "一键排版"按钮:自动优化文章格式

🔄 后续扩展

可以进一步扩展的功能:

  1. 支持视频文件选择 (已实现)
  2. 一键排版功能 (已实现)
  3. 图片压缩功能
  4. 图片水印添加
  5. 批量图片/视频上传
  6. 图片编辑功能(裁剪、滤镜等)
  7. 自定义排版模板
  8. 文章目录自动生成
  9. 文章字数统计
  10. 阅读时间估算

现在您可以在文章编辑页面体验这个完整的富文本编辑功能了!包括图片上传、视频上传和一键排版功能。