=================================
=================================
=================================
출처: http://202psj.tistory.com/646 //여기
protected PrintService[] m_services;
protected PrintService m_serviceDef = null;
m_services = PrinterJob.lookupPrintServices(); //설정된 여러프린터를 가져온다
m_serviceDef = PrintServiceLookup.lookupDefaultPrintService(); //디폴트 기본 지정된 프린터를 가져온다.
lookupDefaultPrintService
public static final PrintService lookupDefaultPrintService()
- 이 환경의 디폴트 인쇄 서비스를 검출합니다. null 를 돌려주는 일도 있습니다. 복수의 룩 업 서비스 각각으로 디폴트가 지정되고 있는 경우, 선택된 서비스는 엄밀하게는 정의됩니다만, 인스톨 끝난 서비스는 아니고, 플랫폼 네이티브의 서비스가 디폴트로서 돌려주어집니다. 명확하게 식별 가능한 플랫폼 네이티브의 디폴트 인쇄 서비스가 존재하지 않는 경우, 구현 고유의 방법으로 최초로 검출된 서비스가 디폴트가 됩니다.
이것에는, Java 또는 네이티브 플랫폼의 일부로서 이용 가능한 설정 API 의 어떤 것인지를 활용하는 것이 포함됩니다. 이 알고리즘은, javax.print.defaultPrinter 프로퍼티을 설정하는 사용자에 의한 덧쓰기가 가능합니다. 지정된 서비스가 유효한 서비스로서 검출되어 한편 디폴트로서 돌려줄 수가 없으면 안됩니다.
-
- 반환값:
- 디폴트의 PrintService
=================================
=================================
=================================
출처: http://blog.naver.com/mobilemania?Redirect=Log&logNo=140066923795
package org.ujava.test.printer;
import javax.print.DocPrintJob;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.ServiceUIFactory;
import javax.print.attribute.Attribute;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
import javax.print.attribute.PrintServiceAttributeSet;
import javax.print.attribute.standard.Chromaticity;
import javax.print.attribute.standard.Copies;
import javax.print.attribute.standard.MediaSizeName;
import javax.print.attribute.standard.Sides;
/**
*
* @author java
*/
public class PrinterTest
{
public static void main(String[] args)
{
new PrinterTest().info();
}
public void info()
{
PrintService svc = PrintServiceLookup.lookupDefaultPrintService();
info(svc);
PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
/**
for (int i = 0; i < services.length; i++) {
PrintService service = services[i];
info(service);
}
* */
PrintRequestAttributeSet attrs = new HashPrintRequestAttributeSet(); // null이 아니어야만 한다.
attrs.add(new Copies(5)); // paper count http://java.sun.com/j2se/1.5.0/docs/api/javax/print/attribute/standard/Copies.html
attrs.add(MediaSizeName.TABLOID); // paper size http://java.sun.com/j2se/1.5.0/docs/api/javax/print/attribute/standard/MediaSizeName.html
attrs.add(Chromaticity.MONOCHROME); // 흑백인쇄 http://java.sun.com/j2se/1.5.0/docs/api/javax/print/attribute/standard/Chromaticity.html#MONOCHROME
attrs.add(Sides.DUPLEX); // 양면인쇄 http://java.sun.com/j2se/1.5.0/docs/api/javax/print/attribute/standard/Sides.html#DUPLEX
//PrintService selection = ServiceUI.printDialog( null, 100, 100, services, svc, null, attrs);
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
DocPrintJob printJob = defaultService.createPrintJob();
}
void info(PrintService s)
{
System.out.println(s.getName() + " :: "+s.getClass().getName());
PrintServiceAttributeSet set = s.getAttributes();
showAttributes(set);
ServiceUIFactory fac = s.getServiceUIFactory();
System.out.println("fac: "+fac); // null
}
void showAttributes(PrintServiceAttributeSet set)
{
System.out.println("set: "+set); // javax.print.attribute.AttributeSetUtilities$UnmodifiablePrintServiceAttributeSet@85028e19
Attribute[] attrs = set.toArray();
for (int i=0;i<attrs.length;i++)
{
Attribute attr = attrs[i];
System.out.println("attr: "+attr.getName()
//+" "+attr.getCategory()
+" "+attr.toString());
}
/*
*
attr: printer-is-accepting-jobs accepting-jobs
attr: printer-name Samsung CLP-300 Series
attr: color-supported supported
attr: queued-job-count 0
* */
}
}
[출처] java Printer Attribute sample|작성자 mobilemania
=================================
=================================
=================================
'프로그래밍 관련 > 언어들의 코딩들 C++ JAVA C# 등..' 카테고리의 다른 글
자바 JTextPane 을 html로 변환시 vertically 센터 설정 관련 (0) | 2015.03.09 |
---|---|
자바 현재 리소스의 URL 을 알아내기 (0) | 2015.03.09 |
자바 버전7 업데이트 51 로 업데이트 했을때 manifest 보안 에러 관련 ("Missing Application-Name manifest attribute for") (0) | 2014.01.15 |
자바 java url connect get, post (0) | 2013.07.17 |
[C언어] c, c++ 반복문 for 문 관련 (0) | 2013.07.04 |
댓글 영역