社区
界面
帖子详情
打印问题->如何在不同dpi下在A4上打印实际大小(宽,高)相同的线框~~~~~
gunNrose12987055
2007-11-08 02:23:04
如何在不同dpi下在A4上打印实际大小(宽,高)相同的线框
我想固定打印格式,即不论什么打印机,dpi之类的设置是什么,最后打印结果都一样
不知道该如何实现,望指教
...全文
383
13
打赏
收藏
打印问题->如何在不同dpi下在A4上打印实际大小(宽,高)相同的线框~~~~~
如何在不同dpi下在A4上打印实际大小(宽,高)相同的线框 我想固定打印格式,即不论什么打印机,dpi之类的设置是什么,最后打印结果都一样 不知道该如何实现,望指教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yangsh3002
2008-10-14
打赏
举报
回复
1,创建一个与屏幕兼容的内存DC
2,在内存DC中画图
3,计算屏幕DC与打印DC的横向和纵向的分辨率比(9楼)
4,将内存DC,StretchBlt到打印DC中,按分辨率比缩放
sharus
2008-10-14
打赏
举报
回复
dpi就是每一个英寸上的点数,英文翻译应该是dot per inch。打印机上的dpi,比如为300dpi,就是一个英寸上有300个点。一个英寸是25.4mm.那么一个点就是25.4 / 300 mm.
所以不管打印机dpi是多少。你算出每个点的大小就ok了。
打印的时候你首先要根据A4纸张大小,算出printdc下面长宽上有多少个点。根据打印的内容计算需要输出的坐标。
显示器也有显示精度,一般dpi默认设置为96,那屏幕上的一个点的大小为25.4 /96 mm。
预览的时候就是输出内容要根据显示器的dpi来算。
我是苦力
2008-10-14
打赏
举报
回复
比如打印一英寸宽的线(别的单位类型要换成英寸的单位)。
dpi 为75的时候,那么像素要占75个像素。
dpi 为96的时候,那么像素要占96个像素。
以此类推。
所以每个不同的dpi,打印线宽都要计算。
cui2liu13
2007-11-27
打赏
举报
回复
其实显示器显示和打印机打印就是一个比例问题!你要把比例找好了就应该不会出太大的问题!
cui2liu13
2007-11-27
打赏
举报
回复
或者这样:
float scalex =(float)ptrdc->GetDeviceCaps (LOGPIXELSX) / (float)dc.GetDeviceCaps (LOGPIXELSX);
float scaley =(float)ptrdc->GetDeviceCaps (LOGPIXELSY) / (float)dc.GetDeviceCaps (LOGPIXELSY);
前面是你的打印机DC,后面是显示设备DC,然后把你在OnDraw上显示的东西横坐标乘scalex ,纵坐标乘scaley!方法比较苯,但是比较好理解,呵呵!
一条晚起的虫
2007-11-09
打赏
举报
回复
映射单位换成mm就行了
LouYongZhi
2007-11-09
打赏
举报
回复
DPI就是dot per inch,也就是每英寸的点数
1 inch = 25.4 mm
一般显示器DPI是96,打印机一般DPI比较高。
如果是600,那么你画的坐标相当于屏幕的6倍多一点。
hdqqq
2007-11-09
打赏
举报
回复
这个和你的dc的坐标映射类型有关,你可以看一下SetMapMode的说明文档.
凤矶
2007-11-08
打赏
举报
回复
可以,我是直接都放在OnPrint里的
gunNrose12987055
2007-11-08
打赏
举报
回复
顶
gunNrose12987055
2007-11-08
打赏
举报
回复
to shunruo:
不太明白写在哪个函数里面
OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo)
{
SaveDC (hprint);
SetMapMode(hprint, MM_TEXT);
。。。。
}
OnEndPrinting(CDC* pDC, CPrintInfo* pInfo)
{
RestoreDC (hprint, -1);
}
这样写吗?
gunNrose12987055
2007-11-08
打赏
举报
回复
我在描述下我的需求
我在600*600dpi下打印结果字较大,但是换到1200dpi时,自表格就很小了
但我想无乱改变什么设置,打在纸上和预览显示的总是一样大小
凤矶
2007-11-08
打赏
举报
回复
不管什么打印机
每次开始设置为
SaveDC (hprint);
SetMapMode(hprint, MM_TEXT);
结束时
RestoreDC (hprint, -1);
这个过程应该是透明的。
html+css+js基础问答
css3 1.标签语义化 顾名思义,合理的标签干合适的事情 块级(display:block):div 、p、h1~h6、hr、ul、ol、li、dl、dd、form、table、header、footer、main、nav、sector、arcitcle、pre、table、tbody、thead、th、tr、tfoot 行级(display:inline):a、span、small、strong、em、i、code、 行内块(display:inline-block):img、input 区别: 1.
使用js将HTML页面转成pdf
生成pdf文件 var downPdf = document.getElementById("renderPdf"); downPdf.crossOrigin = "Anonymous"; downPdf.onclick = function () { html2canvas( //转换id为export_content的div中的所有内容为pdf document.getElementById("export_content"
104道 CSS 面试题,助你查漏补缺
作者:Eno_Yao原文:https://segmentfault.com/a/1190000022021557CSS 面试知识点总结最近在整理 CSS 的时候发现遇到了很多面试中常见的...
好的商业模式,核心竞争优势---名片
名片 编辑词条 添加义项 同义词 收藏 分享 谒见、拜访或访问时用的小卡片 名片(2) 名片,又称卡片(粤语写作咭(kā)片),中国古代称名刺,是标示姓名及其所属组织、公司单位和联系方法的纸片。名片是新朋友互相认识、自我介绍的最快有效的方法。交换名片是商业交往的第一个标准官式动作。 快速导航 词条图册 中文名 名片 拼音 míngpìan 外文名
基于Android4.0.3的各种工具信息整理(共130个)
昨日下午,老大交给一个任务,就是对android编译出来的build/host/linux-x86/bin下面的各种可执行程序进行一个了解 于是我就花了一天的时间来搜集信息,大致有两个文件 一个是比较常用的,一个是比较齐全的,当然有部分没找到(例如test_开头的部分,大部分都是从源码里面弄出来的),也没有对其进行了解 所以有错误请谅解,由于CSDN界面比较小,可能会出现显示不全的
问题
,如果
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章