0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 69
1

Война с принтером

28.01.2015, 19:04. Показов 591. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Моя война с принтером продолжается! Взял этот код на доках оракла. Прикол в том, что если ставить число копий=1, то он передает печать в не то устройство и печать не происходит. А если ставлю 2 копии, то печатает нормально, но мне же не нужно 2 копии. Что делать?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import java.io.*;
import java.awt.*;
import java.net.*;
import java.awt.image.*;
import java.awt.print.*;
import javax.print.*;
import javax.print.attribute.*;
import javax.print.attribute.standard.*;
 
public class Print2DPrinterJob implements Printable {
 
        public Print2DPrinterJob() {
 
                /* Construct the print request specification.
                * The print data is a Printable object.
                * the request additonally specifies a job name, 2 copies, and
                * landscape orientation of the media.
                */
                PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
                aset.add(OrientationRequested.LANDSCAPE);
                aset.add(new Copies(2));
                aset.add(new JobName("My job", null));
 
                /* Create a print job */
                PrinterJob pj = PrinterJob.getPrinterJob();       
                pj.setPrintable(this);
                /* locate a print service that can handle the request */
                PrintService[] services =
                        PrinterJob.lookupPrintServices();
 
                if (services.length > 0) {
                        System.out.println("selected printer " + services[0].getName());
                        try {
                                pj.setPrintService(services[0]);
                                pj.pageDialog(aset);
                                if(pj.printDialog(aset)) {
                                        pj.print(aset);
                                }
                        } catch (PrinterException pe) { 
                                System.err.println(pe);
                        }
                }
        }
 
        public int print(Graphics g,PageFormat pf,int pageIndex) {
 
                if (pageIndex == 0) {
                        Graphics2D g2d= (Graphics2D)g;
                        g2d.translate(pf.getImageableX(), pf.getImageableY()); 
                        g2d.setColor(Color.black);
                        g2d.drawString("example string", 250, 250);
                        g2d.fillRect(0, 0, 200, 200);
                        return Printable.PAGE_EXISTS;                                   
                } else {
                        return Printable.NO_SUCH_PAGE;
                }
        }
 
        public static void main(String arg[]) {
 
                Print2DPrinterJob sp = new Print2DPrinterJob();
        }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.01.2015, 19:04
Ответы с готовыми решениями:

Война
Войны ведется не только на поле битвы, но и в глубине души!! а вы как сочетаете ??

Война с loading
Здравствуйте, как можно сделать, чтобы сперва появлялся Loading... и через 5 секунд появлялось...

Война сухофруктов
Мы с другом сделали видео-анимацию. 3 часа старались, а видео получилось на 10 секунд :) А вот,...

Война с кешем в FF
Извините если уже есть похожие темы!!! Пользуюсь FF4 уже пару месяцев. Всё нравится... Возврат на...

0
28.01.2015, 19:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.01.2015, 19:04
Помогаю со студенческими работами здесь

война с провайдером
В моем городке один интернет провайдер, который предоставляет выход в сеть по технологии ADSL....

Война желюдей
Еще одно видео от меня и моего друга: Битва желюдей :) Приятного просмотра :popcorn: ...

Война с компилятором
Здравствуйте. Мне нужен "C" для решения лабораторных работ. Скачал и установил себе компилятор...

Война? С Яндексом
Аффигеть. Воспользовался сабмиттером с рабочего места. Спустя несколько дней Яндекс блокировал вход...

война со слайдером
Здравствуйте, помогите пожалуйста. Имеется слайдер (Coin slider). Как сделать чтобы слайдер менял...

Война со scrollTop()
Привет всем! Опишу ситуацию: в блок DIV с помощью append подгружается некоторая информация. Всё...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru