问题是这样的        public void drawPage(Graphics g2 ,PageFormat pageFormat) {
            this.pageFormat =  pageFormat;            int width1= (int)pageFormat.getImageableX() ;
            int height1= (int)pageFormat.getImageableY();  
            int width= (int)pageFormat.getImageableWidth() ;
            int height= (int)pageFormat.getImageableHeight();
 g2.drawRect(0, 0, width, height);//画距型
               g2.drawString("width:"+width+" height:"+height, width-300,height-300);//打印预览时,显示794,397,但打印出来却是559,397,我再修改宽高显示为680,510,打印出来却变成了404,510,为什么宽总是差这么多?
               
               g2.drawString("width1:"+width1+" height1:"+height1, width1 ,height1 );//width1永远都显示8,不管我怎么设置left,right边距,为什么?但height会跟着我设的top,bottom边距改变各位,一定要帮忙啊~~

解决方案 »

  1.   

    g2.drawString("width1:"+width1+"  height1:"+height1,  width1  ,height1  );//
    打印预览显示:85,80,打印出来变成了:8,80, 我再改成95,70,预览为:95:70,
    打印出来是:8,70,
    width1永远都显示8,不管我怎么设置left,right边距,为什么?但height会跟着我设的top,bottom边距改变  
      

  2.   

    我在google里搜索:getImageableX() 8
    根本就没有答案,不知道哪里跑出来一个8,怎么改都不变
      

  3.   

    后来我把边距设很大,直到getImageableX() 预览时显示到了170,但打印出来后,变成了114现在问题是,宽度打印出来后就变了~~~
    555555555还没有解决,谁能帮忙~~