带分页的docx编辑器 vue3集成canvas-editor

又有新的需求量了jym,要在页面上渲染docx。本来吧是想用tiptap来完成的,但是需求说要带上分页功能。找半天发现个canvas-editor。

相关资源链接

下面给大家提供相关的项目地址和文档链接:

独立使用流程

如果独立使用的话 只有三步

css 复制代码
npm i @hufe921/canvas-editor --save
bash 复制代码
<div id="warp"></div>
javascript 复制代码
import Editor from '@hufe921/canvas-editor'
 
new Editor(
  document.querySelector('#warp'),
  [
    {
      value: 'lalalalaa'
    }
  ],
  {}
)

操作方法示例

canvas-editor 大多数操作方法在文档中都有详细介绍,这里给出一些使用示例:

kotlin 复制代码
  enum LocationPosition {
    BEFORE = 'before',
    AFTER = 'after',
  }
  
  interface IFocusOption {
    position?: LocationPosition
  }

  const container = document.querySelector<HTMLDivElement>('.editor')!

  const instance = new Editor(
    container,
    {
      main: content.main, // 内容主体
    },
    {
      margins: [80, 90, 80, 90],
      watermark: {
        data: '',
        size: 120,
      }, // 水印
      pageNumber: { // 分页
        format: '第{pageNo}页/共{pageCount}页',
      },
      placeholder: {
        data: '请输入正文',
      },
      maskMargin: [60, 0, 30, 0], // 菜单栏高度60,底部工具栏30为遮盖层,
      width: 1000,
    }, // 可选择项
  )

  instance.command.executeSetHTML({ main: content.main[0].value })
  
  const payloadBefore: IFocusOption = {
    position: LocationPosition.BEFORE,
  }
  
  instance.command.executeFocus(payloadBefore) // 设置初始光标位置
相关推荐
开飞机的舒克_1 天前
vue3+router动态权限路由
前端·vue.js
VitoChang1 天前
放弃手搓路由吧!用 SolidStart 搞 SPA,真香
前端
GuWenyue1 天前
告别JS类型坑!Ts为什么在ai时代逐渐成为"第一"语言
前端·算法·typescript
三乐2281 天前
事件循环是什么东西,一篇文章带你了解
前端·javascript
wuhen_n1 天前
RAG 核心:向量嵌入与本地向量数据库实战
前端·langchain·ai编程
孟陬1 天前
国外技术周刊 #139:LLM 正在杀死程序员的「懒惰美德」
前端·人工智能·后端
lichenyang4531 天前
补充:Repeat 虚拟滚动与 cachedCount 到底怎么用
前端
七牛云行业应用1 天前
Codex CLI 和 Codex 桌面端完整教程:两种入口的功能对比与选择指南
前端·后端·github
kisshyshy1 天前
告别 Node 噩梦?用 Bun + TypeScript 像写诗一样调用大模型
前端·typescript
wuhen_n1 天前
RAG 关键环节:文本分块策略与最优参数配置
前端·langchain·ai编程