本篇文章给大家谈谈java缩放打印,以及打印文件如何缩放打印对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、java如何做到在excel中不管有多少内容,都能把所有内容打印在一页内2、java系统打印3、Java调用打印机,超出A4宽度的部分打印不出来?4、哪位大师能给一个完整点的用java(C/S)打印jpg图片的方法啊?5、java 中如何实现打印
java如何做到在excel中不管有多少内容,都能把所有内容打印在一页内
直接打印,默认为打出所有内容。
设置打印区域,会打印你所选定的内容
java系统打印
Swing 有打印功能,使用 PrinterJob 来打印,它会弹出一个设置对话框。
如果你需要打印预览,就需要使用一个临时的 frame 或 dialog 之类的,把一个东西打印到一个 panel 上需。就是当成一个 Graphics2D 来打印,就是我们只需要指定把一个 text 以什么字体字号打印到什么 x, y 坐标。
打印图片就需要这样的预览功能,还可以缩放。
Java调用打印机,超出A4宽度的部分打印不出来?
DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE;
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
// 纵向打印
new MediaSize(80, 3276, Size2DSyntax.MM,MyMediaSizeName.MY_TICKET);
pras.add(OrientationRequested.PORTRAIT);
pras.add(MyMediaSizeName.MY_TICKET);
PrintService[] pss = PrintServiceLookup.lookupPrintServices(flavor,null);
if(pss.length==0)
{
throw new SimpleException(“Printer Not Found”);
}else{
for (PrintService pppp:pss
) {
if(pppp.getName().equals(printName)){
DocAttributeSet das = new HashDocAttributeSet();
// 设置打印纸张的大小(以毫米为单位)
das.add(new MediaPrintableArea(0, 0, 80, 3276, MediaPrintableArea.MM));
// 获取打印服务对象
DocPrintJob job = pppp.createPrintJob();
PrintableAllOrder printableAllOrder=new PrintableAllOrder(orderInfo);
Doc doc = new SimpleDoc(printableAllOrder,flavor,das);
//添加指定的打印机
try {
job.print(doc,pras);
} catch (PrintException e) {
e.printStackTrace();
}
return;
继承一下MediaSizeName
public class MyMediaSizeName extends MediaSizeName {
/**
* Constructs a new media attribute specified by name.
*
* @param value a value
*/
protected MyMediaSizeName(int value) {
super(value);
}
/**
* MY_TICKET size.
*/
public static final MyMediaSizeName MY_TICKET = new MyMediaSizeName(73);
private static final String[] myStringTable = {
“my_ticket”
};
private static final MyMediaSizeName[] myEnumValueTable = {
MY_TICKET
};
/**
* Returns the string table for class MediaSizeName.
*/
protected String[] getStringTable()
{
return (String[])myStringTable.clone();
}
/**
* Returns the enumeration value table for class MediaSizeName.
*/
protected EnumSyntax[] getEnumValueTable() {
return (EnumSyntax[])myEnumValueTable.clone();
}
}
这样就自定义了纸张。用系统内置的只能是符合的才好用
我找了好久,最后自己看了源码,发现它会先找打印机默认的纸张,
不想用打印机默认的就要有设置MediaSizeName,还要有对应的MediaSize,但直接设置MediaSize会报错。
哪位大师能给一个完整点的用java(C/S)打印jpg图片的方法啊?
不知道你用过jasperreport没有?
如果你用这个,那么可以直接使用
JasperPrintManager.printReport(inputStream, false);
来禁止弹出确认对话框!
这样的打印会自动选择你的默认打印机输出,不用确认选择哪个打印机。
我的发票打印都是这样弄的!
java 中如何实现打印
你好。 你所创建JFrame对象可以调用自己的实例方法实现打印。 JFrame jf=new JFrame(); Toolkit tl=jf.getToolkit() //返回此窗体的工具包 PrintJob p=tl.getPrintJob(Frame frame,String jobtitle,Properties props); //获取一个 PrintJob 对象,该对象是在工具包平台上初始化某个打印操作的结果。 参数: frame – 打印对话框的父容器。不能为 null。 jobtitle – PrintJob 的标题。null 标题等同于 “”。 props – 包含零个或更多属性的 Properties 对象。这些属性没有被标准化,并且在各个实现之间不一致。因此,要求作业和页面控制的 PrintJob 应该使用此方法带有 JobAttributes 和 PageAttributes 对象的版本。可以更新此对象来反映用户离开时的作业选择。可以为 null。 Graphics g=p.getGraphics() // 为组件创建一个图形上下文。如果组件当前是不可显示的,则此方法返回 null。 jf.paintAll(g); //打印该容器及内嵌组件; jf.paint(g); //只打印该容器; 这是个大概模型,如果你需要其他的作用,就要查JDK帮助文档; 所有的代码都是我查询JDK帮助文档所得,绝对正确,而且我以前用过。
关于java缩放打印和打印文件如何缩放打印的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。