QT做图片的打印预览,预览效果显示模糊问题

abxialiang 2012-05-21 10:22:27
代码如下

void CObjControl::Ctl_PrintPreview()//打印预览按钮入口
{
QString ImgPath = GetImgPath();//图片路径
if ( !ImgPath.isEmpty())
{
QPrinter printer(QPrinter::HighResolution);
QPrintPreviewDialog preview(&printer,this, Qt::WindowMinMaxButtonsHint);
connect(&preview, SIGNAL(paintRequested(QPrinter *)),this,SLOT(printPreview(QPrinter *)));//printPreview为SLOT函数
preview.exec();
}
}

bool CObjControl::printPreview( QPrinter * printer )
{
QString ImgPath = GetImgPath();//图片路径
if ( !ImgPath.isEmpty())
{
return _PrintTiffImage(ImgPath, printer);//_PrintTiffImage为把图片绘制到printer的方法
}
return false;
}


//上面的_PrintTiffImage是没有问题的,因为我的打印代码(不是打印预览)也是也复用了这个方法,打印效果正常,代码如下:

void CObjControl::Ctl_PrintFax()//打印按钮入口
{
QString ImgPath = GetImgPath();//图片路径
QPrinter printer;
QPrintDialog printDialog(&printer,this);
if (printDialog.exec())
{
_PrintTiffImage(ImgPath, &printer);//_PrintTiffImage为把图片绘制到printer的方法
}
}


所以现在的问题为什么打印预览的效果会模糊,怎么设置?我感觉跟如下代码中的SmoothTransformation有类似的原理.但我在帮助文档与网络上找了好多也没有找到答案.

SrcPixmap.scaled(m_ImgViewSize.width(),m_ImgViewSize.height(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation);

...全文
1073 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
shgaol 2013-09-23
  • 打赏
  • 举报
回复 1
这个问题,我终于解决了,是图片缩放导至分辨率下降的问题,具体的原因我没有找到,因为项目比较急,没时间去找,我的处理方法是,先把图片放到,再来根据打印的纸张进行缩放,这样的话,就可以解决,因为在调整打印区域大小时,导至的分辨率失直的问题.
风泥 2013-07-25
  • 打赏
  • 举报
回复
牛人何在呀?不在再沉了,好不容易坟到一个
风泥 2013-07-25
  • 打赏
  • 举报
回复
一起顶一下,我也碰到这样的问题了,没解决
abxialiang 2012-05-21
  • 打赏
  • 举报
回复
显示效果如果下图,很模糊.

Vim 通常被称为“程序员的编辑器”,是一种老式的文本编辑器,主要涉及效率,灵活性和定制性。如果您是 Vim 的爱好者,并且当前正在寻找更适合编程方面的笔记应用程序,那么您应该考虑使用 VNote。 VNote 是一个受 Vim 启发的开源笔记记录实用程序,还具有 Markdown 编辑功能。当然,您可以像具有便笺管理功能的可高度配置的 Markdown 编辑器一样轻松地查看它,它不会让人失望。 开源免费 Markdown 笔记工具 VNote 中文版开源免费 Markdown 笔记工具 VNote 中文版 开源和自由 遵从 MIT 开源协议 由 Qt 和 C++ 提供强劲性能 支持主流操作系 统Linux,Windows,和 macOS 直观的笔记管理 只有纯文本,不依赖数据库 独立的笔记本 ,无限层级的文件夹 ,开放的笔记 支持标签和附件 浏览和编辑外部文件 数据自主掌控 所有文件都在本地存储 一个笔记本对应一个目录 自由选择第三方同步服务,实现多端无缝工作 专注 没有双边实时预览 通过阅读和编辑模式以专注于笔记 舒适的 Markdown 体验 最小化 Markdown 阅读和书写的鸿沟 语法高亮和原地预览 高效的图片管理 交互式的大纲 UML 图表,流程图和数学公式 高度可定制 主题和样式 快捷键和软件行为 程序员为程序员优化打造 Vim 模式和 Vim 式导航 编辑器行号 多标签页 窗口分割 模糊查找和跳转 贴心顺手的快捷键 VNote 无疑是一个非常有趣的应用程序,如果有机会,它可能会证明是大多数 Vim 程序员正在寻找的记笔记应用程序。有关该项目的更多信息以及详细的文档部分,请参阅应用程序的官方 GitHub 存储库。

16,203

社区成员

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

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