⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_35912.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:35912 发表者:shiguan_liu 发表日期:2003-04-10 12:16:22
<br>主题:打印字体控制问题
<br>内容:如何在以下代码加入打印字体控制?<BR><BR>void CTestDlg::OnPrint()<BR><BR>   {<BR><BR>   // 增加如下代码<BR><BR>   char szprinter[80];<BR><BR>   char *szDevice,*szDriver,*szOutput;<BR><BR>   HDC hdcprint; // 定义一个设备环境句柄<BR><BR><BR><BR>   //定义一个打印作业<BR><BR>   Static DOCINFO di={sizeof(DOCINFO),"printer",NULL};<BR><BR>  <BR><BR>   // 得到设备字符串存入数组szprinter中<BR><BR>   GetProfileString("windows","device",",,,",szprinter,80);<BR><BR><BR><BR>   // 将设备字符串分解<BR><BR>   if(NULL!=(szDevice=strtok(szprinter,","))&amp;&amp;<BR><BR>   NULL!=(szDriver=strtok(NULL,","))&amp;&amp;<BR><BR>   NULL!=(szOutput=strtok(NULL,",")))<BR><BR>   // 创建一个打印机设备句柄<BR><BR>   if((hdcprint=CreateDC(szDriver,szDevice,szOutput,NULL))!=0)<BR><BR>   {<BR><BR>   if(StartDoc(hdcprint,&amp;di)&gt;0) //开始执行一个打印作业<BR><BR>   {<BR><BR>StartPage(hdcprint); //打印机走纸,开始打印<BR><BR>SaveDC(hdcprint); //保存打印机设备句柄<BR><BR>// 输出一行文字<BR><BR>TextOut(hdcprint,1,1,"这是一个例子",12);<BR><BR>// 输出一条直线<BR><BR>MoveToEx(hdcprint,20,20,NULL);<BR><BR>LineTo(hdcprint,120,120);<BR><BR><BR><BR>   RestoreDC(hdcprint,-1); //恢复打印机设备句柄<BR><BR>EndPage(hdcprint); //打印机停纸,停止打印<BR><BR>EndDoc(hdcprint); //结束一个打印作业<BR><BR>MessageBox("打印完毕!","提示",MB_ICONINFORMATION);<BR><BR>}<BR><BR>   // 用API函数DeleteDC销毁一个打印机设备句柄<BR><BR>   DeleteDC(hdcprint);<BR><BR>   }<BR><BR>   else<BR><BR>  {<BR><BR>   MessageBox("没有默认打印机,或者没有安装打印机!");<BR><BR>   return;<BR><BR>  }<BR><BR>  }<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:mimibaby 回复日期:2003-04-10 14:26:57
<br>内容:用CreateFont(..........)就行了然后把创建的字体选如设备描述表<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:shiguan_liu 回复日期:2003-04-10 15:43:01
<br>内容:谢谢mimibaby,能否举例说明?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:mimibaby 回复日期:2003-04-10 17:05:19
<br>内容:// 输出一行文字<BR><BR>HFONT hFont = CreateFont(.....);创建的字体<BR>HFONT holdFont = SelectObject(hdcprint,hFont);//把创建的字体选如设备描述表<BR>TextOut(hdcprint,1,1,"这是一个例子",12);<BR>SelectObject(hdcprint,holdFont);//画完以后将该字体删掉!<BR><BR>// 输出一条直线<BR><BR>CreateFont的用法参考MSDN<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:江川 回复日期:2003-04-13 21:43:11
<br>内容:&nbsp;&nbsp;&nbsp;&nbsp;CClientDC dc(this);<BR>&nbsp;&nbsp;&nbsp;&nbsp;TEXTMETRIC tm;<BR>&nbsp;&nbsp;&nbsp;&nbsp;CFont&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fontText;<BR>&nbsp;&nbsp;&nbsp;&nbsp;CSize&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sizeText;<BR>//前两位字体宽高最后字体类型<BR>&nbsp;&nbsp;&nbsp;&nbsp;fontText.CreateFont( 14,4, 0, 0, 400, FALSE, FALSE, 0,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ANSI_CHARSET, OUT_DEFAULT_PRECIS,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DEFAULT_PITCH | FF_SWISS, "Times New Roman");<BR>&nbsp;&nbsp;&nbsp;&nbsp;CFont* pOldFont = (CFont*) dc.SelectObject(&amp;fontText);<BR>&nbsp;&nbsp;&nbsp;&nbsp;dc.GetTextMetrics(&amp;tm);&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;sizeText = dc.GetTextExtent(strtext);<BR>//前两位字体位置&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;dc.SetBkColor(RGB(0,0,0));<BR>&nbsp;&nbsp;&nbsp;&nbsp;dc.SetTextColor(RGB(255,255,0));<BR>&nbsp;&nbsp;&nbsp;&nbsp;dc.SelectObject(&amp;fontText);<BR>&nbsp;&nbsp;&nbsp;&nbsp;dc.TextOut(XPoint,YPoint,strtext);
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -