CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

打印预览时,用DrawString没有输出文字,怪了

楼主hjiaming(无边无际无求)2006-03-02 14:37:27 在 .NET技术 / C# 提问

见鬼了,在有些情况下,使用DrawString输出时,在打印预览的画布里显示是空的,但打印出来,该页却是有东西的  
  StringFormat   sfBody   =   new   StringFormat(StringFormatFlags.LineLimit);  
  g.DrawString(m_Body.Substring(nCharIndex),   ftBody,   sbBrush,  
                                  new   RectangleF(pageLeft,   pageTop,   pageRight   -   pageLeft,   pageBottom   -   pageTop),   sfBody); 问题点数:88、回复次数:8Top

1 楼hjiaming(无边无际无求)回复于 2006-03-02 15:06:12 得分 0

没人碰到过吗?我发现只有在m_Body这个字符串长度超过一定程序之后才会出现该问题Top

2 楼wxdl1981(沉默之狼)回复于 2006-03-02 15:36:11 得分 0

关键还要看你的代码放在什么地方了.  
   
  StringFormat   sfBody   =   new   StringFormat(StringFormatFlags.LineLimit);  
  g.DrawString(m_Body.Substring(nCharIndex),   ftBody,   sbBrush,  
                                  new   RectangleF(pageLeft,   pageTop,   pageRight   -   pageLeft,   pageBottom   -   pageTop),   sfBody);  
   
  放在待打印窗体的Paint事件中, 才能在程序上看到.  
  否则,只能打印才能看到Top

3 楼diandian82(点点(nothing))回复于 2006-03-02 16:04:08 得分 0

必须要考虑到重画窗体的情况!Top

4 楼hjiaming(无边无际无求)回复于 2006-03-02 16:11:04 得分 0

上面的代码在如下函数中  
  public   void   Draw(object   sender,   System.Drawing.Printing.PrintPageEventArgs   e)  
  然后由打印事件委托调用  
  printDocument.PrintPage   +=   new   System.Drawing.Printing.PrintPageEventHandler(Draw);  
   
  Top

5 楼hjiaming(无边无际无求)回复于 2006-03-02 16:14:44 得分 0

奇怪的地方就在于大部分情况下DrawString输出都是正常的,只有m_Body这个字符串长度超过一定程序之后才会出现,出现空白页时,其中使用DrawLine的输出均正常,就是DrawString输出的无显示。。。。怪  
  Top

6 楼hjiaming(无边无际无求)回复于 2006-03-02 20:07:36 得分 0

顶上,期待解决Top

7 楼raulredondo()回复于 2006-03-03 16:28:34 得分 0

StringFormat   sfBody   =   new   StringFormat(StringFormatFlags.LineLimit);  
  是这个搞怪吧,去掉看看Top

8 楼hjiaming(无边无际无求)回复于 2006-03-03 20:47:47 得分 0

StringFormatFlags.LineLimit只是保证按行进行布局,去掉后问题依然如故Top

相关问题

  • 输出文字字体的问题
  • 一个输出文字的问题!!急!!
  • 如何向CBitmap中输出文字?
  • 文字输出问题(Canvas->TextOut)
  • 位图打印预览正常,打印机输出确是黑块,why?
  • 怎样实现数据报表逐条记录输出,,到报表预览
  • 怎样去掉水晶报表预览时的提示文字?
  • 我想做个预览打印,如何让picturebox显示文字?
  • ************用WinApi Textout输出文字,如何控制文字的颜色和背景色!*************
  • 如何在图片上写文字并且输出jpg (文字在图片中)

关键词

  • 打印
  • sfbody
  • drawstring
  • stringformat
  • pageleft
  • pagetop
  • linelimit
  • stringformatflags
  • 输出
  • 程序

得分解答快速导航

  • 帖主:hjiaming

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo