使用VB实现所见即所得功能

热诚忠信

热诚忠信

2016-02-19 13:35

下面图老师小编要向大家介绍下使用VB实现所见即所得功能,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!
一、方法概述

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

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  具体的方法是:  

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

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

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

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

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

  在模拟打印的窗体中通过使用Print、Line、Circle等方法绘制文字和图形的,还可以使用图形框、Graph.VBX、OLE等控件绘制图形、统计图表、公式、艺术字型等等。  

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

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

  二、打印机字模和显示器字模的精确匹配

  Windows的字模分为两类:打印机字模和显示器字模。各种TrueType字模(如宋体、黑体字模)都是显示与打印双功能字模。其他的非TrueType字模就只能用于显示或打印。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

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

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

  在VB中提供了两个全局对象:屏幕对象Screen和打印机对象Printer。两个对象都提供了FontCount属性和Fonts属性。FontCount属性提供了可使用字模的数量,而Fonts属性提供了可使用字模的名称。在程序中,我们可以取出Screen对象和Printer对象所共同拥有的字模,这些字模就是所有的显示与打印双功能字模。具体的程序如下:

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

  SubGetFont()
  Fori=0ToScreen.FontCount-1
  Forj=0ToPrinter.FontCount-1
  IfScreen.Fonts(i)=Printer.Fonts(j)Then
  List1.AddItem(Screen.Fonts(i))
  EndIf
  Nextj
  Nexti
  EndSub

->

展开更多 50%)
分享

猜你喜欢

使用VB实现所见即所得功能

编程语言 网络编程
使用VB实现所见即所得功能

让新手信心爆棚的8招拍出所见即所得影像

摄影 人像摄影 静物摄影
让新手信心爆棚的8招拍出所见即所得影像

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

如何拍出所见所得的景象

摄影 人像摄影 静物摄影
如何拍出所见所得的景象

用VB实现文件查找功能

编程语言 网络编程
用VB实现文件查找功能

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

所见及所得的类分析跟踪器

编程语言 网络编程
所见及所得的类分析跟踪器

在Word2024文档中使用“即点即输”功能

word
在Word2024文档中使用“即点即输”功能

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

1.13 数据库查询语言(2)

1.13 数据库查询语言(2)

VisualBasic概述

VisualBasic概述
下拉加载更多内容 ↓