Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Απόλυτη θέση εκτύπωσης σε printer dot matrix

Îåêßíçóå áðü ôï ìÝëïò sovilo. Τελευταία δημοσίευση από το μέλος sovilo στις 13-09-2006, 13:51. Υπάρχουν 8 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  11-09-2006, 15:11 16561

    Απόλυτη θέση εκτύπωσης σε printer dot matrix

    Προσπαθώ να κάνω έναν 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

     

     

     

    Κάθε πρόταση δεκτή.

  •  11-09-2006, 16:55 16565 σε απάντηση της 16561

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    Εχεις κοιτάξει το emulation mode τι ειναι IBM ή EPSON


    George Matzouranis
  •  11-09-2006, 17:29 16574 σε απάντηση της 16565

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    EPSON

    Το πρόβλημα από ότι κατάλαβα είναι ότι δεν περνάνε σωστά η τιμές των n1 και n2.

    Για παράδειγμα αν n1= 104 και n2=1 τότε ο printer τυπώνει 41 χωρίς να μετακινηθεί καθόλου. Όπου το 41 είναι από το n1= 10(4) και n2 =(1). Δηλαδή παίρνει μόνο τα δυο πρώτα ψηφία του n1.

  •  12-09-2006, 12:37 16610 σε απάντηση της 16561

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    ESC $ nL nH

    [Name] Set absolute print position

    [Format] ASCII ESC $ nL nH

    Hex 1B 24 nL nH

    Decimal 27 36 nL nH

    [Range] 0
    0
    [Description] Sets the distance from the beginning of the line to the position at

    which subsequent characters are to be printed.

    • The distance from the beginning of the line to the print position is

    [(nL + nH 5 256) 5 (vertical or horizontal motion unit)] inches.

    [Notes] • Settings outside the specified printable area are ignored.

    • The horizontal and vertical motion unit are specified by GS P.

    • The GS P command can change the horizontal (and vertical)

    motion unit. However, the value cannot be less than the minimum

    horizontal movement amount, and it must be in even units of the

    minimum horizontal movement amount.

    • In standard mode, the horizontal motion unit (x) is used.

    • In page mode, horizontal or vertical motion unit differs

    depending on the starting position of the printable area as follows:

    1 When the starting position is set to the upper left or lower right

    of the printable area using ESC T, the horizontal motion unit (x)

    is used.

    2 When the starting position is set to the upper right or lower left

    of the printable area using ESC T, the vertical motion unit (y) is

    used.

    [Reference] ESC \, GS $, GS \, GS P

    Μήπως αυτό σε βοηθήση.

    Πάντως ρίξε και μια ματιά στο internet με ερώτηση ESC $


    George Matzouranis
  •  12-09-2006, 14:14 16622 σε απάντηση της 16610

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    Κατ’ αρχήν σε ευχαριστώ για τις απαντήσεις.

    Ο τύπος που μου έγραψες είναι ίδιος με αυτόν που χρησιμοποιώ. Αλλά το πρόβλημα δεν είναι πως υπολογίζεις την θέση μετακίνησης (τουλάχιστον όχι ακόμα), αλλά πως στέλνεις το n1 και n2 στον printer.

    Από τις προσπάθεια που έκανα διαπίστωσα (όπως αναφέρω στο δεύτερο post) ότι ο printer δέχεται ένα ψηφίο για το n1 και ένα ψηφίο για το n2. Τα υπόλοιπα ψηφία τα εκτυπώνει. Ας πούμε τώρα ότι δεν με ενδιαφέρει να υπολογίσω την ακριβή μετακίνηση αλλά θέλω ρε παιδί μου να μετακινήσω την κεφαλή του printer με την εντολή της ESC $ n1 n2.

    Ε... ότι και να βάλω στα n1 και n2 ο printer δεν κουνιέται, εκτός και αν το n2 = 7 ή n2=8. Αλλά αν n2 =7 η κεφαλή μετακινείται 5cm και αν n2=8 μετακινείται 10cm περίπου. Τίποτα το ενδιάμεσο όσο και αν προσπάθησα.

    Όσο για το search στο internet που λες ψάχνω 2 εβδομάδες. Βρίκα και ένα κάποιον που έλεγε ότι πρέπει το n1 και n2 να περαστούν σε HEX και όχι σε decimal αλλά από ότι κατάλαβα και αυτός μπερδεμένος ήταν. Τέλος πάντων το προσπάθησα αλλά τίποτα.

    Απογοήτευση:(

  •  12-09-2006, 14:55 16624 σε απάντηση της 16561

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    Μήπως έχει ο Printer option να εκτυπώνει σε ΗΕΧ γιατί θυμάμαι παλιά υπήρχε

    για να δεις τι ακριβώς στέλνεις και τι byte λαμβάνει γιατί λέει το n1 <=255 και δοκίμασε το Dim n1,n2  as Byte

    Ποιός printer είναι?
    George Matzouranis
  •  12-09-2006, 16:40 16631 σε απάντηση της 16624

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    O printer είναι Epson FX-1170 αλλά έχω την εντύπωση ότι σε όλους τους dot matrix τα ίδια θα τραβούσα.

    Δοκίμασα και το n1 as byte. Τίποτα.

    Αφού δέχεται εντολές όπως new line, bold και τα λοιπά σε decimal γιατί να έχει option να εκτυπώνει σε HEX.

    Άσε το άλλο(μόλις τώρα το είδα).

    Του έδωσα εντολή για line reverse ESC ] όπου σε DEC 27 93.

    Αυτός αντί να κάνει Line reverse μετακινήθηκε δεξιά. Αν του στείλω 5 Line reverse μετακινήται 5 θέσεις αριστερά!!!!!!!!

    @#$%#$^^

    Λοιπών το βρήκα.

    Αφού δεν μπορώ να τον μάθω να πηγαίνει στην θέση που θέλω, θα τον μάθω να πετάει....

  •  12-09-2006, 18:29 16645 σε απάντηση της 16561

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    http://esupport.epson-europe.com/FileDownload.aspx?lng=el-GR&ID=18162&data=FF9D054DCD0D6CF34F7B34272CF34C082EB5CE9992B24759BB51971DEE559FD6

    ρίξε και μια ματιά

    Έψαξα και για το manual αλλά δεν το βρήκα

    Το βρήκα :)

    ftp://download.epson-europe.com/pub/download/81/epson8148eu.pdf

    Αν θυμάμε καλά είναι κάποιος συδυασμός πλήκτρων όταν τον ανοίγης

    Υπάρχει Dump HEX Mode

     


    George Matzouranis
  •  13-09-2006, 13:51 16688 σε απάντηση της 16645

    Απ: Απόλυτη θέση εκτύπωσης σε printer dot matrix

    Σε ευχαριστώ θα τα κοιτάξω μήπως βγάλω καμιά άκρη.
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems