还是写点东西吧

原创 2007年09月23日 01:33:00

本来今天做的事不是很多的,但想了想还是写一点点东西吧

今天做什么了,脑子真乱现在.啊   好象下午过后没有作实质性开发的东西,上午只是认真的作好了要交上去的文档,弄的我都恶心了,现在做的只是让人反感,其实困难的还在后面,就是现在梦作的的那部分,有很多的JAVA语句还没有整太明白 ,所以 为了赶进度,真的要.......呵呵  希望我的电脑能给我最大的支持,呵呵,这样我才能...哈哈

今天读了一端关于打印机的代码,虽说还不能自己写,也不是了解的很透彻  但还是希望能和来这里的人共享这段代码吧,这段代码是网上一兄弟提供的  不是我写的啊  就一起来学一下吧,算是关于打印机比较标准的了

 

/*
 * Main.java
 *
 * Created on 2007年9月22日, 上午10:34
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package javaapplication4;

  /**  
    *   @version   1.00   1999-09-11  
    *   @author   Cay   Horstmann  
    */  
   
  import   java.awt.*;  
  import   java.awt.event.*;  
  import   java.awt.font.*;  
  import   java.awt.geom.*;  
  import   java.awt.print.*;  
  import   java.util.*;  
  import   javax.swing.*;  
   
  public   class   Main  
  {     public   static   void   main(String[]   args)  
        {     JFrame   frame   =   new   PrintTestFrame();  
              frame.show();  
        }  
  }  
   
  class   PrintTestFrame   extends   JFrame  
        implements   ActionListener  
  {     public   PrintTestFrame()  
        {     setTitle("PrintTest");  
              setSize(300,   300);  
              addWindowListener(new   WindowAdapter()  
                    {     public   void   windowClosing(WindowEvent   e)  
                          {     System.exit(0);  
                          }  
                    }   );  
   
              Container   contentPane   =   getContentPane();  
              canvas   =   new   PrintPanel();  
              contentPane.add(canvas,   "Center");  
   
              JPanel   buttonPanel   =   new   JPanel();  
              printButton   =   new   JButton("Print");  
              buttonPanel.add(printButton);  
              printButton.addActionListener(this);  
   
              pageSetupButton   =   new   JButton("Page   setup");  
              buttonPanel.add(pageSetupButton);  
              pageSetupButton.addActionListener(this);  
   
              contentPane.add(buttonPanel,   "North");  
        }  
   
        public   void   actionPerformed(ActionEvent   event)  
        {     Object   source   =   event.getSource();  
              if   (source   ==   printButton)  
              {     PrinterJob   printJob   =   PrinterJob.getPrinterJob();  
                    if   (pageFormat   ==   null)  
                          pageFormat   =   printJob.defaultPage();  
                    printJob.setPrintable(canvas,   pageFormat);  
                    if   (printJob.printDialog())  
                    {     try  
                          {     printJob.print();  
                          }  
                          catch   (PrinterException   exception)  
                          {     JOptionPane.showMessageDialog(this,   exception);  
                          }  
                    }  
              }  
              else   if   (source   ==   pageSetupButton)  
              {     PrinterJob   printJob   =   PrinterJob.getPrinterJob();  
                    if   (pageFormat   ==   null)  
                          pageFormat   =   printJob.defaultPage();  
                    pageFormat   =   printJob.pageDialog(pageFormat);  
              }  
        }  
   
        private   JButton   printButton;  
        private   JButton   pageSetupButton;  
   
        private   PrintPanel   canvas;  
        private   PageFormat   pageFormat;  
  }  
   
  class   PrintPanel   extends   JPanel  
        implements   Printable  
  {     public   void   paintComponent(Graphics   g)  
        {     super.paintComponent(g);  
              Graphics2D   g2   =   (Graphics2D)g;  
              drawPage(g2);  
        }  
   
        public   int   print(Graphics   g,   PageFormat   pf,   int   page)  
              throws   PrinterException  
        {     if   (page   >=   1)   return   Printable.NO_SUCH_PAGE;  
              Graphics2D   g2   =   (Graphics2D)g;  
              g2.setPaint(Color.black);  
              g2.translate(pf.getImageableX(),   pf.getImageableY());  
              g2.draw(new   Rectangle2D.Double(0,   0,  
                    pf.getImageableWidth(),   pf.getImageableHeight()));  
   
              drawPage(g2);  
              return   Printable.PAGE_EXISTS;  
        }  
   
        public   void   drawPage(Graphics2D   g2)  
        {     FontRenderContext   context   =   g2.getFontRenderContext();  
              Font   f   =   new   Font("Serif",   Font.PLAIN,   72);  
              GeneralPath   clipShape   =   new   GeneralPath();  
   
              TextLayout   layout   =   new   TextLayout("Hello",   f,   context);  
              AffineTransform   transform  
                    =   AffineTransform.getTranslateInstance(0,   72);  
              Shape   outline   =   layout.getOutline(transform);  
              clipShape.append(outline,   false);  
   
              layout   =   new   TextLayout("World",   f,   context);  
              transform  
                    =   AffineTransform.getTranslateInstance(0,   144);  
              outline   =   layout.getOutline(transform);  
              clipShape.append(outline,   false);  
   
              g2.draw(clipShape);  
              g2.clip(clipShape);  
   
              final   int   NLINES   =50;  
              Point2D   p   =   new   Point2D.Double(0,   0);  
              for   (int   i   =   0;   i   <   NLINES;   i++)  
              {     double   x   =   (2   *   getWidth()   *   i)   /   NLINES;  
                    double   y   =   (2   *   getHeight()   *   (NLINES   -   1   -   i))  
                          /   NLINES;  
                    Point2D   q   =   new   Point2D.Double(x,   y);  
                    g2.draw(new   Line2D.Double(p,   q));  
              }  
        }  
  } 

 

我只改动了一小点点,"版权"是网上那哥们的啊   哈哈  共同学一下吧  呵呵

加油!

还是写点东西吧!

刚刚在amazon工作4个月,做android相关的东西。在差不多适应工作了以后,感觉遇到了很多有趣的问题和想要学习的方向,准备在博客里记录下来。...
  • zhx1989126
  • zhx1989126
  • 2014年12月24日 13:49
  • 135

今日开始在网上写点东西

今天实在太无聊了,其实我想做好多事,学好多东西,但没有一点头绪,在网上逛来逛去,于是就有了写点东西的冲动。。。。。...
  • ymzprofessional
  • ymzprofessional
  • 2006年10月17日 16:45
  • 310

开始坚持每天写点东西

在城市的汹涌的长河中,每天随波逐流,惶惶不可终日。走在人潮中形同漂荡的木头,掌控不了方向,看不到终点,回不到起点。想是快忘记去思考,思考一些不曾的在意的问题,或是一些一直回避的问题。逐渐丧失思考的人,...
  • liuyong1351
  • liuyong1351
  • 2015年05月02日 21:50
  • 203

写点东西吧

今天开通博客了。
  • godismydaughter
  • godismydaughter
  • 2010年04月13日 20:54
  • 172

写点东西吧~~~~~~~~~~~~

我从92年就开始在一家北方小城市地方日报工作。今年2005年,我33岁了。想一想这工作这些年,真是虚度年华了。想当年,我会用DEBUG,会用DBASE3,会用TURBO PASCAL。在杂志也发表过北...
  • lindamis
  • lindamis
  • 2005年01月17日 00:48
  • 1021

还是写点吧

       注册成为CSDN会员也不知道是多久的事情了,在这里得到了很多,却没有贡献出什么。今天偶然进入管理页面,看到了自己的博客,心想还是写点吧。 当然写自己的博客不算为别人贡献什么。      ...
  • miniDragon
  • miniDragon
  • 2007年05月10日 13:25
  • 442

还是写点什么吧

去年某天我把CSDN Blog里的所有文章都删了,找来找去,找不到中意的技术Blog的落脚点,还是继续在这里写些东西。不保证更新频率。 ps: 貌似发表blog的页面不支持FireFox,Shit!...
  • inkfish
  • inkfish
  • 2009年04月16日 15:26
  • 448

博客开通,写点东西吧

      虽然注册csdn会员很久了,可是一直没有在上面发表什么东西,都是为了下载资料、查找解决问题方案的,今天决定将工作中碰到的遇到的点点滴滴记录下来,一是为了留个痕迹,便于自己以后查找,二是为了...
  • kingliu_leo
  • kingliu_leo
  • 2009年06月17日 13:54
  • 288

随便写点东西吧,嘻嘻!!

很久前就在CSDN注册了个帐号, 但是打开CSDN的博客,今天还是第一次,这也得多谢我的老师liguisen,他在他的博客里写了很多文章 ,也挺有意思的,以后多逛逛才行呀,呵呵!!...
  • wzz_boy
  • wzz_boy
  • 2007年05月29日 11:19
  • 282

还是来写点什么吧

还是来写点什么吧,做过的都忘了。每次都从头搞,很郁闷
  • whsmile55
  • whsmile55
  • 2010年01月15日 13:05
  • 174
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:还是写点东西吧
举报原因:
原因补充:

(最多只允许输入30个字)