类库大魔王
类库大魔王 多年C++、Go项目经验,长期从事跨平台(Windows/macOS/iOS/Android)应用架构设计与开发。

为了舒服地写微信公众号,我写了个文章编辑器


前段时间突然心血来潮开通了一个微信公众号,虽然至今为止也才写了十几篇文章,但是用了官方文章编辑器和一票第三方文章编辑器后,我决定自己写一个。

于是我罗列了几条必需的需求:

  • 基于Markdown,写技术文够方便简单
  • 能保存/读取文档,可以随时中断/继续写作
  • 能自定义输出样式,满足我时不时想换种审美的需求
  • 能方便地输出可以保持样式地粘贴到微信公众号后台文章编辑器的格式

然后就可以动手了:

  • 用Qt写一个桌面应用,这是我最擅长的领域,其实如果技术上可行,可能一个web应用更合适。不过用Qt写了不排除后面可以通过WebAssembly打包成Web应用的可能。
  • 通过cgo调用Go写的Markdown渲染引擎,简单调研下来发现两个完成度比较高的开源项目:GoldmarkLute ,都支持通过Chroma 实现代码高亮渲染。
  • 通过Qt WebChannel 实现渲染结果预览,这种技术可以达到一种比较平滑的效果,用户体验较好。
  • 输出微信公众号后台文章编辑器可用的样式,关键的技术是将渲染结果以HTML格式放入系统剪贴板,而为了HTML文档能保持完整的样式,需要把CSS都嵌入HTML的style属性中。

总的说来,这个编辑器并没有使用高深的技术,而是几种简单技术的拼凑。关键是细节上还有不少需要仔细调整的会极大地影响到使用体验。

一些界面截图: 主窗口1 主窗口1 主窗口2 主窗口2 主窗口3 主窗口3 偏好设置 偏好设置

感觉本文不错,不妨小额鼓励我一下!
如果你有Visa、MasterCard之类的国际银行卡,也可以考虑以下选项:
如果你看不到评论框,说明Disqus被墙了。