Qt文本编辑器在图片上

时间:2012-03-10 11:57:17

标签: text editor wysiwyg qtextedit qgraphicsscene

我还没有找到确切的问题。

我有一张图片,为了示例,它可能是空白的,或者包含我想要添加花哨字幕的内容。我想在图片的顶部添加文本编辑工具(类似于Photoshop)。

我正在考虑子类化QGraphicsScene并在按下文本放置按钮时在场景上放置子类QTextEdit对象。然后,当您单击此对象时,除了编辑文本外,还可以使用其他文本编辑工具 - 因此您可以将文本部分设置为粗体,斜体,修改颜色,大小等。然后您就可以更改对象的位置 - 我认为默认情况下可以在QGraphicsScene中使用。对于背景QBrush,会有背景图片。

这是一个合理的解决方案吗?

也许有任何现成的例子,但我还没有找到它们。

1 个答案:

答案 0 :(得分:1)

我的解决方案

文字项目 对于文本项,我使用QGraphicsScene和子类QGraphicsTextItem。对于背景图片,我使用了带有QGraphicsRectItem的{​​{1}}和使用QBrush方法的加载图片。

编辑此子类QGraphicsTextItem中所选文本的部分内容: QImage使用QTextCharFormatQGraphicsTextItem应用于我的子类QGraphicsTextItem::textCursor().mergeCharFormat(...)。这样我就可以在选择中更改格式,例如粗体,斜体等。

更多东西: 为了平移和缩放场景,我使用了Vpicaver的优秀指南,其中包含来自http://www.qtcentre.org/wiki/index.php?title=QGraphicsView:_Smooth_Panning_and_Zooming的源代码

相关问题