|
PROFESSIONAL NEWSGROUPS WINDEV, WEBDEV and WINDEV Mobile |
| | | | | |
Android Imprimante Bluetooth en CPCL |
Started by JEQUIDET, Dec., 02 2016 10:25 AM - 11 replies |
| |
| | | |
|
| |
Registered member 66 messages Popularité : +6 (6 votes) |
|
Posted on December, 02 2016 - 10:25 AM |
Bonjour
je veux imprimer en Android avec une imprimante Bluetooth en CPCL en utilisant les sockets (Gracies W. Fernando) voici mon code
tw est une chaîne="SerialPortServiceClass_UUID" adrimp est une chaîne="00:13:7B:5D:EA:8D" sk est une chaîne="Test" sp est une chaîne="$"
imp est une chaîne =""
imp="! 0 200 200 210 2 "+RC
imp+="TEXT 1 0 10 10 COUCOU "+RC imp+="TEXT 1 0 20 28 toto "+RC imp+="TEXT 2 0 25 40 TITI "+RC imp+="TEXT 3 0 27 28 ZoZO "+RC imp+="TEXT 1 0 50 30 DATE = "+DateVersChaîne(DateSys)+" "+RC imp+="PRINT"+RC+RC+RC
SI PAS SocketConnectBluetooth(sk,tw,adrimp,8000) ALORS Info("connexion impossible "+ErreurInfo()) SINON SocketChangeModeTransmission(sk,SocketMarqueurFin,sp) SI SocketEcrit(sk,(imp+sp))=Faux ALORS Erreur(ErreurInfo()) SocketFerme(sk) FIN
en exécution l'imprimante imprime :
TEXT 1 0 10 10 COUCOU TEXT 1 0 20 28 toto TEXT 2 0 25 40 TITI TEXT 3 0 27 28 ZoZO TEXT 1 0 50 30 DATE = 02/12/2016 PRINT
visiblement le codage CPCL n'est pas pris en compte ou peut-être l'erreur merci d'avance |
| |
| |
| | | |
|
| | |
| |
Posted on December, 02 2016 - 1:40 PM |
Bonjour
je ne connais pas ce codage spécifiquement, mais normalement, les codes de contrôles, ce n'est pas du texte simple (ou l'imprimante ne saurait pas comment les différencier du texte, justement)
Donc, les codes de contrôles sont en général binaire, pas chaine, et doivent être envoyées avec la fonction iEscape quand on imprime normalement.
Dans ton cas (par socket), utilise un buffer pour préparer ton envoi et mets dedans les valeurs binaires des codes de controle
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
A votre disposition : WXShowroom.com, WXReplication (open source) et maintenant WXEDM (open source)
Plus d'information sur http://fabriceharari.com
Le 12/2/2016 à 4:25 AM, JEQUIDET a écrit :
Bonjour je veux imprimer en Android avec une imprimante Bluetooth en CPCL en utilisant les sockets (Gracies W. Fernando) voici mon code tw est une chaîne="SerialPortServiceClass_UUID" adrimp est une chaîne="00:13:7B:5D:EA:8D" sk est une chaîne="Test" sp est une chaîne="$"
imp est une chaîne =""
imp="! 0 200 200 210 2 "+RC
imp+="TEXT 1 0 10 10 COUCOU "+RC imp+="TEXT 1 0 20 28 toto "+RC imp+="TEXT 2 0 25 40 TITI "+RC imp+="TEXT 3 0 27 28 ZoZO "+RC imp+="TEXT 1 0 50 30 DATE = "+DateVersChaîne(DateSys)+" "+RC imp+="PRINT"+RC+RC+RC
SI PAS SocketConnectBluetooth(sk,tw,adrimp,8000) ALORS Info("connexion impossible "+ErreurInfo()) SINON SocketChangeModeTransmission(sk,SocketMarqueurFin,sp) SI SocketEcrit(sk,(imp+sp))=Faux ALORS Erreur(ErreurInfo()) SocketFerme(sk) FIN en exécution l'imprimante imprime : TEXT 1 0 10 10 COUCOU TEXT 1 0 20 28 toto TEXT 2 0 25 40 TITI TEXT 3 0 27 28 ZoZO TEXT 1 0 50 30 DATE = 02/12/2016 PRINT visiblement le codage CPCL n'est pas pris en compte ou peut-être l'erreur merci d'avance |
| |
| |
| | | |
|
| | |
| |
Registered member 66 messages Popularité : +6 (6 votes) |
|
Posted on December, 02 2016 - 4:48 PM |
Re
je me réponds à moi même pour eviter aux autres de chercher voic le code qui marche
tw est une chaîne="SerialPortServiceClass_UUID" adrimp est une chaîne="00:13:7B:5D:EA:8D" sk est une chaîne="Test" sp est une chaîne="$"
Imp est une chaîne=""
Imp="! 0 200 200 210 2 "+RC
Imp+="TEXT 1 0 10 10 COUCOU "+RC Imp+="TEXT 1 0 20 28 toto "+RC Imp+="TEXT 2 0 25 40 TITI "+RC Imp+="TEXT 3 0 27 28 ZoZO "+RC Imp+="TEXT 1 0 50 50 DATE = "+DateVersChaîne(DateSys)+" "+RC Imp+="PRINT"+RC+RC+RC
xbuf est un Buffer=Imp
SI PAS SocketConnectBluetooth(sk,tw,adrimp,8000) ALORS Info("connexion impossible "+ErreurInfo()) SINON SocketChangeModeTransmission(sk,SocketMarqueurFin,sp) SI SocketEcrit(sk,(UnicodeVersAnsi(xbuf)+sp))=Faux ALORS Erreur(ErreurInfo()) SocketFerme(sk) FIN
en fait , ce que l'on doit imprimer est à mettre dans un buffer et envoyer son code ANSI
Merci Fabrice |
| |
| |
| | | |
|
| | |
| |
Registered member 123 messages Popularité : +46 (46 votes) |
|
Posted on December, 19 2016 - 1:45 PM |
very good
JEQUIDET a écrit :
Bonjour je veux imprimer en Android avec une imprimante Bluetooth en CPCL en utilisant les sockets (Gracies W. Fernando) voici mon code tw est unechaîne="SerialPortServiceClass_UUID"//nom du service adrimp est unechaîne="00:13:7B:5D:EA:8D"//adresse Citizen CMP-30L en CPCL sk est unechaîne="Test"// nom socket sp est unechaîne="$"//séparateur de socket //a imprimer imp est unechaîne="" imp="! 0 200 200 210 2 "+RC imp+="TEXT 1 0 10 10 COUCOU "+RC imp+="TEXT 1 0 20 28 toto "+RC imp+="TEXT 2 0 25 40 TITI "+RC imp+="TEXT 3 0 27 28 ZoZO "+RC imp+="TEXT 1 0 50 30 DATE = "+DateVersChaîne(DateSys)+" "+RC imp+="PRINT"+RC+RC+RC // SI PASSocketConnectBluetooth(sk,tw,adrimp,8000)ALORS Info("connexion impossible "+ErreurInfo()) SINON SocketChangeModeTransmission(sk,SocketMarqueurFin,sp) SISocketEcrit(sk,(imp+sp))=FauxALORSErreur(ErreurInfo()) SocketFerme(sk) FIN en exécution l'imprimante imprime : TEXT 1 0 10 10 COUCOU TEXT 1 0 20 28 toto TEXT 2 0 25 40 TITI TEXT 3 0 27 28 ZoZO TEXT 1 0 50 30 DATE = 02/12/2016 PRINT visiblement le codage CPCL n'est pas pris en compte ou peut-être l'erreur merci d'avance
-- Atte. Willian Fernando |
| |
| |
| | | |
|
| | |
| |
Registered member 217 messages Popularité : +12 (12 votes) |
|
Posted on December, 29 2016 - 12:11 AM |
Bonjour et merci de votre retour JEQUIDET Juste une petite question, Est ce que le code que vous fournissez concerne un modèle particulier d'imprimante ou peut être adapté à d'autre imprimante? |
| |
| |
| | | |
|
| | |
| |
Registered member 21 messages Popularité : +3 (3 votes) |
|
Posted on July, 20 2017 - 9:19 AM |
Bonjour
Et Vous avez une idée pour imprimer une image?
Merci |
| |
| |
| | | |
|
| | |
| |
Registered member 66 messages Popularité : +6 (6 votes) |
|
Posted on July, 20 2017 - 5:56 PM |
Bonjour
pour les images, elles doivent être en .PCX (Noir/Blanc)
ma doc de la CMP-30 Citizen indique PCX 0 30 !<IMAGE.PCX
mais jamais testé
Bon courage et merci du retour |
| |
| |
| | | |
|
| | |
| |
Registered member 21 messages Popularité : +3 (3 votes) |
|
Posted on July, 24 2017 - 11:02 AM |
Ceci est le SDK envoyé par le fournisseur de mon imprimante bluetooth
byte[] sendData = null; PrintPic pg = new PrintPic(); pg.initCanvas(384); pg.initPaint(); pg.drawImage(0, 0, "/mnt/sdcard/icon.jpg"); sendData = pg.printDraw(); Finally forward the sendData to bluetooth Printer for image printing.
Et on m'a donné ce lien mais j'ai pas encore trouvé une issue pour imprimer une image https://stackoverflow.com/questions/28741707/android-blutooth-printer-printing-html-text |
| |
| |
| | | |
|
| | |
| |
Registered member 3,657 messages Popularité : +175 (223 votes) |
|
Posted on August, 12 2017 - 4:00 PM |
| |
| |
| | | |
|
| | |
| |
Registered member 217 messages Popularité : +12 (12 votes) |
|
Posted on December, 28 2018 - 11:50 AM |
Bonjour, Je vous remercie de cette contribution! Je suis confronté au même problème, lorsque j'envoi du texte en code CPCL à l'imprimante(via socketEcrit), le code CPCL est imprimé tel quel comme si que j'imprimais du texte brute. On doit peut être dire à l'imprimante que la chaine est un code CPCL mais comment ? exemple si j'envoie à l'imprimante le buffer TEXT 1 0 10 10 COUCOU TEXT 1 0 20 28 toto TEXT 2 0 25 40 TITI TEXT 3 0 27 28 ZoZO TEXT 1 0 50 30 DATE = 02/12/2016 PRINT
En exécution, ça imprime ce même texte : TEXT 1 0 10 10 COUCOU TEXT 1 0 20 28 toto TEXT 2 0 25 40 TITI TEXT 3 0 27 28 ZoZO TEXT 1 0 50 30 DATE = 02/12/2016 PRINT
J'utilise bien votre code en faisant passer la chaine en buffer ansi via la fonction UnicodeVersAnsi()), ceci dit l'imprimante ne comprends pas qu'il s'agit d'un code CPCL
tw est unechaîne="SerialPortServiceClass_UUID" adrimp est unechaîne="00:13:7B:5D:EA:8D" sk est unechaîne="Test" sp est unechaîne="$"
Imp est unechaîne=""
Imp="! 0 200 200 210 2 "+RC
Imp+="TEXT 1 0 10 10 COUCOU "+RC Imp+="TEXT 1 0 20 28 toto "+RC Imp+="TEXT 2 0 25 40 TITI "+RC Imp+="TEXT 3 0 27 28 ZoZO "+RC Imp+="TEXT 1 0 50 50 DATE = "+DateVersChaîne(DateSys)+" "+RC Imp+="PRINT"+RC+RC+RC
xbuf est un Buffer=Imp
SI PASSocketConnectBluetooth(sk,tw,adrimp,8000)ALORS Info("connexion impossible "+ErreurInfo()) SINON SocketChangeModeTransmission(sk,SocketMarqueurFin,sp) SISocketEcrit(sk,(UnicodeVersAnsi(xbuf)+sp))=FauxALORSErreur(ErreurInfo()) SocketFerme(sk) FIN |
| |
| |
| | | |
|
| | |
| |
Posted on January, 29 2019 - 2:48 PM |
j'ai un probleme très sérieux je dois faire une application qui va imprimer des tickets avec windev mobile 20 mais je ne sais pas comment m'y prendre. |
| |
| |
| | | |
|
| | |
| |
Posted on July, 20 2020 - 4:34 PM |
je voudrai que vous m'aidiez à imprimer un code barre sur impriment ticket via windev mobile |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|