View Full Version : [VB6] Utilizzo dell'oggetto printer
scoppato
25-06-2003, 09:36
Ciao a tutti!
Da una query SQL estraggo un record con n campi, ogni campo devo stamparlo all'interno di un modulo prestampato. Tale modulo deve essere stampato su una stampante ad aghi (Epson LX-300+).
Mi è stato detto che in questo caso non posso usare Crystal Report, o comunque un programma di reportistica simile, perchè così facendo stamperei in modalità grafica :confused:
è vero?
se è così come posso usare l'oggetto printer per poter stampare una stringa in una determinata posizione del modulo?
vi ringrazio
maxithron
25-06-2003, 09:49
In generale
Printer.ScaleMode = n(dove n è un numero)
' ti setti il formato della pagina
Altezza=Printer.ScaleHeight
Larghezza=Printer.ScaleWidth
Printer.Print "Il foglio è largo cm";
Printer.Print Larghezza;
Printer.Print "altezza in cm";
Printer.Print Altezza
Printer.EndDoc
' qui setti le posizioni di stampa
Printer.ScaleMode = n
Printer.CurrentX = 2.5
Printer.CurrentY = 4
Printer.Print "qui è la tua stampa"
Printer.EndDoc
'con questo sposti l'allineamento della testina di stampa
Printer.CurrentX = Printer.CurrentX + 5 (per esempio di 5 mm)
Printer.CurrentY = Printer.CurrentY + 3
'con questo dovresti scrivere nella posizione desiderata:
IlTuoTesto = "Io stampo qui"
LarghFoglio = Printer.ScaleWidth
LarghTesto = Printer.TextWidth(Testo)
Printer.CurrentX = LarghFoglio – LarghTesto - n
Printer.Print Testo
scoppato
25-06-2003, 10:10
grande :) :) :)
ma printer.scalemode = n cosa rappresenta?
quando setto i seguenti valori:
Printer.CurrentX = 2.5
Printer.CurrentY = 4
indico il numero di riga e il numero di colonna?
maxithron
25-06-2003, 14:23
printer.scalemode = 5 serve semplicemente a definire una scala.
per la seconda domanda non è che scrivi sulla riga numero X o sulla colonna numero X
ma se metti x=10 vuol dire che ti posizionerà la stampa a 10cm(se i cm sono il nostro riferimento) dal bordo sinistro del foglio e per y=5 a 5cm dal margine superiore del foglio.
scoppato
25-06-2003, 15:08
ti ringrazio per la tua risposta
sei stato molto chiaro :)
la domanda sul posizionamento della stringa da stampare era legata al concetto: "la stampante ad aghi ha due modalità di stampa: testuale e grafica". è giusto oppure sono io che non ho capito niente?
scoppato
26-06-2003, 17:53
up :) :) :)
Da quanto ne so io l'oggetto Printer stampa solo in modalità grafica. Se vuoi stampare utilizzando i caratteri a spaziatura fissa della stampante devi usare le sequenze di escape, che dovresti trovare sul manuale della stampante.
scoppato
26-06-2003, 18:26
grazie per il consiglio
provo a trovare info sulla documentazione :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.