首页
学习
活动
专区
圈层
工具
发布

分享一款基于web的开源word文档编辑器

hi, 大家好, 我是徐小夕, 最近在研究基于 web 的文档编辑器,在网上调研了很多方案, 刚好看到了一款非常有意思的开源编辑器——canvas-editor, 它底层基于 canvas 实现, 我们使用它可以实现类似于...word文档编辑器类似的效果, 同时还支持很多灵活可配置的 API, 可以帮助我们定制属于自己的文档编辑平台, 如果你刚好也想着手实现, 这个项目将非常适合你....开发的编辑器效果: 插入表格: 插入公式: 是不是很像在 word 里编写文档的感觉~ 功能点介绍 canvas-editor 功能点介绍如下: 富文本操作(撤销、重做、字体、字号、加粗、斜体、上下标...打印(基于 canvas 转图片、pdf 绘制) 控件(单选、文本、复选框) 右键菜单(内部、自定义) 快捷键(内部、自定义) 文字、元素、控件拖拽 页眉、页脚、页码 页边距 水印 分页 安装 & 使用...: EditorMode // 编辑器模式:编辑、清洁(不显示视觉辅助元素。如:分页符)、只读、表单(仅控件内可编辑)、打印(不显示辅助元素、未书写控件及前后括号)。

4.3K10

基于WEB的SAAS版3D场景编辑器功能与特点

什么是3D编辑器 3D编辑器是一种专业的计算机软件或在线工具,它允许用户在虚拟的三维空间中创建、修改、排列和管理三维模型、场景及环境。...3D编辑器主要要有哪些功能 一个功能完备的3D编辑器通常应包含以下核心功能模块: 场景管理与视图控制: 提供多视角(如顶视图、前视图、右视图、透视视图)查看场景的能力,并支持用户自由旋转、平移、缩放视图...导入与导出: 支持导入多种通用的3D模型文件格式(如.obj, .fbx, .gltf等),并能将编辑好的场景或模型导出为相应格式。 3D编辑器为什么要与2D视图联动 1....2D视图的作用:3D编辑器中的顶视图、前视图等,可以直接作为“参考图”或“底图”,让建模师能够精准地根据2D图纸快速创建出3D模型,保证了设计与成果的一致性。...3D编辑器元素管理 3D编辑器地面管理 3D编辑器标尺显示 3D编辑生成墙面 3D编辑器设置贴图

25910
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    基于属性的编辑器框架

    看了Ogitor的代码后, 自己又实践了一把, 结合N3中学到的一些技巧, 在编辑器中得到了验证. 虽说做的是场景编辑器, 但是其它编辑器也可以用的, 毕竟思想都差不多....对于一个编辑器, 通常是由一个个的"实体"组成, 或者叫"对象". 而"对象"又是由各种"属性"所组成....由此可以得出: 编辑器的一切操作都是属性编辑 实体不用说了, 相信每个引擎都有Model/Light/Sound之类的对象类. 那么怎么去定义一个属性呢?...文件读写 对象是属性组成, 那么只需要把属性保存下来即可....增删属性不用改动文件格式, 连版本号都省了 Undo/Redo 对于创建/删除操作, 备份该对象所有属性. 对于属性更改操作, 备份当前编辑属性.

    1.2K20

    开源 web ide_强大的开源Web编辑器(IDE)

    先进的所见即所得(WYSIWYG)编辑器的出现和如今的统治地位,一直是Web设计师和开发人员感到高兴和痛苦的源泉。...这些编辑器成功的核心部分是集成开发环境(IDE),其中包括远程发布,文件和修订管理,与其他应用程序(如图像编辑器)的关系以及对底层源代码的访问。...我的主要抱怨之一与编辑器无关,除了我不能在主要的Linux开发工作站上运行它们之外。 NVU似乎已经解决了该问题。...NVU是基于Mozilla Composer的源代码而构建的,是一种跨多个操作系统(Windows,Macintosh和Linux)的新的开源解决方案-但是,其主要目标是针对Linux的综合IDE。...虽然我们都可以使用Apache和其他Web服务器的本地包含功能或脚本语言来单独使用所有模板,但是用于在NVU内部进行模板化的某种小部件将是很棒的。

    1.9K30

    .NET的资源并不限于.resx文件,你可以采用任意存储形式

    在本篇中我们还将创建两个自定义的ResourceManager,以实现对独立.resx资源文件和自定义结构的XML资源文件的支持。...(文中的例子从这里下载) 一、自定义ResXResourceManager实现对.Resx资源文件的支持 二、将资源定义在自定义结构的XML文件中 三、为XML资源存储形式定义ResourceReader...资源文件的支持 较之.resources资源文件这种二进制文件,以XML形式定义的.Resx资源文件是一个纯文本文件,我们可以对其进行自由地修改,所以有时候我们直接将独立的.resx文件作为资源存储形式更利于资源内容的维护...二、将资源定义在自定义结构的XML文件中 .Resx资源文件本质上就是一XML文件,既然.Resx文件可以作为资源文件,我们肯定可以将资源定义在我们自定义的XML文件中。....NET的资源并不限于.resx文件,你可以采用任意存储形式[上篇] .NET的资源并不限于.resx文件,你可以采用任意存储形式[下篇]

    1.1K70

    .NET的资源并不限于.resx文件,你可以采用任意存储形式

    自定义BinaryResourceManager管理单独二机制资源文件 一、从添加资源文件(.resx文件)说起 说起资源,你首先想到的肯定是通过VS添加的扩展名为.resx的资源文件。....resx资源文件中(该文件实际上就是一个XML),但是该文件在编译的时候会变成.resources文件(二进制文件)被内嵌到程序集中,所以ResourceManager操作的实际上是内嵌在某个程序集中的...,如果我们直接将资源定义在一个独立的.resources文件、.resx文件甚至是自定义结构的XML文件呢?...为此我定义了如下一个抽象类FileResourceManager作为基于文件的ResourceManager的基类。...我自需要重写InternalGetResourceSet,返回的是基于.resources文件名创建的ResourceSet对象。

    1.8K80

    基于 PHPStorm 编辑器的 Laravel 开发

    引言 本文主要讲述在PHPStorm编辑器中如何使用PHPStorm的Laravel插件和Laravel IDE Helper来开发Laravel程序,结合个人积累的一点经验来说明使用PHPStorm编辑器来开发程序还是很顺手的...,内容主要基于PHPStorm官方文档《Laravel Development using PhpStorm》 。...安装后就会在根目录下自动生成一个 vendor文件夹,该文件夹存放各种依赖包。...可以选择新建一个PHP Web Application或者PHP Script,选择PHP Web Application的话需要配置下Server,默认本地开发并且路由为localhost,则配置如下...Configuration file指向本地的phpunit.xml.dist文件,该文件是用来配置phpunit的测试套件的,可以看官网中文版的:用 XML 配置来编排测试套件,比如本人这里的套件配置

    5K80

    基于 Canvas 实现的简历编辑器

    关于Canvas编辑器的历史文章: 掘金老给我推Canvas,于是我也学习Canvas做了个简历编辑器 Canvas图形编辑器-数据结构与History(undo/redo) Canvas图形编辑器-我的剪贴板里究竟有什么数据...背景 我是有个基于DOM实现的简历编辑器项目的,因为暂时找不到可以用Canvas实现的比较有意思的场景,所以才选择了继续做简历编辑器,最开始做简历编辑器就是因为很多简历网站都是要开会员的,要不就是简历的自定义程度比较差...完全是基于事件的触发然后执行相关副作用从而调用Mask的方法进行重新绘制。...PDF本身也是文件格式,所以是可以借助PDFKit/PDFjs等PDF排版生成工具来导出的,通过这种方式也可以直接在导出的时候直接将其写入固定位置,并且可以不受浏览器打印的分页限制。...最后 这次对于Canvas的体验让我感觉还是不错的,后边我也会写一些在实现的时候碰到的问题以及如何解决问题的文章,不过我目前的主业还是还是写富文本编辑器,富文本编辑器也是天坑中的一员,后边也可能会先写编辑器相关的文章

    68910

    MVP 聚技站|Avalonia 国际化之路:Resx 资源文件的深度应用与探索

    在这个目录下,创建默认的英文语言资源文件 Resource.resx。这个文件将作为整个国际化资源体系的基础,承载着应用在英文环境下的所有文本资源。...例如,中文简体对应的资源文件名为 Resource.zh-CN.resx,中文繁体为 Resource.zh-Hant.resx,日语则是 Resource.ja-JP.resx。...Resx 资源文件名,这是 T4 文件生成强类型资源类的依据。...总结:Resx 资源文件国际化方案的优劣剖析 通过 Resx 资源文件实现 Avalonia UI 应用的国际化,无疑为传统开发者提供了一条熟悉且便捷的道路。...其对于普通用户侧的维护来说,可能存在一定的难度。普通用户可能不熟悉 Resx 文件的结构和编辑方式,也难以理解 T4 文件生成代码的逻辑。

    52200

    基于OpenAI的代码编辑器,太强了!

    最近随着OpenAI的一系列大动作,把软件领域搅的天翻地覆。各行各业各领域,都出现了大量新产品。...开发工具领域首当其冲,各种新工具层出不穷,今天TJ就给大家推荐一个全新的开发工具:Cursor 从官网介绍可以看到,Cursor基于OpenAI实现,继承了最新的GPT-4模型,支持Mac、Windows...比如,我这里输入“读取文件”。马上就产生了下面的实现内容: 解释代码 1. 选中你看不懂的代码,按快捷键cmd + L 2. ...说出你的疑问,AI在右侧就会给出解释 这功能也许非常实用吧,毕竟我们每天都在维护屎山,有了这根搅屎棍的帮助,也许屎山啃起来可以容易一些了吧  往期推荐 程序员最后一款笔记软件:Notion 盘点下国外最火的...AI绘画平台 ChatGPT推出插件功能:可联网、可执行代码…… 点击下方卡片,关注公众号“TJ君” 每天了解一个牛x、好用、有趣的东东

    1K30

    基于HT for Web的Web SCADA工控移动应用

    在电力、油田燃气、供水管网等工业自动化领域Web SCADA的概念已经提出了多年,早先年的Web SCADA前端技术大部分还是基于Flex、Silverlight甚至Applet这样的重客户端方案,在HTML5...对于SCADA的HMI人机界面管网拓扑图网络加载的问题,用户采用了我们建议的Web客户端缓存方案,很好的解决了较多网络拓扑图切换打开网络加载慢的问题,可参考《HTML5 Web 客户端五种离线存储方式汇总...》的文章,根据自己的具体项目情况选择合适你的本地存储方案,其实Web本地存储方案已经出现了众多领域的千奇百怪应用黑魔法,有人应用LocalStorage存储Web Font,游戏领域利用Web客户端存储游戏资源等等...HTML5应用的渗透力在去年基于HTML5的神经猫游戏,在微信中的病毒式快速传播已被业界真正认识到其力量,如今微信已经成为游戏、广告等各行各业应用的重要入口,同样基于HT for Web的Web SCADA...工控移动应用也可在微信中传播使用,以下附上几张基于HT for Web客户项目的应用抓图,是的基于HTML5,监控可以如此简单,真正做到在你掌控之内: ?

    1.5K31

    基于HT for Web的Web SCADA工控移动应用

    在电力、油田燃气、供水管网等工业自动化领域Web SCADA的概念已经提出了多年,早先年的Web SCADA前端技术大部分还是基于Flex、Silverlight甚至Applet这样的重客户端方案,在HTML5...对于SCADA的HMI人机界面管网拓扑图网络加载的问题,用户采用了我们建议的Web客户端缓存方案,很好的解决了较多网络拓扑图切换打开网络加载慢的问题,可参考《HTML5 Web 客户端五种离线存储方式汇总...》的文章,根据自己的具体项目情况选择合适你的本地存储方案,其实Web本地存储方案已经出现了众多领域的千奇百怪应用黑魔法,有人应用LocalStorage存储Web Font,游戏领域利用Web客户端存储游戏资源等等...HTML5应用的渗透力在去年基于HTML5的神经猫游戏,在微信中的病毒式快速传播已被业界真正认识到其力量,如今微信已经成为游戏、广告等各行各业应用的重要入口,同样基于HT for Web的Web SCADA...工控移动应用也可在微信中传播使用,以下附上几张基于HT for Web客户项目的应用抓图,是的基于HTML5,监控可以如此简单,真正做到在你掌控之内: ?

    2.3K51

    HarmonyOS 开发实践 —— 基于@ohos.util.stream的web离线缓存文件加载

    打开文件是文件操作的第一步,它会返回一个文件描述符,后续的文件操作通常需要使用这个文件描述符。...* 可以对打开的文件进行底层的读写操作,这些操作更为灵活,但也需要更多的代码来管理文件描述符和数据缓冲区。优势内存效率:使用流可以逐块地读取或写入数据,而不是一次性将整个文件加载到内存中。...数据压缩和解压缩(如使用Zlib) 加密和解密 文件转换场景描述通过web加载网址,onInterceptRequest拦截资源请求,web离线缓存的文件需要通过查看/data/storage/...代码实现核心类介绍: 1.通过web加载网址,onInterceptRequest拦截资源请求, web的缓存在指定目录/data/storage/el2/base/cache/web/Cache下。...'/web/Cache/Cache_Data/streamTest.zip' // 缓存文件路径    this.pathDir = cacheDir + '/web/Cache/Cache_Data'

    41810

    基于Web的股票预测系统

    基于Web的股票预测系统 此project是基于django的web app。它能给出指定范围内公司(此处为10个)的历史股票数据与未来某段时间的预测数据以及对该股票的一些评价指标。...股票指标数据 我们的Web app,还给出了每个公司的股票评价指标。这些数据是从数据猫的网站上爬取的,在数据猫的网站上给出了股票的很多项评价指标(如下图), 而我们只选择了其中几个评价指标来展示。...文件夹,以csv格式保存爬取的数据。...接着调用的train_model(stock_code, predict=False)方法基于上述数据来训练模型,若predict=True,则在训练完后会进行模型正确性的验证, 主要是通过绘图方式来对比预测数据与真实数据之间的吻合度...为了获得更详细的测试报告,可输入coverage html命令,其会在根目录下生成htmlcov文件夹,里面包含自动生成的html页面,点击index.html可查看整个项目以及各个文件的测试覆盖率,

    2.2K32

    Koa基于NodeJS的WEB框架

    前言 Koa 是一个新的 web 框架,由 Express 幕后的原班人马打造, 致力于成为 web 应用和 API 开发领域中的一个更小、更富有表现力、更健壮的基石。...Web App的功能 5.1 Cookie ctx.cookies用来读写 Cookie。...DH算法基于数学原理,比如小明和小红想要协商一个密钥,可以这么做: 小明先选一个素数和一个底数,例如,素数p=23,底数g=5(底数可以任选),再选择一个秘密整数a=6,计算A=g^a mod p=8,...数字证书通常用在SSL连接,也就是Web的https连接。...一般情况下,https连接只需要处理服务器端的单向认证,如无特殊需求(例如自己作为Root给客户发认证证书),建议用反向代理服务器如Nginx等Web服务器去处理证书。 7.

    2.7K10

    基于Spring的Web缓存 转

    我们知道,IO的读写速度相对内存来说是非常比较慢的,通常一个web应用的瓶颈就出现在磁盘IO的读写上。...页面缓存 除了IO外,web应用的另一大瓶颈就是页面模板的渲染。每次请求都需要从业务逻辑层获取相应的model,并将其渲染成对应的HTML。...一般来说,web应用读取数据的需求比更新数据的需求大很多,大多数情况下,某个请求返回的HTML是一样的,因此直接将HTML缓存起来也是缓存的一个主流做法。... ​ 如果这样配置的话,很多其他的配置就会被默认进行,如: 映射文件所有的select 语句会被缓存 映射文件的所有的insert、update和delete语句会刷新缓存 缓存会使用默认的...FIFO:先进先出原则,按照对象进入缓存顺序进行回收 SOFT:软引用,移除基于垃圾回收器状态和软引用规则的对象 WEAK:弱引用,更积极的移除移除基于垃圾回收器状态和弱引用规则的对象 flushInterval

    55120
    领券