Προσπαθώ να κάνω έναν dot matrix printer να μετακινηθεί και να εκτυπώσει στη θέση που θέλω. Η Εντολές μετακίνησης είναι ESC $ n1 n2 Μετά από αρκετό ψάξιμο βρήκα ότι το n1 είναι το πηλίκο της διαίρεσης και το n2 ο ακέραιος της διαίρεσης από το τύπο που δίνετε από τον κατασκευαστή.
Χρησιμοποίησα τον παρακάτω τύπο αλλά ο εκτυπωτής τυπώνει χωρίς να αντιλαμβάνεται την απόλυτη θέση και μου τυπώνει και ότι θέλει.
Ξέρει κανείς πως θα δαμάσω τον κρουστικό εκτυπωτή?
Παραθέτω και τον κώδικα που χρησιμοποιώ για να δείτε τις πράξεις για την ακριβή θέση μετακίνησης.
Public
Function AbsolutePrintPosition(ByVal length As Double) As Integer
'
'27 36 n1 n2 ESC $ n1 n2 Set Absolute print position
length = length * 0.03937 'conver melimeters to inches
Dim n2 As Integer = Int((length * 360) / 256)
Dim n1 As Integer = (length * 360) - (n2 * 256)
Call Me.Send(Chr(27) & Chr(36) & n1 & n2)
End Function
Κάθε πρόταση δεκτή.