/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Printning i java
Fra : Dennis Flydtkjær


Dato : 20-02-01 11:38

Er der nogle der har eksempler på hvordan man printer et Jpg billede, i
java????


Mvh
Thomas



 
 
Rune Nielsen (20-02-2001)
Kommentar
Fra : Rune Nielsen


Dato : 20-02-01 15:46

Hej,

> Er der nogle der har eksempler på hvordan man printer et Jpg billede, i
> java????

Det kommer nok lidt an på versionen. Men du kan under 1.1 oprette et
PrintJob objekt og kalde getGraphics() på denne. Så får du et Graphics
objekt, som du kan tegne billedet på vha. drawImage() metoden.

Når du så vil skrive ud, kalder du dispose() på Graphics objektet og
end() på PrintJob objektet.. derefter bliver der udskrevet.

Ønsker du at printe flere billeder/sider, drejer det sig bare om at kalde
dispose() på det første Graphics objekt og bruge getGraphics() igen
for at få næste side. Så kalder du bare end() på PrintJob til sidst og der
printes.

Med venlig hilsen,
Rune Nielsen, rn@picit.dk



Ole Lambæk (20-02-2001)
Kommentar
Fra : Ole Lambæk


Dato : 20-02-01 18:00


> Det kommer nok lidt an på versionen. Men du kan under 1.1 oprette et
> PrintJob objekt og kalde getGraphics() på denne. Så får du et Graphics
> objekt, som du kan tegne billedet på vha. drawImage() metoden.
>
> Når du så vil skrive ud, kalder du dispose() på Graphics objektet og
> end() på PrintJob objektet.. derefter bliver der udskrevet.
>
> Ønsker du at printe flere billeder/sider, drejer det sig bare om at kalde
> dispose() på det første Graphics objekt og bruge getGraphics() igen
> for at få næste side. Så kalder du bare end() på PrintJob til sidst og der
> printes.

Jeg arbejder sammen med Dennis Flydtkjær / Thomas (Personlighedsspaltning..
?) så jeg tillader mig lige at svare. Vi har rodet med drawImage, men kan
ikke rigtgt få det til at spille... Vi kan ikke helt nøjes med drawLine()
.... Lidt svært at lave et fancy logo udelukkende med streger..

Antag at vi f.eks. ønsker at udskrive et jpg billede, hvordan får vi denne
kastet ind i et image object eller subklasse heraf... ? Også er der noget
med en ImageObserver, som vi heller ikke har helt styr på...

Jeg gir en omgang på http://fergusons.dk/ebeer/ til den der først kaster et
eksempel på: drawImage(), som kaster et f.eks. jpg billede ud uden alt for
meget fiks faks.

Er der forøvrigt nogen der har nogle lækre packages liggende til
udskrivning... Java's indbyggede funktioner forekommer lidt "tynde", der må
da være nogen der har lavet noget guf.

--
Med venlig hilsen
Ole Lambæk
ole(a)lambaek-net.dk
2. sem Datamatiker studerende... så bær over med mig (-:



muzakker (20-02-2001)
Kommentar
Fra : muzakker


Dato : 20-02-01 18:33

Hejsa

Jeg er ikke helt sikker, mon ikke det virker ???

ImageIcon icon = new ImageIcon ("logo.jpg");
Image img = icon.getGraphics().getImage();
detNyePrintJob.drawImage (img, icon.getIconHeight(), icon.getIconWidth(),
this);

hvor klassen som ovenstående metode findes implementere interfacet
ImageObserver.

du kan bare lade metoderne være tomme..


håber det virker


flemming



"Ole Lambæk" <lambaek@hotmail.com> wrote in message
news:96u7q9$1av8$1@news.cybercity.dk...
>
> > Det kommer nok lidt an på versionen. Men du kan under 1.1 oprette et
> > PrintJob objekt og kalde getGraphics() på denne. Så får du et Graphics
> > objekt, som du kan tegne billedet på vha. drawImage() metoden.
> >
> > Når du så vil skrive ud, kalder du dispose() på Graphics objektet og
> > end() på PrintJob objektet.. derefter bliver der udskrevet.
> >
> > Ønsker du at printe flere billeder/sider, drejer det sig bare om at
kalde
> > dispose() på det første Graphics objekt og bruge getGraphics() igen
> > for at få næste side. Så kalder du bare end() på PrintJob til sidst og
der
> > printes.
>
> Jeg arbejder sammen med Dennis Flydtkjær / Thomas
(Personlighedsspaltning..
> ?) så jeg tillader mig lige at svare. Vi har rodet med drawImage, men kan
> ikke rigtgt få det til at spille... Vi kan ikke helt nøjes med drawLine()
> ... Lidt svært at lave et fancy logo udelukkende med streger..
>
> Antag at vi f.eks. ønsker at udskrive et jpg billede, hvordan får vi denne
> kastet ind i et image object eller subklasse heraf... ? Også er der noget
> med en ImageObserver, som vi heller ikke har helt styr på...
>
> Jeg gir en omgang på http://fergusons.dk/ebeer/ til den der først kaster
et
> eksempel på: drawImage(), som kaster et f.eks. jpg billede ud uden alt for
> meget fiks faks.
>
> Er der forøvrigt nogen der har nogle lækre packages liggende til
> udskrivning... Java's indbyggede funktioner forekommer lidt "tynde", der

> da være nogen der har lavet noget guf.
>
> --
> Med venlig hilsen
> Ole Lambæk
> ole(a)lambaek-net.dk
> 2. sem Datamatiker studerende... så bær over med mig (-:
>
>



Ole Lambæk (21-02-2001)
Kommentar
Fra : Ole Lambæk


Dato : 21-02-01 16:43

"muzakker" <utrolig@fedt.dk> wrote :
> Hejsa
>
> Jeg er ikke helt sikker, mon ikke det virker ???
>
> ImageIcon icon = new ImageIcon ("logo.jpg");
> Image img = icon.getGraphics().getImage();
> detNyePrintJob.drawImage (img, icon.getIconHeight(), icon.getIconWidth(),
> this);
>
> hvor klassen som ovenstående metode findes implementere interfacet
> ImageObserver.
>
> du kan bare lade metoderne være tomme..
>
>
> håber det virker

Det gjorde det ... næsten (-:

Lidt omskrivning skulle der til.. men det skal jo heller ikke være for let

Hvis andre skulle være interesserede så omskrev vi ovenstående til
nedenstående, som placerer billedet i punkt 100,100

ImageIcon icon = new ImageIcon ("logo.jpg");
Image img = icon.getImage();
detNyePrintJob.drawImage (img, 100, 100, null);

Umiddelbart virker det helt fint, selv om vi sætter ImageObserver til null
.... billedet kommer ihvertfald ud af printeren.. (-:

Mange tak for hjælpen... Vi har dog stadig et lille problem.. Når vi
udskriver, så kan vi ikke komme tættere på øverste venstre hjørne end
punktet 70,70 som er placeret ret langt fra papirets kant..

Vi har prøvet at rode med:
setImageableArea() og setSize() på et Page objekt...
Med det resultat at vi godt kan få det ImageableArea til at starte i punktet
0,0 på papiret (øverste venstre hjørne), men når vi så placerer noget i
punktet 0,0 så bliver alt mellem 0,0 og 70,70 klippet fra, så vi stadig har
en ret fed margen på vores papir...

Nogen ideer til hvordan vi kan slippe af med denne margen... Syntes ikke
umiddelbart, at vi kan finde nogle metoder, som sætter størrelsen på
margnen.

--
Mvh.
Ole Lambæk (og resten af banden)
ole(a)lambaek-net.dk
Stadig 2. sem datamatiker stud med alt hvad dette indebærer



Rune Nielsen (21-02-2001)
Kommentar
Fra : Rune Nielsen


Dato : 21-02-01 11:00

Hej,

> Antag at vi f.eks. ønsker at udskrive et jpg billede, hvordan får vi denne
> kastet ind i et image object eller subklasse heraf... ? Også er der noget
> med en ImageObserver, som vi heller ikke har helt styr på...

I kan bruge metoden createImage(URL url) på Toolkit klassen. Du kan få en
instans af klassen ved kalde Toolkit.getDefaultToolkit() og så derefter
kalde
createImage med en URL, der peger på din .jpg fil.

> Jeg gir en omgang på http://fergusons.dk/ebeer/ til den der først kaster
et
> eksempel på: drawImage(), som kaster et f.eks. jpg billede ud uden alt for
> meget fiks faks.

Du kan lige få en kodestump her, som også bruger en MediaTracker til at
styre
tingene:

--- 8< ---
// create a MediaTracker to ensure that the image gets loaded completely and
without errors

MediaTracker tracker = new MediaTracker(new Frame());

try {

tracker.addImage(image, 0);

tracker.waitForAll(0);

}

catch (Exception e) {

e.printStackTrace();

}

g.drawImage(image, x, y, width, height, new Frame()); // draw the image on
the Graphics

--- 8< ---

> Er der forøvrigt nogen der har nogle lækre packages liggende til
> udskrivning... Java's indbyggede funktioner forekommer lidt "tynde", der

> da være nogen der har lavet noget guf.

Jaeh, men ikke noget jeg må poste her :)

Med venlig hilsen,
Rune Nielsen, rn@picit.dk
... datamatiker ;)



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste