2017-04-27 5 views
0

J'utilise une imprimante thermique Axiohm pour l'impression de reçus POS (USBCOMM.dll pour la communication). Actuellement, je suis capable d'imprimer les détails requis avec une image (fichier .bmp). Maintenant, j'ai besoin d'utiliser une nouvelle image à la place de l'image existante. La nouvelle image contient un code à barres. Lorsque j'essaie d'imprimer la nouvelle image, tout ce que j'obtiens c'est des valeurs de poubelle. Voici le code que j'utilise. Le même code fonctionne avec l'ancienne image mais pas avec la nouvelle image. Y a-t-il un format pour l'image que je dois suivre?impression d'image bitmap à l'aide de axiohm usbcomm dll

Dim filepath As String = AppDomain.CurrentDomain.BaseDirectory + "Resources\PrinterDlls\unnamed.bmp" 

      Using fs = New FileStream(filepath, FileMode.Open, FileAccess.Read, FileShare.Read) 
       Dim inpt As Byte() = New Byte(fs.Length) {} 
       inpt(0) = &H1F 
       fs.Read(inpt, 1, CInt(fs.Length)) 
       Dim ok As Boolean = Usb_WritePort(True, inpt, inpt.Length, written, IntPtr.Zero) 
       If Not ok OrElse written <> inpt.Length Then 
        Throw New Exception("USB write failed") 
       End If 
      End Using 

Répondre

0

Eh bien, c'est embarrassant que je réponds à ma propre question. J'ai cherché un jour pour résoudre et soulevé la question. Peu après, je suis tombé sur cette vidéo youtube qui expliquent l'image bitmap pour créer l'impression thermique

https://www.youtube.com/watch?v=LdB33eWLjgU

, vous devez essentiellement pour assurer 3 choses tout en créant l'image: 1. 8 bits 2 Échelle de gris 3. Enregistrer sous .bmp

Et la nouvelle image fonctionnera comme un charme lors de l'impression. Assurez-vous également que la largeur est inférieure à la largeur du papier.