本文整理匯總了Java中javax.print.Doc類的典型用法代碼示例。如果您正苦於以下問題:Java Doc類的具體用法?Java Doc怎麽用?Java Doc使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
Doc類屬於javax.print包,在下文中一共展示了Doc類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: print
import javax.print.Doc; //導入依賴的package包/類
@Override
public boolean print(Label label, String codePage) {
if (psBarCode == null) {
System.err.println("Barcode printer not found");
return false;
}
try {
byte[] bytes = label.getCommands().getBytes("cp" + codePage);
DocPrintJob job = psBarCode.createPrintJob();
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
Doc doc = new SimpleDoc(bytes, flavor, null);
job.print(doc, null);
} catch (Exception e) {
e.printStackTrace();
return false;
}
return true;
}
示例2: print
import javax.print.Doc; //導入依賴的package包/類
public void print(final Doc doc, final PrintRequestAttributeSet attributes)
throws PrintException {
synchronized (lock) {
if (printer != null) {
throw new PrintException("Printer is busy"); //$NON-NLS-1$
} else {
final DocFlavor flavor = doc.getDocFlavor();
if ((flavor == null) || !service.isDocFlavorSupported(flavor)) {
throw new PrintException("Doc flavor is not supported"); //$NON-NLS-1$
}
printer = new Printer(doc, attributes);
printer.print();
}
}
}
示例3: testVerifyAttributeCategory3
import javax.print.Doc; //導入依賴的package包/類
public final void testVerifyAttributeCategory3() {
//fails in "some" invironment
//see AttributeSetUtilities, line 337-339
try {
AttributeSetUtilities.
verifyAttributeCategory(SimpleDoc.class, Doc.class);
fail("method doesn't throw ClassCastException if object " +
"is a Class that implements interfaceName but " +
"interfaceName is not a class that implements " +
"interface Attribute");
} catch (ClassCastException e) {
//System.out.println("testVerifyAttributeCategory3 - " + e.toString());
}
}
示例4: printZpl
import javax.print.Doc; //導入依賴的package包/類
/**
* Function to print code Zpl to local zebra(usb)
*
* @param zpl
* code Zpl to print
* @param ip
* ip adress
* @param port
* port
* @throws ZebraPrintException
* if zpl could not be printed
*/
public static void printZpl(String zpl, String printerName) throws ZebraPrintException {
try {
PrintService psZebra = null;
String sPrinterName = null;
PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
for (int i = 0; i < services.length; i++) {
PrintServiceAttribute attr = services[i].getAttribute(PrinterName.class);
sPrinterName = ((PrinterName) attr).getValue();
if (sPrinterName.toLowerCase().indexOf(printerName) >= 0) {
psZebra = services[i];
break;
}
}
if (psZebra == null) {
throw new ZebraPrintNotFoundException("Zebra printer not found : " + printerName);
}
DocPrintJob job = psZebra.createPrintJob();
byte[] by = zpl.getBytes();
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
Doc doc = new SimpleDoc(by, flavor, null);
job.print(doc, null);
} catch (PrintException e) {
throw new ZebraPrintException("Cannot print label on this printer : " + printerName, e);
}
}
示例5: testVerifyAttributeCategory3
import javax.print.Doc; //導入依賴的package包/類
public final void testVerifyAttributeCategory3() {
//fails in "some" invironment
//see AttributeSetUtilities, line 337-339
try {
AttributeSetUtilities.
verifyAttributeCategory(SimpleDoc.class, Doc.class);
fail("metod doesn't throw ClassCastException if object " +
"is a Class that implements interfaceName but " +
"interfaceName is not a class that implements " +
"interface Attribute");
} catch (ClassCastException e) {
//System.out.println("testVerifyAttributeCategory3 - " + e.toString());
}
}
示例6: print
import javax.print.Doc; //導入依賴的package包/類
@Override
public void print(Doc doc,
PrintRequestAttributeSet printRequestAttributeSet)
throws PrintException {
System.out.println("job name: " + printRequestAttributeSet.get(JobName.class));
System.out.println("copies: " + printRequestAttributeSet.get(Copies.class));
if(printRequestAttributeSet.get(JobName.class) == null ||
printRequestAttributeSet.get(Copies.class) == null) {
throw new RuntimeException("Copies and JobName is not passed correctly");
}
}
示例7: print
import javax.print.Doc; //導入依賴的package包/類
/**
*
* @param path
* @throws PrintException
* @throws IOException
*/
public void print(String path) throws PrintException, IOException {
String defaultPrinter =lookupDefaultPrintService().getName();
showMessageDialog(null,"Default printer: " + defaultPrinter);
PrintService service = lookupDefaultPrintService();
DocFlavor flavor;
PrintJobWatcher pjw;
try (FileInputStream in = new FileInputStream(new File(path))) {
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
pras.add(new Copies(1));
flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
Doc doc = new SimpleDoc(in, DocFlavor.INPUT_STREAM.AUTOSENSE, null);
DocPrintJob job = service.createPrintJob();
pjw = new PrintJobWatcher(job);
job.print(doc, pras);
pjw.waitForDone();
}
// send FF to eject the page
InputStream ff = new ByteArrayInputStream("\f".getBytes());
Doc docff = new SimpleDoc(ff, flavor, null);
DocPrintJob jobff = service.createPrintJob();
pjw = new PrintJobWatcher(jobff);
jobff.print(docff, null);
pjw.waitForDone();
}
示例8: print
import javax.print.Doc; //導入依賴的package包/類
/**
*
* @param g Graphic class
* @param pf page format
* @param page page count
* @return 1
* @throws PrinterException
*
* This methos print to pdf
*/
@Override
public int print(Graphics g, PageFormat pf, int page) throws
PrinterException {
DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PAGEABLE;
PrintRequestAttributeSet patts = new HashPrintRequestAttributeSet();
patts.add(Sides.DUPLEX);
PrintService[] ps = PrintServiceLookup.lookupPrintServices(flavor, patts);
if (ps.length == 0) {
//
}
//System.out.println("Available printers: " + Arrays.asList(ps));
PrintService myService = null;
for (PrintService printService : ps) {
if (printService.getName().equals("Your printer name")) {
myService = printService;
break;
}
}
if (myService == null) {
//
}
try (FileInputStream fis = new FileInputStream(file)) {
Doc pdfDoc = new SimpleDoc(fis, DocFlavor.INPUT_STREAM.AUTOSENSE, null);
DocPrintJob printJob = myService.createPrintJob();
printJob.print(pdfDoc, new HashPrintRequestAttributeSet());
} catch (Exception e) {
e.printStackTrace();
throw new PrinterException("File Not Found!");
}
return 1;
}
示例9: print
import javax.print.Doc; //導入依賴的package包/類
public void print() throws IOException, PrintException {
DocFlavor inputFlavor = DocFlavor.INPUT_STREAM.TEXT_PLAIN_UTF_8;
// Lookup a print factory to convert from desired input to output.
StreamPrintServiceFactory[] psfactories =
StreamPrintServiceFactory.lookupStreamPrintServiceFactories(
inputFlavor, DocFlavor.BYTE_ARRAY.POSTSCRIPT.getMimeType());
if (psfactories.length == 0) {
System.err.println("Ack! No StreamPrintFactory found for this job!");
}
StreamPrintService printService =
psfactories[0].getPrintService(new FileOutputStream("demo.ps"));
PrintRequestAttributeSet attrs = new HashPrintRequestAttributeSet();
attrs.add(OrientationRequested.LANDSCAPE);
attrs.add(MediaSizeName.NA_LETTER);
attrs.add(new Copies(1));
attrs.add(new JobName(INPUT_FILE_NAME, null));
InputStream is = getClass().getResourceAsStream(INPUT_FILE_NAME);
if (is == null) {
throw new NullPointerException(
"Input Stream is null: file not found?");
}
Doc doc = new SimpleDoc(is, inputFlavor, null);
DocPrintJob printJob = printService.createPrintJob();
printJob.print(doc, attrs);
}
示例10: print
import javax.print.Doc; //導入依賴的package包/類
/** Print a file by name
* @throws IOException
* @throws PrintException
*/
public void print(String fileName) throws IOException, PrintException {
System.out.println("PrintServiceDemo.print(): Printing " + fileName);
DocFlavor flavor = DocFlavor.INPUT_STREAM.TEXT_PLAIN_UTF_8;
PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
//aset.add(MediaSize.NA.LETTER);
aset.add(MediaSizeName.NA_LETTER);
//aset.add(new JobName(INPUT_FILE_NAME, null));
PrintService[] pservices =
PrintServiceLookup.lookupPrintServices(flavor, aset);
int i;
switch(pservices.length) {
case 0:
System.err.println(0);
JOptionPane.showMessageDialog(PrintServiceDemo.this,
"Error: No PrintService Found", "Error",
JOptionPane.ERROR_MESSAGE);
return;
case 1:
i = 0; // Only one printer, use it.
break;
default:
i = JOptionPane.showOptionDialog(this,
"Pick a printer", "Choice",
JOptionPane.OK_OPTION, JOptionPane.QUESTION_MESSAGE,
null, pservices, pservices[0]);
break;
}
DocPrintJob pj = pservices[i].createPrintJob();
InputStream is = getClass().getResourceAsStream(INPUT_FILE_NAME);
if (is == null) {
throw new NullPointerException("Input Stream is null: file not found?");
}
Doc doc = new SimpleDoc(is, flavor, null);
pj.print(doc, aset);
}
示例11: print
import javax.print.Doc; //導入依賴的package包/類
public void print(Doc doc, int copies, boolean sendToPrinter, String mimeType, String jobName) throws PrintException {
LOG.trace("Print Service: " + this.printService.getName());
LOG.trace("About to print " + copies + " copy(s)");
for (int i = 0; i < copies; i++) {
if (!sendToPrinter) {
LOG.debug("Print flag is set to false. This job will not be printed until this setting remains in effect."
+ " Please set the flag to true or remove the setting.");
File file;
if (mimeType.equalsIgnoreCase("GIF") || mimeType.equalsIgnoreCase("RENDERABLE_IMAGE")) {
file = new File("./target/TestPrintJobNo" + i + "_" + UUID.randomUUID() + ".gif");
} else if (mimeType.equalsIgnoreCase("JPEG")) {
file = new File("./target/TestPrintJobNo" + i + "_" + UUID.randomUUID() + ".jpeg");
} else if (mimeType.equalsIgnoreCase("PDF")) {
file = new File("./target/TestPrintJobNo" + i + "_" + UUID.randomUUID() + ".pdf");
} else {
file = new File("./target/TestPrintJobNo" + i + "_" + UUID.randomUUID() + ".txt");
}
LOG.debug("Writing print job to file: " + file.getAbsolutePath());
try {
InputStream in = doc.getStreamForBytes();
FileOutputStream fos = new FileOutputStream(file);
IOHelper.copyAndCloseInput(in, fos);
IOHelper.close(fos);
} catch (Exception e) {
throw new PrintException("Error writing Document to the target file " + file.getAbsolutePath());
}
} else {
if (LOG.isDebugEnabled()) {
LOG.debug("Issuing Job {} to Printer: {}", i, this.printService.getName());
}
print(doc, jobName);
}
}
}
示例12: printerNameTest
import javax.print.Doc; //導入依賴的package包/類
@Test
public void printerNameTest() throws Exception {
if (isAwtHeadless()) {
return;
}
// setup javax.print
PrintService ps1 = mock(PrintService.class);
when(ps1.getName()).thenReturn("MyPrinter\\\\remote\\printer1");
when(ps1.isDocFlavorSupported(any(DocFlavor.class))).thenReturn(Boolean.TRUE);
boolean res1 = PrintServiceLookup.registerService(ps1);
assertTrue("The Remote PrintService #1 should be registered.", res1);
DocPrintJob job1 = mock(DocPrintJob.class);
when(ps1.createPrintJob()).thenReturn(job1);
context.addRoutes(new RouteBuilder() {
public void configure() {
from("direct:start1").to("lpr://remote/printer1?sendToPrinter=true");
}
});
context.start();
template.sendBody("direct:start1", "Hello Printer 1");
context.stop();
verify(job1, times(1)).print(any(Doc.class), any(PrintRequestAttributeSet.class));
}
示例13: printPrintable
import javax.print.Doc; //導入依賴的package包/類
private void printPrintable(final Doc doc,
final PrintRequestAttributeSet attributes)
throws PrintException {
final long pdc = WinPrinterFactory.getPrinterDC(
service.printerName, service.getPrinterProps()
.getStructPtr());
final AttributeSet docAttrs = doc.getAttributes();
final Printable printable = castDoc(doc, Printable.class);
final PageFormat format = getPageFormat(docAttrs, attributes);
final PageRanges ranges = getAttribute(PageRanges.class, docAttrs,
attributes);
int res = Printable.PAGE_EXISTS;
try {
startJob(pdc, getDocName(printable, docAttrs, attributes),
getDestinationPath(attributes));
for (int i = 0; res == Printable.PAGE_EXISTS; i++) {
if ((ranges != null) && !ranges.contains(i)) {
continue;
}
res = printPrintable(printable, pdc, format, i);
}
endJob(pdc);
} finally {
WinPrinterFactory.releasePrinterDC(pdc);
}
}
示例14: printImage
import javax.print.Doc; //導入依賴的package包/類
private void printImage(final Image img, final Doc doc,
final PrintRequestAttributeSet attributes)
throws PrintException {
final PageFormat format = getPageFormat(attributes);
final long pdc = WinPrinterFactory.getPrinterDC(
service.printerName, service.getPrinterProps()
.getStructPtr());
final double xRes = WinPrinterFactory.getPixelsPerInchX(pdc) / 72;
final double yRes = WinPrinterFactory.getPixelsPerInchY(pdc) / 72;
final Graphics2D g2d = new WinGDIPGraphics2D(pdc, (char) 2,
(int) (format.getWidth() * xRes), (int) (format
.getHeight() * yRes));
try {
startJob(pdc, getDocName(img, attributes),
getDestinationPath(attributes));
WinPrinterFactory.startPage(pdc);
g2d.drawImage(img, (int) (format.getImageableX() * xRes),
(int) (format.getImageableY() * yRes),
(int) (format.getImageableWidth() * xRes),
(int) (format.getImageableHeight() * yRes),
Color.WHITE, null);
WinPrinterFactory.endPage(pdc);
endJob(pdc);
} finally {
WinPrinterFactory.releasePrinterDC(pdc);
}
}
示例15: castDoc
import javax.print.Doc; //導入依賴的package包/類
private <T> T castDoc(final Doc doc, final Class<T> c)
throws PrintException {
try {
return c.cast(doc.getPrintData());
} catch (final IOException ex) {
throw new PrintException(ex);
}
}