通行证: 用户 密码
域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏
热门:qq挂机,asp,php,jsp,xml
,sql,.net,编程 程序 网页图象
首页>网络编程>其他相关>正文 中国黑客群攻击美政府网站 拿到部   微软计划开放office文件格式 消除   腾讯联合八部门严厉打击挂机网站   神六载人飞行圆满成功   美国会要求nasa彻底完成空间站建   google中国研究院有望落户清华   深度分析:论雅虎中国的夭折和阿   神六可能于10月13日上午11点发射   盖茨继续当全美首富   adobe ceo痛斥微软 称其管理层从   
热 点 排 行
dll文件下载
qq挂机的n种快速方法
长白山天池怪兽再现 一分钟
腾讯qq调整升级条件 不再诱
ape歌曲的播放、转换和刻录
新开放qq免费挂级网站
qq挂级程序,qq免费挂机源程
刘亦菲 变性人、堕胎,自称
photoshop通道抠图:给秀发
免费把qq炫铃设为本机qq的
用通通通作代理在局域网上
用6位qq注意啦,免费领取6位
超级女声总决赛 现场实况(
用nero制作win98多功能启动
亲身体验!让桌面不再粗糙
推 荐 新 闻
中国黑客群攻击美政府网站
bittorrent被好莱坞招安盗
网站建设中,关键词选择技
神六载人飞行圆满成功
国庆长假上网慎防“移动杀
连环起诉google 传统媒体欲
最强秘籍 ie7最新使用技巧
神六完成总装可接航天器 外
adobe ceo痛斥微软 称其管
微软急调张亚勤回中国 千里
微软宣布重大重组方案 将划
腾讯qq 2005 beta3火热发布
腾讯扩张路线图曝光 陈天桥
腾讯拍拍网正式吹响进军c2
第五届“西湖论剑”文字实
相 关 新 闻
首页>网络编程>其他相关>正文

vb中实现“所见即所得”功能


http://www.iyit.net  日期:2005-11-24 17:47:51  来源:易特网络技术  点击:
windows程序大多数具有“所见即所得”(wysiwyg,what you see is what you get)的功能。“所见即所得”是指软件打印输出效果和屏幕显示效果完全一致。“所见即所得”是windows程序的一个主要优点之一。 

本文将介绍如何使用visual basic(以下简称vb)编写具有“所见即所得”功能的windows程序。 

一、方法概述 
为了在屏幕上模拟打印效果,我们使用vb的一个窗体来模拟一张打印纸。在vb中,每一个窗体都有一个printform方法。使用printform方法可以把一个窗体的内容完全一样地通过打印机打印出来。由于printform方法在打印窗体内容的时候,对于窗体内的文字和图形都是同样地打印。所以通过简单的编程,使用printform方法可以非常方便地实现图文混合打印。 

①确定用户可以使用的显示与打印双功能字模 

“所见即所得”程序中用户可以使用的字模必须是同时支持windows的显示设备和打印设备的双功能字模。只有这些字模才可以在屏幕和打印机上产生一样的效果。因此,程序必须首先获得这些显示与打印双功能字模的名称。 

②在屏幕上设置“纸张”窗体的大小 

通过读取windows打印管理器纸张尺寸的设置,在vb里建立一个与打印纸具有同样尺寸比例关系的窗体,作为屏幕上模拟打印效果的“纸张”,让用户在屏幕上就可以看到文字和图形在打印纸上的位置分布。 

③用户在屏幕“纸张”上模拟打印效果 

在模拟打印的窗体中通过使用print、line、circle等方法绘制文字和图形的,还可以使用图形框、graph.vbx、ole等控件绘制图形、统计图表、公式、艺术字型等。 

④将屏幕“纸张”的内容输出到打印机 

使用窗体的printform方法把第③步所绘制的文字和图形输出到打印机,得到和屏幕显示一模一样的打印拷贝,实现“所见即所得”。 

二、打印机字模和显示器字模的精确匹配 
windows的字模分为两类:打印机字模和显示器字模。各种truetype字模(如宋体、黑体字模)都是显示与打印双功能字模。其他的非truetype字模就只能用于显示或打印。 

如果在模拟打印窗体的文字输出中使用了只能用于显示的字模,那么当printform方法执行的时候,windows就只能在打印字模中查找一个尽量和这个显示字模字型匹配的字模来进行打印。这样将导致得到的打印拷贝与屏幕显示不一致。 

为了使程序获得“所见即所得”的能力,必须在窗体输出中使用显示与打印双功能字模。因此,程序获得“所见即所得”能力的一个关键是:确保在屏幕输出中只使用显示与打印双功能字模。 

在vb中提供了两个全局对象:屏幕对象screen和打印机对象printer。两个对象都提供了fontcount属性和fonts属性。fontcount属性提供了可使用字模的数量,而fonts属性提供了可使用字模的名称。在程序中,我们可以取出screen对象和printer对象所共同拥有的字模,这些字模就是所有的显示与打印双功能字模。 

具体的程序如下: 

首先设置一个列表框,取名list1,然后调用下面的getfont函数,在list1中就存放所有显示与打印双功能字模的名称。 

sub getfont() 
 for i=0 to screen.fontcount-1 
   for j=0 to printer.fontcount-1 
      if screen.fonts(i)=printer.fonts(j) then 
         list1.add1tem (sereen.fonts(i)) 
      end if 
   next j 
 next i 
end sub  

本新闻共2页,当前在第1页  1  2  


上一篇:java基础之关键字
下一篇:如何在网页中调试javascript

[发送给好友] [打印本页] [关闭窗口] [返回顶部] 转载请注明来源:http://www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 投稿作者: 易特网络技术
信息来源: 易特网络技术 录入时间: 2005-11-24 17:47:51
浏览次数: 投稿信箱: shtghy@163.com
  友情链接
设置首页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights ?2004-2005 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息