开发了一款在线PPT编辑器,支持一键导出PPT文件!

大家好, 我是徐小夕. 

之前一直在社区分享零代码&低代码的技术实践,也陆陆续续设计并开发了多款可视化搭建产品,比如:

这段时间一直在研发AI在线办公软件,顺手写了一款轻量级PPT在线编辑器,采用最新技术栈实现,演示效果如下:

下面我就和大家介绍一下我开发的PPT在线编辑器,后面会进一步分享技术实现,大家感兴趣可以关注下方公众号获取最新进展:

一. PPT编辑器实现技术栈

为了顺便学习研究一下最新的技术,我采用了如下核心技术栈:

  • Nextjs

  • @radix-ui
  • tailwindcss
  • html2canvas
  • recharts
  • 自研PPT结构转换算法
我们可以用它实现功能复杂的PPT编辑器,并集成AI能力,以下是我设计的PPT的数据结构:

每一个组件元素都设计成了结构化的JSON,方便数据驱动的PPT渲染。

二. PPT在线编辑器功能介绍

2.1 实时可预览的画布

我们可以创建画布,并在顶部菜单中选中对应的组件插入到画布,左侧画布列表会实时展示画布的更新情况(实时缩略图):

2.2 多样的画布背景设置

我们可以对每一张PPT画布设置不同的背景样式,比如背景色,渐变色,背景图片,甚至能自定义编写css代码来设置背景:

设置背景图片:

2.3 开箱即用的PPT组件

我们可以在PPT中插入文本,图片,图表,表格,图标,形状等元素,来满足我们PPT设计的各种需求。

插入图表的效果:

目前图表支持六种,柱状图,折线图,饼图,面积图,散点图,雷达图,当然后续还会继续扩展。同时图表还支持各种高级配置,比如图表配色方案,图表动画等:

插入自定义表格的效果:

我们可以在配置面板编辑表格数据,并设置更多表格的自定义样式。

插入形状:

目前支持各种复杂形状,并支持各种形状的样式配置。

插入自定义图标:

同时所有的组件都支持旋转,层级调整等,满足各种样式设计需求。

2.4 PPT实时预览演示功能

点击演示按钮,我们可以一键演示PPT,并轻松切换PPT页面。

2.5 PPT导出功能

上面是我实现的导出PPT的效果,在WPS可以直接预览。导出PPT功能需要设计PPT底层数据结构相关的技术,比如需要将数据转化为XML,如下:

// 创建幻灯片母版关系XMLfunction createSlideMasterRelsXml() {  return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout" Target="../slideLayouts/slideLayout1.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="../theme/theme1.xml"/></Relationships>`}
// 创建幻灯片母版XMLfunction createSlideMasterXml() {  return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><p:sldMaster xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"><p:cSld>  <p:bg>    <p:bgRef idx="1001">      <a:schemeClr val="bg1"/>    </p:bgRef>  </p:bg>  <p:spTree>    <p:nvGrpSpPr>      <p:cNvPr id="1" name=""/>      <p:cNvGrpSpPr/>      <p:nvPr/>    </p:nvGrpSpPr>    <p:grpSpPr>      <a:xfrm>        <a:off x="0" y="0"/>        <a:ext cx="0" cy="0"/>        <a:chOff x="0" y="0"/>        <a:chExt cx="0" cy="0"/>      </a:xfrm>    </p:grpSpPr>  </p:spTree></p:cSld><p:clrMap bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2" accent1="accent1" accent2="accent2" accent3="accent3" accent4="accent4" accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/><p:sldLayoutIdLst>  <p:sldLayoutId id="2147483649" r:id="rId1"/></p:sldLayoutIdLst></p:sldMaster>`}

实现过程相对复杂,这里就不一一介绍了,如果大家有好的方案,也可以在留言区交流反馈。

2.6 PPT属性配置面板

当然还有很多功能后续会和大家持续分享,大家有好的想法和建议可以在评论区留言反馈~

最后

最近我们基于flowmix/docx文档编辑器做了一款智能文档引擎, 叫灵语文档, 这里简单和大家分享一下:

图片

大家可以基于它轻松打造类似飞书文档和钉钉文档的专业级文档管理系统.  体验地址: https://mindlink.turntip.cn

每个月我们都会根据用户的需求和规划的迭代计划持续迭代, 大家可以关注flowmix视界公众号获取最新更新的信息.

当然,如果你对AI和互联网技术感兴趣,也欢迎在留言区讨论“AI之大变革”。

往期更新:

Flowmix/Docx 多模态文档编辑器: 让文档不止于文档

Flowmix/Docx 多模态文档编辑器 V1.8.0 全面升级,轻松搞定复杂文档编辑

flowmix/docx, 支持超大PDF/Docx文件解析的多模态文档编辑器

市面上大多数文档编辑器的【划线评论】功能,是如何实现的?

多模态文档+思维导图:引领内容创作新潮流

WebOffice是一款由北京点聚信息技术有限公司提供的完全免费(商业用途也免费)且功能强大的在线Word/excel/wps编辑辅助控件,可以实现: 1.在线编辑Word、Excel、PPT、WPS... ... 2.全面支持MS Office的界面定制,包括对于Office2007的全面支持 3.修订留痕 4.限制打印、保存、复制 5.直接保存到服务器,支持标准Http Post协议 6.强大的书签管理 7.套红、文档保护 8.模板管理 9.其他功能扩展 10.提供开发论坛http://www.dianju.cn/forum/,在其中提供软件更新及问题回答服务 本控件不同于其它同类软件,不是基于微软的开放源码DsoFramer,也不基于OLE,可以解决DsoFramer及其派生产品的一些稳定性问题 本控件不同于其它同类收费软件,本控件完全免费和界面完全可控制。 点聚会定期更新本控件,并解答论坛上的询问,免费不代表免服务,每一个使用者都能得到及时服务。 安装包内包含: 1.WebOffice安装包(仅包含WebOffice控件) 2.WebOffice接口SDK 3.WebOffice网页接口调用例子 4.DES手写及签章系统(Office签章系统)试用版。 5.演示章及证书 6.点聚产品白皮书 WebOffice组件可以无缝集成点聚公司的电子签章和手写审批类产品。 点聚信息(http://www.dianju.com.cn)是国内专业的安全和文档中间件软件制造商。公司注重自主知识产权产品的研发,始终坚持技术为本、服务为先的原则,在电子印章、手写签批、安全版式文档和电子表单等领域处于国内领先水平。 点聚自主研发的版式文件系统独创性的将整个系统缩小为1M大小的组件,并在多项重要技术指标上领先PDF和其它版式格式。 点聚支持全系列手写及签章解决方案,可同时提供Office签章系统(Word/Excel/Wps)、网页签章系统、版式签章系统. 点聚是国内唯一一家同时拥有国密和军密资质的电子印章及安全文档产品提供商(国密、军密、公安部销售许可)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值