Qt编写数学公式编辑器用什么Qt控件比较好做?

Li7Z2z 2019-01-02 12:08:49
最近要用Qt做一个公式编辑器软件,像MathType、AxMath公式编辑器那样,于是网上查了很多资料没有找到用Qt写的公式编辑器相关资料,不知道Qt中用什么控件做公式编辑器比较合适?主要实现公式的编辑、选择、复制、剪切、粘贴功能,目前我想尝试的方案如下:
1.在QTextEdit中嵌套QTextEdit来实现
2.使用QGraphicsView+QGraphicsScene+QGraphicsItem来实现
具体怎么实现我还没想好,我想问一下以上两个方案可行不?可行的话哪个比较好做,能告诉我具体怎么实现吗?或者不可行的话用什么其他的方案比较好做?不考虑WebEngine来实现,因为据说是效率不高。
下面是MathType软件编辑区域界面

上面一共有4个编辑框,这样的复杂编辑框怎么添加呢?
...全文
5266 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Li7Z2z 2019-02-19
  • 打赏
  • 举报
回复
引用 4 楼 liuyinggui163 的回复:
可以参考这里的东西https://forum.qt.io/topic/38827/formula-editor 完全不用自己重复造轮子。

首先非常感谢你发给我帖子
不过这个控件我用过,它只是把MathML文件解析然后显示,而且显示在widget控件上,不能编辑。
你有什么思路把这个控件显示在编辑框上,把数字部分改成可编辑的那种?
求大神指指路、先谢谢了
Li7Z2z 2019-02-19
  • 打赏
  • 举报
回复
引用 6 楼 liuyinggui163 的回复:
这方面的资料有很多,而且很多都是用qt写的。
如TeXstudio - A LaTeX Editor https://sourceforge.net/p/texstudio/code/HEAD/tree/trunk/
也可参考http://helm.cs.unibo.it/mml-widget/ GtkMathView
都可以下载源码。
我也没实际做过这方面,希望以上能给你带来启发。


还是感谢你推荐的连接,不够都是通过解析在控件上画出来的,不像Word的插入公式一样方便编辑
我再研究研究一下吧
kerwin liu 2019-02-19
  • 打赏
  • 举报
回复
这方面的资料有很多,而且很多都是用qt写的。
如TeXstudio - A LaTeX Editor https://sourceforge.net/p/texstudio/code/HEAD/tree/trunk/
也可参考http://helm.cs.unibo.it/mml-widget/ GtkMathView
都可以下载源码。
我也没实际做过这方面,希望以上能给你带来启发。
Li7Z2z 2019-02-18
  • 打赏
  • 举报
回复
引用 1 楼 彩阳 的回复:
看看能不能写一个LeTex编辑器。

怎么写呀?
能指点思路吗?
Li7Z2z 2019-02-18
  • 打赏
  • 举报
回复
引用 1 楼 彩阳 的回复:
看看能不能写一个LeTex编辑器。

怎么写呀?
能指点思路吗?
kerwin liu 2019-02-18
  • 打赏
  • 举报
回复
可以参考这里的东西https://forum.qt.io/topic/38827/formula-editor 完全不用自己重复造轮子。
彩阳 2019-01-17
  • 打赏
  • 举报
回复
看看能不能写一个LeTex编辑器。
为了使更多的Qt初学者能尽快入门Qt,也为了QtQt Creator的快速普及,我们花费大量精力写出了这一系列教程。虽然教程的知识可能很浅显,虽然教程的语言可能不规范,但是它却被数十万网友所认可。我们会将这一系列教程一直写下去,它将涉及Qt的方方面面 一、Qt Creator的安装和hello world程序的编写 二、Qt Creator编写多窗口程序 三、Qt Creator登录对话框 四、Qt Creator添加菜单图标 五、Qt Creator布局管理器的使用 六、Qt Creator实现文本编辑 七、Qt Creator实现文本查找 八、Qt Creator实现状态栏显示 九、Qt Creator中鼠标键盘事件的处理实现自定义鼠标指针 十、Qt Creator中实现定时器和产生随机数 十一、Qt 2D绘图(一)绘制简单图形 十二、Qt 2D绘图(二)渐变填充 十三、Qt 2D绘图(三)绘制文字 十四、Qt 2D绘图(四)绘制路径 十五、Qt 2D绘图(五)显示图片 十六、Qt 2D绘图(六)坐标系统 十七、Qt 2D绘图(七)Qt坐标系统深入 十八、Qt 2D绘图(八)涂鸦板 十九、Qt 2D绘图(九)双缓冲绘图简介 二十、Qt 2D绘图(十)图形视图框架简介 二十一、Qt数据库(一)简介 二十二、Qt数据库(二)添加MySQL数据库驱动插件 二十三、Qt数据库(三)利用QSqlQuery类执行SQL语句(一) 二十四、Qt数据库(四)利用QSqlQuery类执行SQL语句(二) 二十五、Qt数据库(五)QSqlQueryModel 二十六、Qt数据库(六)QSqlTableModel 二十七、Qt数据库(七)QSqlRelationalTableModel 二十八、Qt数据库(八)XML(一) 二十九、Qt数据库(九)XML(二) 三十、Qt数据库(十)XML(三) 三十一、Qt 4.7.0及Qt Creator 2.0 beta版安装全程图解 三十二、第一个Qt Quick程序(QML程序) 三十三、体验QML演示程序 三十四、Qt Quick Designer介绍 三十五、QML组件 三十六、QML项目之Image和BorderImage 三十七、Flipable、Flickable和状态与动画 三十八、QML视图 三十九、QtDeclarative模块 四十、使用Nokia Qt SDK开发Symbian和Maemo终端软件 四十一、Qt网络(一)简介 四十二、Qt网络(二)HTTP编程 四十三、Qt网络(三)FTP(一) 四十四、Qt网络(四)FTP(二) 四十五、Qt网络(五)获取本机网络信息 四十六、Qt网络(六)UDP 四十七、Qt网络(七)TCP(一) 四十八、Qt网络(八)TCP(二)

16,816

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧