返回首页

软件开发中大家都用什么文档编辑工具?

119 2023-12-08 06:53 admin

一、软件开发中大家都用什么文档编辑工具?

前言

大家好, 我是徐小夕, 之前和大家分享了一个在线文档编辑器PowerNice, 它可以轻松帮我们编写文档并一键导出多种格式比如html,pdf, md, png图片等, 如下:

image.png

最近为了让编辑器满足更多场景需求, 我开发了桌面端软件版本——powernice-electron, 支持macwindow, 大家感兴趣可以在文末获取.

image.png

接下来我来对powernice 技术实现和功能做一个介绍.

背景

作为一名技术工作者, 我们经常会遇到编写技术文档, 技术分享等需求, 网上也有很多现成的文档管理工具, 出于好奇心, 我拉着朋友一起实现了一个, 用来自给自足. 接下来就来介绍一下轻量级且灵活方便的文档编辑工具—— 「powerNice」.

「powerNice」 提供两种方式来编写文章/文档, 即程序员最喜欢的 markdown, 也可以使用非技术人员最容易上手的富文本编辑器.

demo演示

技术选型

实现 「powerNice」 在线文档编辑器我们采用如下核心技术栈:

  • React
  • Ant Design
  • Dva
  • For-editor
  • Braft-editor
  • Nodejs
  • 浏览器指纹识别技术

功能盘点

1.多模式编辑

多模式编辑主要是指我们可以用富文本和md编辑器来编辑我们的文章, 我们采用最熟悉的 React 来实现, 效果如下:

2. 多主题 目前支持2套主题, 浅色和深色, 主要从用户体验的角度方便用户夜间写作. 效果如下:

  1. 深色
  1. 浅色

3. 支持一键导入导出 为了提高我们的写作效率以及对文章的多路复用, 我们提供了一键导入导出文件等功能, 具体如下:

  • 导出 Markdown
  • 导出 PDF
  • 基于文章导出海报图
  • 导入 Markdown 文件
  • 下载文章 html 内容

使用截图如下:

下载的html内容预览如下:

还原度还是非常高的~ 4. 多模式预览 多模式预览主要是右侧的预览区, 我们支持手机端预览和pc端预览, 如下图:

5. 字数行数统计 字数行数统计主要是帮助作者做内容统计, 这块实现不是很难, 我们看看预览效果:

6. 文章管理 文章管理主要是管理用户编写的内容, 这里因为我们做的是线上工具, 用户识别主要采用浏览器指纹识别技术来区分用户, 用户可以轻松在编辑器文章列表中切换文章进行编辑, 效果如下:

核心技术实现 1. 导入导出多类型文件

  • 「导入md/html文件」 导入md文件我们主要利用antupload组件和FileReader API, 具体实现如下:
 {
 name: 'file',
 showUploadList: false,
  beforeUpload(file: any): any {
 const reader = new FileReader()
    reader.onload = function(e: Event) {
 const data = (e as any).target.result
 if (editor === 'richText') {
 // ...
      } else {
 // ...
      }
    }
    reader.readAsText(file)
  },
}

 
  • 「下载html」 下载html的原理也很简单, 我们拿到渲染后的html字符串, 利用html模版将其包装成完整的html, 最后再存储为File对象, 利用file-saver实现下载. 思路如下:

核心代码如下: const doc = document.querySelector('.for-markdown-preview') as HTMLElementconst html = createMDHtml(doc.innerHTML, article)file = new File([html], `${moment().format('YYYYMMDDHHmmss')}.html`, { type: 'text/html;charset=utf-8' })// 下载文件saveAs(file) 2. 基于浏览器指纹识别技术的用户识别 浏览器指纹这块知识点涉及的比较多, 笔者这里简单介绍一下canvas指纹. ❝ 「Canvas指纹」是利用系统之间, 字体渲染引擎, 抗锯齿、次像素渲染等处理方式的差异而实现的一种指纹识别技术. 我们使用canvas将同样的文字转成图片, 即便使用Canvas绘制相同的元素,但由于上述的差别得到的结果也是不同的。 ❞ 所以我们可以利用以上技术, 对不同用户浏览器进行识别, 从而区分用户(虽然存在概率事件), 实现无需登录就能保存对应内容的目的. 基本实现代码如下:

 createFingerprint = () => {
 const canvas = document.getElementById('anchor-uuid') as HTMLCanvasElement
 const context = canvas.getContext('2d') as CanvasRenderingContext2D
  context.font = '18pt Arial'
  context.textBaseline = 'top'
  context.fillText('hello, user.', 2, 2)
 const fingerprint = canvas.toDataURL('image/jpeg')

 // hash
 const secret = 'nice'
 const hash = crypto.createHmac('sha256', secret)
    .update(fingerprint)
    .digest('hex')

 return hash
}

大家也可以参考此方法来设计自己的指纹识别方案. 在线体验: 传送门 最后 目前笔者也在持续更新「H5」编辑器 H5-Dooring.

觉得有用 ?喜欢就收藏,顺便点个「赞」吧,你的支持是我最大的鼓励!持续分享H5游戏, webpack,node,gulp,css3,javascript,nodeJS,canvas数据可视化等前端知识和实战.

二、烧烤都用什么工具?

烧烤的工具有烤炉、木炭、铝箔纸、烤夹子、调料等。

1、烤炉

烤炉是以形成热空气来烘烤烹调食品的一种装置,一般为封闭或半封闭结构。烤炉又称烘炉、烤箱、焗炉,以开放形式用热空气加热的则称为烧烤。烤炉也可以用来泛指以热气体进行高温处理的装置。

2、木炭

烧烤要用碳来烤,市面上的碳有很多种,可以考虑用木炭,比较卫生干净些,烤出来也好吃。

3、铝箔纸

铝箔纸是指由铝箔衬纸与铝箔裱糊粘合而成的纸。质软容易变型,如纸一样,而且变形后不反弹。可以定性,保证遮光,不会掉落,不透光,无污染,价钱便宜.供高级卷烟、糖果等食品防潮和装饰包装用。

4、烤夹子

要准备好烧烤的夹子,用来夹木炭进去,拨木炭的,一般市场都有的卖的,可以跟烤炉一起买。

5、调料。

烧烤最重要的就是调料了,一般有的调料必备的是油盐孜然烧烤酱,叉烧汁,芝麻、蒜蓉、酱油等等。

三、雕刻墓碑都用什么工具?

如果您的量大,建议您购置一台墓碑雕刻机,可以24小时不停歇的为您生产,价格在4-7万之间!

四、贴壁布都用什么工具?

和墙纸工具差不多 但是要有阴角和阳角压轮 最重要的还有火枪 但是火枪的掌握得 得当 因为墙布相对墙纸要硬些 火枪一般在处理包边的时候用

五、炸串都用什么工具?

竹签、碗、盘子、平底锅。

炸串的做法,首先准备材料:里脊肉:200g、鸡蛋:2个、面包糠:一碗、生抽:少许、料酒:少许、姜末:少许、胡椒粉:少许、面粉:适量、生粉:适量。

1、里脊肉洗净,然后用生姜,姜末,胡椒粉腌制一会

2、腌过的肉用竹签串起来,手部留一定余地,然后撒上用面粉生粉各半的混合粉

3、鸡蛋打到碗里,然后肉串在碗里裹上一层鸡蛋液

4、面包糠放到碗里,然后肉串再裹上一层面包糠

5、起锅倒入适量的油烧热,然后肉串下锅炸

6、炸至金黄色即可。

六、联轴器找正都用什么工具?

联轴器里面一般都有减震圈或减震垫

电机轴的同心度在电机出厂前就已校核

只有在安装过程中若同心度不对则会出现轴偏心的情况,调整电机位置并用千分表校核可防止轴的偏心

若使用一段时间后中发现联轴器震动较大且有偏心,可检查联轴器内的减震圈/垫是否已失效,是的话则需要及时更换。

七、汽车抛光都用什么工具?

抛光剂主要分为浅色抛光剂和深色抛光剂,顾名思义也就是深色车用深色抛光剂,浅色车用浅色抛光剂。

抛光剂的另一作用,是作为打蜡前的强力清洗剂或叫“去污剂”。

给爱车“洗完脸”后,就要上一层还原剂,也叫“密封剂”,它的作用是还原车漆本来的面目。

  首先,用去污力强的漆面清洗剂清洗整车,避免颗粒灰尘在研磨中造成新划痕;其次,对于涂面有粗粒、细微砂纸痕、流痕等缺陷,在抛光前先用600#至1000#水砂纸蘸水包于小橡胶衬块内,对其轻轻打磨至平整,注意不能磨穿漆层;再采用机用研磨机加上粗研磨膏,对水砂纸的痕迹进行粗磨,加研磨膏进行抛光细研磨;采用机械抛光机,加上镜面处理剂抛去粗研磨膏留下的痕印,达到漆膜镜面抛光的效果;研磨抛光结束后,擦净研磨抛光膏,立即用棉纱蘸上光油蜡把抛光部位全部擦一遍,再用干棉纱擦净多余的上光蜡,使漆面光亮似镜、艳丽夺目。

不过 抛光不宜多做,毕竟不像人的皮肤可以再生,车漆不可能再生,本来就不厚的车漆层,被一次两次打磨后,会变得越来越薄,自我保护能力也越来越差,最终导致不可逆转的老化。

因此,除非万不得已,抛光尽量不做或少做,并且经过一次抛光后,更加需要周到细致的保养。

至于为什么要用园垫子高速转呢?是因为转速过底的话抛的漆面会不均匀,从而影响漆面效果.转速太高或者太底都不可以.

八、学化妆都用什么工具?

、眉笔。先学化妆的时候不要急,一步一步慢慢来,首先就是要学会画眉毛,既然要画眉毛,那么眉笔肯定必不可少,选择功能强大的,至于会不会,以后慢慢学。

2、眼线笔和眼影。画完眼线之后用小号眼线刷沾上眼影粉来补眼线尾和睫毛根部,让眼线看起来更完美。浅橘色、香槟色、珠光白色的眼影可以遮盖黑眼圈的颜色,起到中和的作用。

3、睫毛刷。睫毛刷也是需要准备,长睫毛会让眼睛更有神,感觉会更好。

4、口红。面色红润用什么来体现,就是口红,当嘴唇苍白的时候,用口红就是一件比较重要的事情,当然,在所有化妆品里面,口红是最常见,也很好用。

5、粉底。最后就是粉底,先学会打粉,让自己的脸变白。俗话说,一白遮百丑,所以先买个粉底试试水,将自己脸上打匀,底妆白一点自然很好。

九、大家装车都用什么工具?

装车有几个关键工具:紧中轴的,紧飞轮的,砸太阳花的,截前叉上管的,截链器,线管钳,这种工具不常用,个人不建议购买(截链器除外)。

其他的就是各种型号的六角,扳手之类。

装车还需要固体和液体润滑油涂抹在关键位置。

十、跑暗线都用什么工具?

跑暗线通常会使用一些工具,比如常见的有:

1. Nmap:用于端口扫描和网络探测。

2. Metasploit:用于漏洞扫描和漏洞利用。

3. Aircrack-ng:用于无线网络破解和攻击。

4. Burp Suite:用于Web应用程序渗透测试和攻击。

5. Wireshark:用于捕获和分析网络流量。

6. Hydra:用于暴力破解密码。

7. John the Ripper:又是用于暴力破解密码。

8. Ettercap:用于中间人攻击。

9. Cain and Abel:用于网络嗅探和密码破解。

10. THC-Hydra:用于暴力破解网络服务的密码。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片