地址  https://github.com/dcsoft-yyf/DCWriterLite

本开源软件的特色
1.纯前端组件。完全自定义的文档DOM结构,而不是类似TinyMCE/CKEditor等基于HTML DOM 开发的。
2.使用CANVAS来绘制文档界面,使用SVG来进行打印。
3.深度魔改Blazor Webassembly9.0开发的。
4.展示了一种编程技巧,将WinForm.NET程序移植到WASM开发。
5.表单录入和自由文本录入完美融合,适用于企业级开发。
6.以XML格式存储。
7.支持信创,能运行在Windows、统信、麒麟、方德等操作系统。

# DCWriterLite 开源版功能清单
## 运行环境
    - 支持Windows、Linux、MacOS、iOS、安卓、统信、麒麟、方德等操作系统。
    - 支持Chrome、Firefox等浏览器。
    - 纯前端组件,不依赖服务器端,不依赖任何第三方组件。
## 文件操作:
    - 新建文件
    - 打开文件,支持XML格式。
    - 保存文件,支持XML格式。
    - 打印设置
    - 纸张类型
    - 纸张方向
    - 上下左右的边距设置
    - 全局性文档网格线
    - 打印预览
## 复制粘贴
    - 支持纯文本、私有格式的文档内容的复制粘贴
## 重做/撤销
    - 支持不限制次数的重做和撤销操作
## 文本样式
    - 支持粗体、斜体、下划线、删除线、字体名称、字体大小的设置
    - 文本、输入域、单元格的边框和背景色。
## 标尺
    - 支持横向和纵向标尺。
    - 支持拖拽标尺的刻度来设置页边距。

# DCWriterLite 开源版功能清单
## 运行环境
- 支持Windows、Linux、MacOS、iOS、安卓、统信、麒麟、方德等操作系统。
- 支持Chrome、Firefox等浏览器。
- 纯前端组件,不依赖服务器端,不依赖任何第三方组件。
## 文件操作:
- 新建文件
- 打开文件,支持XML格式。
- 保存文件,支持XML格式。
- 打印设置
- 纸张类型
- 纸张方向
- 上下左右的边距设置
- 全局性文档网格线
- 打印预览
## 复制粘贴
- 支持纯文本、私有格式的文档内容的复制粘贴
## 重做/撤销
- 支持不限制次数的重做和撤销操作
## 文本样式
- 支持粗体、斜体、下划线、删除线、字体名称、字体大小的设置
- 文本、输入域、单元格的边框和背景色。
## 标尺
- 支持横向和纵向标尺。
- 支持拖拽标尺的刻度来设置页边距。
- 支持拖拽标尺的刻度来设置段落边距。
## 段落样式
- 支持行间距和段落间距
## 可编程DOM API接口
提供树状的DOM模型,用于表示文档中所有的内容。并提供以下DOM文档元素类型。
- XTextDocument 文档元素
- 表示文档根节点,是DOM树的操作的入口点。
- XTextContainerElement 容器元素,是一个抽象类,是所有容器元素的基类。
- 可以包含其他元素。
- XTextImageElement 图片元素
- 可以自由拖拽设置图片的大小
- 只支持JPG\PNG\BMP格式。
- XTextInputFieldElement 输入域元素
- 输入域高亮度显示
- 设置背景文本
- 内容校验,包括必填项、最大值、最小值等。
- XTextLineBreakElement 换行元素
- 文本进行软回车,但不应用段落间距的设置。
- XTextPageBreakElement 分页元素
- 可以导致强制分页
- XTextPageInfoElement 页码元素
- 可以显示页码或者总页数
- XTextParagraphFlagElement 段落标记元素
- 可以设置为段落的首行缩进
- 可以设置为段落的悬挂缩进
- 可以设置为段落的对齐方式(靠左、居中、靠右、两端对齐)
- 可以设置段落的行间距和段落间距
- 可以设置数字列表和项目符号列表
- XTextTableElement表格元素
- 表格标题行
- 合并拆分单元格
- 鼠标拖拽来设置表格行的高度和表格列的宽度
- 表格行设置强制分页
- 表格行设置为不可跨页(不能被分页线分割)
- XTextCheckBoxElement/XTextRadioElement 单选框/单选按钮元素
- 可以设置为选中状态
- 可以设置为不可编辑状态
- 可以设置为必填状态
- 文本多行

- 支持拖拽标尺的刻度来设置段落边距。
## 段落样式
- 支持行间距和段落间距
## 可编程DOM API接口
提供树状的DOM模型,用于表示文档中所有的内容。并提供以下DOM文档元素类型。
- XTextDocument 文档元素
- 表示文档根节点,是DOM树的操作的入口点。
- XTextContainerElement 容器元素,是一个抽象类,是所有容器元素的基类。
- 可以包含其他元素。
- XTextImageElement 图片元素
- 可以自由拖拽设置图片的大小
- 只支持JPG\PNG\BMP格式。
- XTextInputFieldElement 输入域元素
- 输入域高亮度显示
- 设置背景文本
- 内容校验,包括必填项、最大值、最小值等。
- XTextLineBreakElement 换行元素
- 文本进行软回车,但不应用段落间距的设置。
- XTextPageBreakElement 分页元素
- 可以导致强制分页
- XTextPageInfoElement 页码元素
- 可以显示页码或者总页数
- XTextParagraphFlagElement 段落标记元素
- 可以设置为段落的首行缩进
- 可以设置为段落的悬挂缩进
- 可以设置为段落的对齐方式(靠左、居中、靠右、两端对齐)
- 可以设置段落的行间距和段落间距
- 可以设置数字列表和项目符号列表
- XTextTableElement表格元素
- 表格标题行
- 合并拆分单元格
- 鼠标拖拽来设置表格行的高度和表格列的宽度
- 表格行设置强制分页
- 表格行设置为不可跨页(不能被分页线分割)
- XTextCheckBoxElement/XTextRadioElement 单选框/单选按钮元素
- 可以设置为选中状态
- 可以设置为不可编辑状态
- 可以设置为必填状态
- 文本多行

开源DCWriterLite,一个类似MS WORD的开源文书编辑器的更多相关文章

  1. 打造一个高逼格的android开源项目——小白全攻略 (转)

    转自:打造一个高逼格的android开源项目 小引子 在平时的开发过程中,我们经常会查阅很多的资料,最常参考的是 github 的开源项目.通常在项目的主页面能看到项目的简介和基本使用,并且时不时能看 ...

  2. 微软开源了一个 助力开发LLM 加持的应用的 工具包 semantic-kernel

    在首席执行官萨蒂亚·纳德拉(Satya Nadella)的支持下,微软似乎正在迅速转变为一家以人工智能为中心的公司.最近微软的众多产品线都采用GPT-4加持,从Microsoft 365等商业产品到& ...

  3. 使用maven编译dubbo,导入eclipse(其他maven开源项目编译类似)

    dubbo github下载地址:https://github.com/alibaba/dubbo 相关文档:http://dubbo.io/ 使用maven编译dubbo,导入eclipse(其他m ...

  4. [转]Infobright是一个与MySQL集成的开源数据仓库

    [文章作者:张宴 本文版本:v1.1 最后修改:2010.05.18 转载请注明原文链接:http://blog.zyan.cc/infobright/] Infobright是一个与MySQL集成的 ...

  5. NET Core写了一个轻量级的Interception框架[开源]

    NET Core写了一个轻量级的Interception框架[开源] ASP.NET Core具有一个以ServiceCollection和ServiceProvider为核心的依赖注入框架,虽然这只 ...

  6. CountBoard 是一个基于Tkinter简单的,开源的桌面日程倒计时应用

    CountBoard 是一个基于Tkinter简单的,开源的桌面日程倒计时应用. 项目地址 https://github.com/Gaoyongxian666/CountBoard 基本功能 置顶功能 ...

  7. 分享一个基于 netty 的 java 开源项目

    1.简介 中微子代理(neutrino-proxy)是一个基于 netty 的.开源的 java 内网穿透项目.遵循 MIT 许可,因此您可以对它进行复制.修改.传播并用于任何个人或商业行为. 2.项 ...

  8. 写一个类似淘宝的ios app需要用到哪些技术?

    写一个类似淘宝的ios app需要用到哪些技术? 让我想起了有人私信我,说不缺钱,做个类似知乎的东西,包括加运营,需要多少钱. 扯淡结束,正好最近看了一点这方面的东西,也许对题主来说有点帮助. 手机淘 ...

  9. Gora是一个类似Hibernate的ORM框架

    Gora是一个类似Hibernate的ORM框架,但是不只是支持关系数据库,更重要支持NoSQL之类大数据的存储. 支持NoSQL之类大数据的存储 Apache Gora是一个开源的ORM(Objec ...

  10. MS WORD 表格自动调整列宽,自动变漂亮,根据内容自动调整 .

    在MS WORD中,当有大量的表格出现时,调整每个表格的的高和宽和大小将是一件非常累的事情,拖来拖去,非常耗时间,而且当WORD文档达到300页以上时,调整反应非常的慢,每次拖拉线后,需要等待一段时间 ...

随机推荐

  1. 解决Navicat导出Excel数字为科学计数法问题

    问题分析 需求是使用Navicat导出数据到Excel中,但是,发现导出的数据中,数字长度如果超过12位,自动的按照科学计数法显示数字.我们需要全部显示输入的内容,而不能使用科学计数法,如输入的身份证 ...

  2. maven pom.xml文件中properties标签介绍

    在properties标签内可以把版本号作为变量进行声明,方便maven依赖标签用${变量名}的形式动态获取版本号.这样做的优点是当版本号发生改变时,仅仅需要更新properties标签中的变量值就行 ...

  3. fastjson jsonobject对象转为网址传参pathvalue形式并按首字母排序

    效果 代码 @Test public void test() { JSONObject jsonObject = new JSONObject(true); jsonObject.put(" ...

  4. Spring扩展接口-ApplicationContextInitializer

    .markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...

  5. 基于vis.js实现网络拓扑图等关系图谱

    vis.js是一个动态的.基于浏览器的可视化库.该库被设计为易于使用,可以处理大量动态数据,并支持对数据的操作和与数据的交互.该库由组件DataSet, Timeline, Network, Grap ...

  6. 全选和全不选demo

    1 <script> 2 3 $(function(){ 4 $("#chkAll").change(function(){ 5 6 //获取我们全选按钮的选中状态: ...

  7. http 426 Upgrade Required

    1.很久没做http接口了,都快不会了... 最近遇到一个奇葩的,调用http接口返回空,什么都没有,然后用工具测试,发现能返回消息,不过状态是500... 好奇之下就在代码里加个个取返回状态code ...

  8. 三、FFmpeg学习笔记

    ​ FFmpeg是一个开源.跨平台的多媒体处理框架,能够实现音视频的录制.转换.剪辑.编码.解码.流媒体传输.过滤与后期处理等几乎所有常见的多媒体操作.其强大之处在于几乎支持所有的音视频格式.编解码器 ...

  9. BZOJ2720 [Violet 5] 列队春游 题解

    Problem 对于一个数列 \(S\),\(S_0= \infty\),设对于 \(S_i\),\(S_{a_i}\) 是 \(S_i\) 之前第一个大于等于 \(S_i\) 的数.给定 \(S\) ...

  10. MCP Server 之旅第 7 站:助力 MCP 打破“黑盒困境”

    背景 在分布式系统中,请求链路追踪(Trace) 是诊断性能瓶颈.定位故障的核心能力.近期,阿里云函数计算的 Tracing 能力由 2.0 的 Jeager 升级为 OpenTelemetry 标准 ...