PrinterJob自订纸张问题
时间:2011-11-30
来源:互联网
印表机是点阵式, 有关於自订纸张的问题
不论如何设定 Paper.setsize(width,height)
实际上最后都会 height > width 而且 height有最小值 就算设更小 还是跑回最小值
印出结果
ImageableWidth 410.4 Width 419.52755...
ImageableHeight 325.94458... Height 595.27557...
不论如何设定 Paper.setsize(width,height)
实际上最后都会 height > width 而且 height有最小值 就算设更小 还是跑回最小值
印出结果
ImageableWidth 410.4 Width 419.52755...
ImageableHeight 325.94458... Height 595.27557...
1 |
public class TestPrint { final static double PAPER_WIDTH = 504; final static double PAPER_HEIGHT = 325.944; final static String PRINTERNAME = "US_RECEIPT"; //印表机名称 private int PrinterIndex; private PrintService[] printservice = java.awt.print.PrinterJob.lookupPrintServices(); public static void main(String[] args) { TestPrint tp = new TestPrint(); tp.print(); } public void print() { for (int i=0;i<printservice.length;i++) { if (printservice[i].getName().equals(PRINTERNAME)) PrinterIndex = i ; } PrinterJob pjob = PrinterJob.getPrinterJob(); PageFormat pf = new PageFormat(); Paper pp = new Paper(); pp.setSize(PAPER_WIDTH, PAPER_HEIGHT); pp.setImageableArea(0, 0, PAPER_WIDTH, PAPER_HEIGHT); pf.setPaper(pp); PrintPage p1 = new PrintPage(); try { pjob.setPrintService(printservice[PrinterIndex]); } catch (PrinterException ex) { ex.printStackTrace(); return; } pjob.setPrintable(p1,pf); pjob.setCopies(1); try { pjob.print(); } catch(Exception ex) { ex.printStackTrace(); System.exit(0); } } class PrintPage implements Printable { public int print(Graphics g, PageFormat pf, int pageIndex) { if(pageIndex > 0) return NO_SUCH_PAGE; Graphics2D g2d = (Graphics2D) g; g2d.translate(pf.getImageableX(), pf.getImageableY()); g2d.drawString(String.valueOf(pf.getImageableWidth()), 10, 10); g2d.drawString(String.valueOf(pf.getImageableHeight()), 10, 120); g2d.drawString(String.valueOf(pf.getWidth()), 130, 20); g2d.drawString(String.valueOf(pf.getHeight()), 130, 130); return PAGE_EXISTS; } } } |
作者: yiaman2003 发布时间: 2011-11-30
yiaman2003 wrote:
印表机是点阵式, 有关於自订纸张的问题
不论如何设定 Paper.setsize(width,height)
实际上最后都会 height > width 而且 height有最小值 就算设更小 还是跑回最小值
印出结果
ImageableWidth 410.4 Width 419.52755...
ImageableHeight 325.94458... Height 595.27557...
paper 的 size 会依照印表机的实际情况来调整,page format 也是
印表机是点阵式, 有关於自订纸张的问题
不论如何设定 Paper.setsize(width,height)
实际上最后都会 height > width 而且 height有最小值 就算设更小 还是跑回最小值
印出结果
ImageableWidth 410.4 Width 419.52755...
ImageableHeight 325.94458... Height 595.27557...
paper 的 size 会依照印表机的实际情况来调整,page format 也是
作者: Duncan 发布时间: 2011-12-01
经过测试后 height可以大於width
但是字体是横的, 请问有无设定可以把字直印 ??
感谢!!!
但是字体是横的, 请问有无设定可以把字直印 ??
感谢!!!
作者: yiaman2003 发布时间: 2011-12-01
yiaman2003 wrote:
经过测试后 height可以大於width
但是字体是横的, 请问有无设定可以把字直印 ??
感谢!!!
请问你使用的印表机所进的纸是直的(height>width)还是横的(height<width)?我想应该是直的(如果纸是连续的,裁切后应该是直的),因为你原来实测出来的 page format 是 height > width
经过测试后 height可以大於width
但是字体是横的, 请问有无设定可以把字直印 ??
感谢!!!
请问你使用的印表机所进的纸是直的(height>width)还是横的(height<width)?我想应该是直的(如果纸是连续的,裁切后应该是直的),因为你原来实测出来的 page format 是 height > width
作者: Duncan 发布时间: 2011-12-01
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28