Impression Brute
L'envoi d'une chaîne de commandes à une imprimante directement dans sa langue maternelle s'appelle l'impression brute.
L'envoi d'une chaîne de commandes à une imprimante directement dans sa langue maternelle s'appelle l'impression brute.
De nombreuses imprimantes thermiques ont besoin de ces commandes brutes pour exécuter des fonctions telles que l'impression de codes-barres, l'impression de reçus, l'impression d'étiquettes, etc. L'impression brute contourne les pilotes de l'imprimante dans la plupart des cas, ce qui les rend très rapides et fiables. L'impression brute est également capable d'exécuter certaines fonctions avancées telles que la découpe du papier des reçus, l'éjection des tiroirs-caisses, etc.
Installation
Suivre le guide d'ERPNext.
- Installer QZ Tray — https://qz.io/download/
- Tester que QZ Tray fonctionne — https://demo.qz.io/
- (Linux : Éventuellement réinstaller QZ Tray en installant certutils d'abord)
- Activer l'impression brute dans les Paramètres d'Impression
- Créer un format d'impression — https://labelary.com/viewer.html
- Imprimer un document en utilisant le format d'impression correspondant
- Sélectionner l'imprimante à utiliser
Développement : tester en créant une imprimante virtuelle
Si la commande lpadmin n'est pas installée, installer CUPS (guide en français).
sudo lpadmin -p tofile -E -v socket://localhost:7777 -m raw
#!/usr/bin/perl
use IO::Socket::INET;
$myport=7777;
$pserve=IO::Socket::INET->new(LocalPort => $myport,Type=>SOCK_STREAM,Reuse=>1,Listen=>1) or die "can't do that $!\n";
while ($pjob=$pserve->accept()) {
open(J,">>/private/tmp/x") or print "having issues $!\n";
print J "New job...\n";
print STDOUT "New job...\n";
while (<$pjob>) {
print J "$_";
print STDOUT "$_";
}
close J;
close $pjob;
}
Source : https://aplawrence.com/MacOSX/macosxcupstofile.html
Pour aller plus loin
https://qz.io/docs/setting-up-a-raw-printer-in-ubuntu-linux
https://askubuntu.com/questions/1051602/virtual-printer
Impression client-side via adresse IP — https://discuss.frappe.io/t/tutorial-printing-directly-to-zebra-label-printer-from-any-local-device/98802