QTextEdit显示的块中图像后的文本格式
Text format after an image in a block displayed by QTextEdit
在QTextEdit对象中,我想显示一个由两部分组成的文档:标题和文本。文本以一个图像开始(一个初始的,放在左边),因此我的代码:
QTextCursor cur = this->textCursor();
// title :
[... defining the title block format and the title's text char format ...]
cur.insertBlock( title_blockformat, title_textcharformat );
cur.insertText("TITLE");
// initial + text
// [... defining the text block format and text's text char format ...]
cur.insertBlock( text_blockformat, text_textcharformat );
// [...defining the image format...]
cur.insertImage( imageformat, QTextFrameFormat::FloatLeft);
cur.insertText("SOME TEXT");
我遇到了以下问题:标题正确显示,图像也是,但文本以默认格式显示,好像行
cur.insertBlock( text_blockformat, text_textcharformat );
由于图像的关系,不知怎么被遗忘了。当我删除对cur.insertImage()的调用时,我的文本被正确显示
我检查了curt . insertimage没有添加新的块:图像和文本属于同一个块。
有什么好主意吗?
因为默认模式是,当您不重新分配自己的字符格式时,光标插入的文本将采用当前文本片段使用的字符格式。在您的示例中,它是图像的格式。
不知道为什么我的问题中的代码不起作用,但这里有一个简单的解决方案:
代替:
cur.insertText("SOME TEXT");
直接写:
cur.setCharFormat( text_textcharformat );
cur.insertText("SOME TEXT");
但是问题仍然存在:为什么当文本插入到图像之后时,我必须添加这一行?
相关文章:
- 有没有办法从 cpp 中的文本生成条形码图像?
- 在图像上覆盖文本的程序会产生无休止的字符串错误
- 生成给定点文本 c++ 的 GraphViz 图形图像
- 同一图像中的反转文本和背景颜色
- 处理一个大图像文本文件
- 使用OpenCV检测图像中垂直文本的方法
- 使用 Qt - C++将文本插入标签/图像
- 使用FreeImage向图像添加文本
- 将文本(.txt)文件与图像(.jpg)文件进行匹配
- 在 qlabel 中将图像设置为背景并在其顶部设置文本
- 如何将文本放在OpenCV C 中的图像中
- Visual C++ Load rtf 文档在丰富编辑框中包含图像和文本
- 在 dlib 图像中编写文本
- 转储DirectShow滤波器图到图像或文本文件
- 在文件夹中将图像文件名编写到文本文件C 中
- 为qlineedit设置了背景图像时,如何在qlineedit中设置文本颜色
- 在OpenCV图像中添加文本标签
- 如何在 Cv::Mat 图像中放置一些文本(变量)
- 以C++将文本写入图像
- C++:将整数的文本文件转换为BMP格式的位图图像文件