Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Precisione spaziatura orizz.caratteri a video e in stampa

Se metto il testo che segue (nella realtà va a capo dopo le sequenze
"spedita in", "fatture", "Non si", " gli interessi") in una label con font
Arial 8 normale allineato a sinistra:
---inizio testo
CONDIZIONI GENERALI DI VENDITA. La merce viaggia a rischio e pericolo del
Committente anche se spedita in
porto franco. Non si accettano reclami trascorsi 8 giorni dal ricevimento
della stessa. I pagamenti delle fatture
dovranno essere effettuati esclusivamente al ns.domicilio di Cremona, senza
abbuoni nè deduzioni. Non si
riconoscono pagamenti effettuati in altra sede. Trascorso il termine di
pagamento decorreranno gli interessi
commerciali. Per qualsiasi contestazione è competente il solo Foro di
Cremona.
---fine testo
noto una certa rappresentazione della spaziatura orizzontale, in particolare
le sequenze "spedita in" e "fatture" (finali delle prime due righe)
terminano (circa) alla stessa posizione orizzontale.
Ora, se stampo non Printer (ovviamente con identico font) su una Epson
Stylus Color 670 (ma ho provato anche con altre stampanti) le posizioni
finali delle stesse sequenze sono palesemente diverse, in particolare la
prima riga è palesemente più lunga.
Preciso che font e stampanti sono regolarmente installati sulle macchine di
prova.
Ho voluto verificare al di fuori di VB, con WordPad e con Word.
WordPad presenta (a video e in stampa) l'identico problema, Word è
estremamente più preciso, ovvero quel che vedo a video è del tutto simile
(se non identico) a quello che vedo in stampa.
Più precisamente qual che vedo a video con Word (diciamo la prima riga) è
largo quanto sarà largo in stampa o, se preferite, non appare a video
"compresso" come invece appare nella mia label e in WordPad.
Ho duplicato (in tutti gli ambienti di prova, ovvero label in VB, WordPad e
Word) la frase trasformando in minuscolo la sequenza "CONDIZIONI GENERALI DI
VENDITA". Ebbene tutto sembra "sistemarsi" ovunque (almeno appare molto più
coerente quel che si vede a video con quel che si stampa).
Ho notato che anche a video Word "allarga/spazia" tali caratteri maiuscoli
(così come verranno rappresentati in stampa) in modo molto diverso da quel
che invece avviene (anzi, non avviene) con la label e WordPad. In tal modo
il WYSIWYG (o come cavolo si scrive) di Word è più vero di quanto non sia
quelli di label o WordPad.
Ora, mi ruga un tot dover preparare dei moduli (bolle, fatture, etc) a casa
mia, aggiustare quel che vedo a video con quel che (diverso) vedo in stampa
e poi dover risistemare dall'utente solo perchè ha una stampante diversa che
"spazia" più o meno, anche se di poco.
Qualche idea? Grazie.

 stampante diversa che "spazia" piů o meno, anche se di poco.
Stavo persino pensando di trasformare tutte le labels che uso per costruire
a video il mio modulo in RichTextBox, in modo da avere (presumibilmente, non
ho ancora provato) le presunte simil-prestazioni di Word, ovvero di vedere
per davvero quel che vedrň in stampa.
Ah, preciso: tutti i sistemi prima descritti stampano in modo pressochč
identico, il problema č solo la rappresentazione a video che, come potete
ben immaginare, č fondamentale per il "design" dei moduli stessi.

 vedrň in stampa.
No, il RTB a video non si comporta come Word, bensě come una label (proprio
identicamente).
Ho anche notato una cosa (sempre a video): Un Arial 8 accentua l'anomalia,
un Ms San Serif 8 la riduce.
Sto fumando ... in tutti i sensi. :-(

 Sto fumando ... in tutti i sensi. :-(
Ca##o Lupo!
Dove sono finiti i buoni prpositi per l'anno nuovo?
Fatti forza, sususususu.
Ciao, SK
--
La pasienzia non č mai troppo (Totň)
<><><>
Esistono 10 tipi di persone: chi conosce il binario e chi no

 Fatti forza, sususususu.
Grazie. Finisco la stecca e poi basta. Giuro.

 Grazie. Finisco la stecca e poi basta. Giuro.
Prego, buon per te.
Ripeto, stammi bene.


 [CUT]...
Disattiva l'antialiasing dei caratteri a schermo.
-> GbC|
www.gbcweb.com

[*GbC|* = 
info...@gbcweb.com
 in
news:KXxLb.238330$
vO5.9...@twister1.libero.it
] ha scritto:

Ohibò, grazie.
Ora ci provo, sempre che riesca a trovare dov'è 'sta roba. :-(
PS: MaTèMangiPaneEVB? Ah, no, solo VB, perchè il pane ingrassa. ;-) :-P

 PS: MaTčMangiPaneEVB? Ah, no, solo VB, perchč il pane ingrassa. ;-) :-P
Ho cercato in giro per il mondo e ho trovato questi:
"Description of ClarType Font Smoothing Technology in Windows XP"
http://support.microsoft.com/default.aspx?scid=kb;en-us;294851
che mi rimanda a:
"HOW TO: UseClearType to Enhance Screen Fonts in Windows XP"
Ho fatto quel che diceva, ma, oltre che a veder peggio, il problema non
muta...
Ulteriori info? Grazie.

 Qualche idea? Grazie.
avevo trovato un problema simile (credo) per quanto riguarda la spaziatura
verticale delle righe, passando da printer a picture (o viceversa, vedi tu).
altri dettagli sono rintracciabili in un thread tra me e il papero, di cui
non ricordo ne oggetto ne data, ma google potrebbe dire qualcosa, in merito.
la soluzione, nel mio caso, era stata di utilizzare, anche nella picture, la
textheight dichiarata dalla printer per quel font.
per la larghezza la cosa si farebbe un po più complicata: si tratterebbe di
spezzare la stringa "manualmente" sulla printer, e poi utilizzare questa
spaziatura sull'oggetto che interessa.
non so se mi sono capito...
--
Salutoni
Sergio
per rispondere... togli il group dall'indirizzo

[*CSSoft* = 
news...@cssoft2001.com
 in
news:btmdot$8uj8k$
1...@ID-173193.news.uni-berlin.de
] ha scritto:

Sì, ti sei capito, ma nel mio caso non si tratta nè di TextHeight, nè, come
pur potrebbe apparire, di TextWidth.
Non le uso proprio. Semplicemente vorrei che quel che scrivo in una label
(anche di una sola riga) a video corrisponda poi a quel che poi finisce in
stampa, in termini di occupazione orizzontale. Ovviamente a parità di font.
La tecnica di stampa è semplice: disegno il rettangolo (anche
trasparente/assente) corrispondente alla label/cornice e stampa il
testo/Caption in essa contenuto. Spesso e volentieri (se vicino ai limiti)
il testo stampato esce dal bordo, ovvero è più lungo (leggasi "occupa più
spazio orizzontale") di quel che appariva a video.
Accade cioè che io compilo il modulo a video, scrivendo testi in labels. Le
riempio (secondo le dimensioni orizzontali desiderate/imposte) anche per
questioni estetiche, ma quando vado in stampa quella stessa riga (stampata
con un semplice Printer.Print variabile_con_testo_riga) è più lunga.
Esattamente come fa WordPad. Esattamente come non fa (correttamente) Word.
Nel post iniziale ci sono, per chi vuole, tutti gli elementi per provare sul
campo.

 Ulteriori info? Grazie.
Mmm
L'antialiasing (cleartype) in xp migliora la visualizzazione ma, di fatto,
ingrandisce un poco caratteri (e rallenta il piccě). Mi pare inoltre che il
'cleartype' sia studiato per gli LCD.
Non mi sono mai preoccupato della faccenda che ti accascia.
Lascio scrivere agli utenti ciň che vogliono, poi gli lancio un'anteprima e
lascio decidere a loro se va bene o no. Una volta che hanno deciso
l'anteprima la salto...
Componenti come le label e la rtftext non ho mai pensato che fossero
wysiwyg, ma almeno ci si avvicinassero... Mah...
Per l'anteprima uso sta roba qua...
Č scritta da cani ma funziona :)
http://www.gbcweb.com/free/vbsamples/samples_print_EsempioDiStampaCCPconPrnPrv4.zip
Č un esempio di stampa su bollettino CCP che ho fatto per Gigio in 5 (5!)
minuti...
Hola Lupo
-> GbC|
www.gbcweb.com