知识大全 对于java的打印问题

Posted

篇首语:知识能使你增加一双眼睛。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 对于java的打印问题相关的知识,希望对你有一定的参考价值。

  对于java的打印问题 各种书上谈的很少 我想主要原因可能是java的打印功能太弱了 没有什么可介绍的 最近 我因为工作的关系 用到了java的打印图象功能 不过因为缺少可参考的例子和教材 我只有查看jdk 的API文档 的确不是很爽 下面就把我的程序给大家讲讲 顺便白话一下java的打印(是jdk 的) java的打印类都在java awt print包下 主要有四个类和两个interface PrinterJob PageFormat Paper Book; Printable Pageable (详细的情况 请查看jdk的API文档 我只讲我程序中用到的部分)     Interface包括 Printable 主要是用来打印的接口 在打印的时候 它的print()方法不断地被调用 直到 返回NO_SUCH_PAGE为止     PrinterJob:初始化打印操作 可以显示系统特定的打印对话框 例如windows的       PageFormat:描述可打印区 例如我的程序用的几个方法      public double getImageableX();   public double getImageableY();   public double getImageableWidth();   public double getImageableHeight();         package jinicup printer;       import java awt *;   import java awt print *;   import java awt event *;   import javax swing JPanel;   import javax swing JFrame;   import javax swing ImageIcon;   import java io *;       /**********************************   * Implemenation of the printer service   ***********************************/   public class PrinterImpl extends JPanel   implements Printable   private Image image;   private PrinterJob printJob;     private double x y w h;   private int imagew imageh;       PrinterImpl ()       printJob = PrinterJob getPrinterJob();   printJob setPrintable(this);   printJob printDialog();          public int print (Graphics graphics PageFormat pageFormat int pageIndex) throws PrinterException   System out println( pageIndex +pageIndex);   if (pageIndex >= )   return Printable NO_SUCH_PAGE;      x = pageFormat getImageableX();   y = pageFormat getImageableY();   w = pageFormat getImageableWidth();   h = pageFormat getImageableHeight();     if(imagew >= imageh)   h=w*imageh/imagew;   else   w=h*imagew/imageh;        System out println(x+ +y);   System out println(w+ +h);         drawGraphics(graphics);   return Printable PAGE_EXISTS;          public void paint (Graphics graphics)   drawGraphics(graphics);          private void drawGraphics (Graphics graphics)       graphics drawImage(image (int)x (int)y (int)w (int)h null);   // graphics drawOval( );          /**********************************   * starts the printing   * @param byteArrayOfJPEGFile a valid byte array of a jpg file (can be directly from the camera)   ***********************************/   public void printByteArray (byte[] byteArrayOfJPEGFile)   // Toolkit tool = Toolkit getToolkit();   // image=tool createImage(byteArrayOfJPEGFile);   image = (new ImageIcon(byteArrayOfJPEGFile)) getImage();     imagew=image getWidth(null);   imageh=image getHeight(null);   System out println(imagew+ +imageh);       System out println( kkk );   try   System out println( start printing );   printJob print();   System out println( printing was spooled to the printer );    catch (Exception ex)   System out println(ex);      return;          /**********************************   * main method only for text purposes   * @param args no args are used   ***********************************/   public static void main (String[] args)   PrinterImpl pi = new PrinterImpl();   try   FileInputStream fs = new FileInputStream( e:/test jpg );   System out println(fs available());   byte[] array = new byte[fs available()];   fs read(array);   pi printByteArray(array);    catch (Exception e)   System out println(e);             cha138/Article/program/Java/JSP/201311/19135

相关参考

知识大全 用Java代码生成打印收据

用Java代码生成打印收据  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  首先来看看效果如下图 

知识大全 在Java程序中实现高精度打印

在Java程序中实现高精度打印  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在Java环境中可

知识大全 Java打印程序设计全攻略

开发技巧:Java打印程序设计全攻略  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  前言  在我

知识大全 Java高级编程:使用打印服务API二(图)

Java高级编程:使用打印服务API二(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  选择

知识大全 用java实现输入ASCII码,打印出对应的大写字母。

用java实现输入ASCII码,打印出对应的大写字母。  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 对于Java消息服务中常见问题的解答

对于Java消息服务中常见问题的解答  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  问什么是Ja

知识大全 通过jacob对excel,word进行打印等操作

  因为项目有个需求要求能够在某个预定时间对特定报表进行自动打印报表的形式主要是excel如果是c++或者c#什么的简直是小菜一碟可惜偏偏是java实现并且这又不同于常见的页面手工打印可以通过java

知识大全 js控制excel打印完美解决方案

  做web开发大家都遇到过打印的问题对于复杂的表格打印着实令人头痛这片文章介绍一下使用excel打印的解决方法  首先如果客户端调用excel必须降低ie安全级别这样一些非法的控件如什么的都自动安装

知识大全 日期打印程序

cha138/Article/program/Java/hx/201311/27053

知识大全 惠普8500打印机问题

急!惠普8500打印机问题别图便宜装连供哦这款机器原装墨盒很贵但是连供如果把打印机的喷头弄坏的话那就惨了电脑故障,怎么解决!急……在BIOS里面把SLAVEDISK关闭了就可以了。可能你的硬盘就是当作