Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Java - Stampare più pagine
Forum - Java - Stampare più pagine

Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedì, 01/01/1970
Salve ragazzi,
devo stampare il contenuto di un'area di testo (JTextArea) molto grande e quindi la stampa può occupare più di una pagina.
Il problema è che non riesco a distribuire il testo correttamente su più pagine e soprattutto non riesco a determinare il numero di pagine che saranno stampate.
Qualcuno di voi sa come si fa?
Grazie mille :)

PM Quote
Avatar
newraziel (Normal User)
Newbie


Messaggi: 17
Iscritto: 08/12/2008

Segnala al moderatore
Postato alle 13:46
Mercoledì, 10/12/2008
Ma che devi fa? Devi stampare un mega cartellone formato da 4 fogli A4 per esempio?

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 17:47
Mercoledì, 10/12/2008
no non devo stampare nessun cartellone, devo semplicemente stampare dei testi abbastanza lunghi da non entrare una sola pagina...

PM Quote
Avatar
newraziel (Normal User)
Newbie


Messaggi: 17
Iscritto: 08/12/2008

Segnala al moderatore
Postato alle 9:15
Giovedì, 11/12/2008
beh l'unico trucco è impostare il carattere più grande oppure far credere alla stampante con l'inganno che il foglio è lungo tot! Non saprei veramente aiutarti mi dispiace....

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 12:33
Giovedì, 18/12/2008
salve ragazzi sono sempre io, sono riuscito a stampare su più pagine ma ora mi sono imbattutto in un altro problema in quanto se una riga è troppo lunga durante la stampa mi viene spezzata ma non continua a capo :(
Come classe utilizzo una JTextArea.
Mi domando come posso decidere, sapendo qual è la larghezza del foglio e la lunghezza della stringa, dove spezzare la stringa?

grazie :)

PM Quote
Avatar
mc (Normal User)
Rookie


Messaggi: 52
Iscritto: 04/12/2008

Segnala al moderatore
Postato alle 20:47
Giovedì, 18/12/2008
Devi sapere quanto è grande il carattere e ciò dipende dal font.
Comunque:
Se grandezza_carattere*numero_caratteri >= larghezza_pagina:
Aggiungi un carattere alla stringa.
Sposta di un carattere tutti i caratteri da larghezza_pagina / grandezza_carattere a numero_caratteri.
Setta carattere[larghezza_pagina / grandezza_carattere] a NEWLINE.

Dovrebbe funzionare.

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 21:05
Giovedì, 18/12/2008
RISOLTO!! :asd:
Ho seguito un metodo abbastanza simile a quello che mi hai consigliato:

Ho diviso la stringa in un array di caratteri e ad ogni passo controllo che aggiungendo un nuovo carattere non superi la larghezza della pagina.
Se la supero aggiungo ad un array la stringa che avevo finora e poi ricomincio da capo con la stringa vuota e i caratteri successivi, altrimenti se non la supero aggiungo alla stringa il carattere e continuo. :)

PM Quote