Coder Social home page Coder Social logo

pipipi-pikachu / pptist Goto Github PK

View Code? Open in Web Editor NEW
5.4K 79.0 1.0K 145.31 MB

An online presentation application that replicates most of the commonly used features of Microsoft Office PowerPoint, allowing for the editing and presentation of PPT online. It also supports the export of PPT files.

Home Page: https://pipipi-pikachu.github.io/PPTist/

License: GNU Affero General Public License v3.0

JavaScript 0.22% HTML 0.16% Vue 56.84% SCSS 0.54% TypeScript 42.22% Shell 0.01%
vue typescript ppt slide office powerpoint online-ppt online-powerpoint pptx office-powerpoint

pptist's Introduction

console.log('Welcome to my page! 🎉')

🤔 About Me:

pptist's People

Contributors

772778995 avatar 948764321 avatar chaoxxxxx avatar claviering avatar esqbs avatar hy16657 avatar lhyunited avatar missile-xuan avatar pipipi-pikachu avatar rewhtie avatar vibrant-kirchpck avatar weadysu avatar zenoven avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pptist's Issues

[Bug report]表格复制粘贴有问题

问题描述
表格复制粘贴有问题

CustomTextarea.vue 中 textareaRef.value.onpaste 方法会更新数据 但是不修改当前页面框体内容

自己尝试了下修复
因为禁用了原始事件 手动处理粘贴后光标位置有问题 还是大佬看看吧

[Bug report] ColorPicker

问题描述

在使用ColorPicker过程中,拖拽Saturation board时会导致Hue picker的值发生改变,进而会改变Saturation board的底色。
colorpicker

环境信息
至少包含以下部分:

  1. 系统环境: Windows
  2. 浏览器环境:Chrome Version 90.0.4430.212 (Official Build) (64-bit)

Safari 无法编辑。

如题。


详细信息

版本:Version 14.0 (14610.1.28.1.9)
OS:macOS Mojave 10.14.6

slide数据缺失

image

删除默认slide后,自动生成的slide缺少background属性

建议添加本地存储功能

关闭网页或者刷新网页,数据就没了。或许可以把本地数据存储在 Local Storge 里。
另外,对这个项目很感兴趣,作者有下一步的开发计划吗?比如未来打算添加什么功能?

未来计划(长期)

短期内主要还是会把重心放在导入功能的研究上。

在这里简单说下后续的一些想法,例如:

1、公式元素,这个还没想好具体是做成latex编辑还是可视化编辑。如果做可视化编辑,我看过现有的一些轮子,感觉体验上都不怎么样,所以可能会选择自己实现。

2、动画的强化,目前仅支持入场动画,后面希望补充上退场动画和强调动画,另外是动画的入场方式不仅仅是现在的顺序触发,还需要有跟随上一个动画触发,自动触发等。

3、更多的导出格式,例如PDF、HTML文件。

暂时就这些,再想到其他的会补充在后面。

[Bug report]表格元素切换其他元素报错问题

问题描述
创建表格后 点击或创建其他元素
会报错
image
查了下原因
emitter.on(EmitterEvents.UPDATE_TABLE_SELECTED_CELL, cells => updateSelectedCells(cells))
updateSelectedCells此方法中表格丢失焦点也会调用
虽然代码执行emitter.off卸载但是 会先执行 updateSelectedCells
当执行的时候 handleElement已经变成了其他的元素 handleElement.value.data[rowIndex][colIndex].style就报错了
貌似执行中报错导致数据更新不掉 之后的点击会一直报错

image
我加了个判断貌似可以了 但不知道会不会影响其他地方
大佬看看

当PPT页数过多的时候,点击切换,页面加载延迟很高

  1. 当左边的Thumbnails对应后台list很多的时候,点击切换加载Canvas很慢
  2. 希望“mutations.ts”中针对这个“MutationTypes.UPDATE_SELECTED_SLIDES_INDEX”中切换index的时候,不是重新加载,而是做成原先display:none属性,切换的时候,针对index动态展示。感恩!

[Bug report]

问题描述
大佬 我发现在历史快照中

导致在ppt中间某页面添加页面后 点击撤销
当前页面选中的页面并不是添加前的光标页面

image
应该是截图中的代码的问题 store/actions.ts ADD_SNAPSHOT中
但是没理解这段代码有什么其他特殊的用处

(给大佬递上星星)

[Bug report]updateTableCells方法多次触发问题

我又来了

问题描述
在修改表格单元格会调用两次updateTableCells方法 第一次传入的还是个string类型

找了下原因
EditableTable.vue中
// 单元格文字输入时更新表格数据 const handleInput = debounce(function(value, rowIndex, colIndex) { tableCells.value = tableCells.value[rowIndex][colIndex].text = value emit('change', tableCells.value) }, 300, { trailing: true })
tableCells.value = tableCells.value[rowIndex][colIndex].text = value
会先触发
const tableCells = computed<TableCell[][]>({ get() { return props.data }, set(newData) { emit('change', newData) }, })
中的set

(暂时看起来不影响功能 因为第一次string传进去后 紧接着会被第二次的正确数据覆盖 其他地方还没试)
断点打的我头皮发麻

[Bug report]表格元素样式 TableStylePanel.vue 中 emitter.on 顺序问题

问题描述

  1. 生成一个组表格
  2. 切到"位置"编辑窗
  3. 给表格加入几个数据
  4. 选中其中一个数据
  5. 切到”样式“编辑窗
  6. 修改样式
  7. 发现整个表格的样式都被修改

问题大概是因为TableStylePanel.vue中emitter.on方法在页面打开激活时候才生效,
先选择数据再打开面板导致表格位置数据获取不到, 从而改变整个表格样式

另外生成单元格的时候 这样会导致单元格id都一样 好像不太对 不过暂时没发现什么问题
`
const rowCells: TableCell[] = new Array(col).fill({ id: createRandomCode(), colspan: 1, rowspan: 1, text: '', style })
const data: TableCell[][] = new Array(row).fill(rowCells)

// 我改成循环拿随机id了
const data: TableCell[][] = new Array(row)
for (let i = 0 ;i < row; i++) {
  const rowCells: TableCell[] = new Array(col)
  for (let j = 0 ;j < col; j++) {
    rowCells[j] = { id: createRandomCode(), colspan: 1, rowspan: 1, text: '', style }
  }
  data[i] = rowCells
}

`

物件旋转后,动画效果怪异。

物件旋转后,添加动画效果,物件会在未旋转的状态下完成动画,动画结束后再闪现到物件旋转的角度。

非常感谢提供如此好的项目。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.