PPTist 项目安装和配置指南

PPTist 项目安装和配置指南

PPTist 基于 Vue3.x + TypeScript 的在线演示文稿(幻灯片)应用,还原了大部分 Office PowerPoint 常用功能,实现在线PPT的编辑、演示。支持导出PPT文件。 PPTist 项目地址: https://gitcode.com/gh_mirrors/pp/PPTist

1. 项目基础介绍和主要编程语言

项目基础介绍

PPTist 是一个基于 Vue 3.x 和 TypeScript 开发的在线演示文稿(幻灯片)应用。它旨在还原 Microsoft Office PowerPoint 的大部分常用功能,允许用户在网页浏览器中进行编辑和演示,并支持导出 PPT 文件。

主要编程语言

  • Vue 3.x: 用于构建用户界面的渐进式 JavaScript 框架。
  • TypeScript: 一种强类型的 JavaScript 超集,提供更好的类型检查和开发体验。

2. 项目使用的关键技术和框架

关键技术和框架

  • Vue 3.x: 项目的前端框架,用于构建用户界面和组件。
  • TypeScript: 用于增强 JavaScript 的类型系统,提高代码的可维护性和可读性。
  • Vite: 一个快速的构建工具,用于开发和构建 Vue 项目。
  • Canvas API: 用于在网页上绘制图形和动画。

3. 项目安装和配置的准备工作和详细安装步骤

准备工作

  1. Node.js: 确保你已经安装了 Node.js(建议版本为 14.x 或更高)。你可以从 Node.js 官网 下载并安装。
  2. Git: 用于克隆项目代码。你可以从 Git 官网 下载并安装。

详细安装步骤

步骤 1: 克隆项目代码

首先,打开终端(命令行工具),使用 Git 克隆 PPTist 项目到本地:

git clone https://github.com/pipipi-pikachu/PPTist.git
步骤 2: 进入项目目录

克隆完成后,进入项目目录:

cd PPTist
步骤 3: 安装依赖

使用 npm 或 yarn 安装项目所需的依赖包。如果你使用 npm:

npm install

如果你使用 yarn:

yarn install
步骤 4: 启动开发服务器

安装完成后,启动开发服务器以运行项目:

npm run dev

或者使用 yarn:

yarn dev
步骤 5: 访问项目

启动开发服务器后,打开浏览器并访问 http://localhost:3000(默认端口可能会有所不同,请根据终端提示访问正确的地址)。

配置指南

PPTist 项目本身不需要额外的配置,但在开发过程中,你可以根据需要修改 vite.config.ts 文件来调整 Vite 的配置,例如端口号、代理设置等。

总结

通过以上步骤,你应该已经成功安装并运行了 PPTist 项目。如果你在安装过程中遇到任何问题,可以参考项目的 GitHub 仓库中的文档或提交 issue 寻求帮助。

PPTist 基于 Vue3.x + TypeScript 的在线演示文稿(幻灯片)应用,还原了大部分 Office PowerPoint 常用功能,实现在线PPT的编辑、演示。支持导出PPT文件。 PPTist 项目地址: https://gitcode.com/gh_mirrors/pp/PPTist

要实现这个效果,我们可以对原有的代码进行一些修改和添加。首先,我们需要创建一个小圆形按钮,并设置它的样式和位置。然后,我们将添加一些JavaScript代码,使得小圆按钮可以拖动,并且始终显示在最顶层。 以下是修改后的代码: ```html <!DOCTYPE html> <html> <head> <!-- 引入Bootstrap的CSS文件 --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"> <style> /* 设置画布容器的样式 */ .canvas { position: relative; width: 100%; height: 100vh; } /* 设置内嵌框的样式 */ .frame { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: none; /* 默认隐藏 */ } /* 设置按钮容器的样式 */ .btn-container { position: fixed; bottom: 20px; width: 100%; display: flex; justify-content: center; z-index: 1; } /* 设置按钮的样式 */ .btn { margin: 0 10px; } /* 设置小圆按钮的样式 */ .circle-btn { position: fixed; bottom: 60px; right: 20px; width: 40px; height: 40px; background-color: #000; border-radius: 50%; z-index: 2; } </style> </head> <body> <!-- 画布容器 --> <div class="canvas"> <!-- 内嵌框1 --> <iframe class="frame" src="pptist.html"></iframe> <!-- 内嵌框2 --> <iframe class="frame" src="E:\Demo\Omath.html"></iframe> <!-- 内嵌框3 --> <iframe class="frame" src="E:\Demo\Board.html"></iframe> </div> <!-- 控制按钮容器 --> <div class="btn-container"> <!-- 控制按钮 --> <button class="btn btn-primary" onclick="showFrame(1)">演示</button> <button class="btn btn-secondary" onclick="showFrame(2)">画布</button> <button class="btn btn-success" onclick="showFrame(3)">白板</button> </div> <!-- 小圆按钮 --> <div class="circle-btn" draggable="true" ondragstart="dragStart(event)" ondragend="dragEnd(event)"></div> <script> function showFrame(index) { var frames = document.getElementsByClassName('frame'); // 隐藏所有内嵌框 for (var i = 0; i < frames.length; i++) { frames[i].style.display = 'none'; } // 显示指定的内嵌框 frames[index - 1].style.display = 'block'; } var isDragging = false; var circleBtn = document.querySelector('.circle-btn'); var canvas = document.querySelector('.canvas'); circleBtn.addEventListener('mousedown', function(e) { isDragging = true; circleBtn.style.cursor = 'grabbing'; }); canvas.addEventListener('mousemove', function(e) { if (isDragging) { var x = e.clientX; var y = e.clientY; circleBtn.style.right = `${window.innerWidth - x}px`; circleBtn.style.bottom = `${window.innerHeight - y}px`; } }); canvas.addEventListener('mouseup', function(e) { isDragging = false; circleBtn.style.cursor = 'grab'; }); function dragStart(e) { e.dataTransfer.setData('text/plain', null); circleBtn.style.cursor = 'grabbing'; } function dragEnd(e) { circleBtn.style.cursor = 'grab'; } </script> </body> </html> ``` 这段代码中,我们添加了一个名为 `circle-btn` 的 `div` 元素,它表示小圆形按钮。我们给它设置了合适的样式,并将其位置固定在页面的右下角。 然后,我们使用JavaScript代码实现了拖动功能。当鼠标按下小圆按钮时,我们将 `isDragging` 变量设置为 `true`,表示正在拖动。当鼠标在画布上移动时,如果 `isDragging` 为 `true`,则更新小圆按钮的位置。最后,当鼠标释放时,我们将 `isDragging` 设置为 `false`。 同时,我们还添加了 `dragStart` 和 `dragEnd` 函数,用于设置拖动开始和结束时的样式。 现在,你可以尝试在浏览器中运行修改后的代码,并通过拖动小圆按钮来隐藏和显示三个按钮。请注意,由于在代码中使用了 `E:\Demo\Omath.html` 和 `E:\Demo\Board.html` 这两个本地文件的路径,你可能需要将这些路径修改为正确的文件路径才能正常显示相应的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赖一晶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值