Upload initiale
This commit is contained in:
parent
c445e8563d
commit
34eb0e7882
56
custom.html
Normal file
56
custom.html
Normal file
@ -0,0 +1,56 @@
|
||||
<!doctype html>
|
||||
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<title>Etiquettes</title>
|
||||
|
||||
<link rel="icon" href="favicon.png">
|
||||
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||
|
||||
<link rel="stylesheet" href="css/bootstrap.css">
|
||||
|
||||
<script>
|
||||
function updateTexteCounter() {
|
||||
var input = document.getElementById("texte");
|
||||
var charCount = document.getElementById("texteCharCount");
|
||||
charCount.innerText = input.value.length;
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body class="bg-secondary">
|
||||
<div class="d-flex justify-content-center align-items-center" style="height: 100vh;">
|
||||
<div class="m-4 p-3 rounded border bg-light container" style="max-width: 500px;">
|
||||
<h1 class="text-center">Impression étiquettes<br>personalisées</h1>
|
||||
<form action="print-custom.php" method="post" class="mb-3">
|
||||
|
||||
<div class="mb-3 mt-3">
|
||||
<label for="qtt" class="form-label">Nombre d'étiquettes :</label>
|
||||
<input type="number" name="qtt" id="qtt" min="1" max="35" class="form-control" placeholder="1">
|
||||
</div>
|
||||
|
||||
<div class="mb-3 mt-3">
|
||||
<label for="texte" class="form-label">Texte :</label>
|
||||
<div class="input-group">
|
||||
<input type="text" name="texte" id="texte" maxlength="15" class="form-control" oninput="updateTexteCounter()" required>
|
||||
<span class="input-group-text"><span id="texteCharCount">0</span> / 15</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="d-flex justify-content-center">
|
||||
<input type="submit" value="Imprimer" class="btn btn-primary">
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="d-grid">
|
||||
<a href="/" class="btn btn-secondary btn-block">Étiquette standard</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
48
etiquettes-code-serial.py
Normal file
48
etiquettes-code-serial.py
Normal file
@ -0,0 +1,48 @@
|
||||
import serial
|
||||
import argparse
|
||||
|
||||
# Définissez le port série et la vitesse de communication (baud rate)
|
||||
port = "/dev/ttyS4"
|
||||
baud_rate = 38400
|
||||
|
||||
# Créez un objet de port série
|
||||
ser = serial.Serial(port, baud_rate, timeout=1)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
parser = argparse.ArgumentParser(description="Un script d'impression d'etiquettes sur Zebra")
|
||||
|
||||
# Définition des arguments
|
||||
parser.add_argument("--qtt", type=int, required=True, help="Nombre d'etiquettes")
|
||||
parser.add_argument("--code", required=True, help="Code ZPL")
|
||||
|
||||
# Analyse des arguments de la ligne de commande
|
||||
args = parser.parse_args()
|
||||
|
||||
# Conversion des informations
|
||||
number = int(args.qtt)
|
||||
code = str(args.code)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
for num in range(0, number):
|
||||
|
||||
#print (label)
|
||||
|
||||
# Chaîne de caractères à envoyer
|
||||
message = code
|
||||
|
||||
# Encodez la chaîne en bytes, car les données sur le port série sont transmises sous forme de bytes
|
||||
message_bytes = message.encode('utf-8')
|
||||
|
||||
# Écrivez les données sur le port série
|
||||
ser.write(message_bytes)
|
||||
|
||||
|
||||
|
||||
# Fermez le port série lorsque vous avez terminé
|
||||
ser.close()
|
||||
53
etiquettes-custom-serial.py
Normal file
53
etiquettes-custom-serial.py
Normal file
@ -0,0 +1,53 @@
|
||||
import serial
|
||||
import argparse
|
||||
|
||||
# Définissez le port série et la vitesse de communication (baud rate)
|
||||
port = "/dev/ttyS4"
|
||||
baud_rate = 38400
|
||||
|
||||
# Créez un objet de port série
|
||||
ser = serial.Serial(port, baud_rate, timeout=1)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
parser = argparse.ArgumentParser(description="Un script d'impression d'etiquettes sur Zebra")
|
||||
|
||||
# Définition des arguments
|
||||
parser.add_argument("--qtt", type=int, required=True, help="Nombre d'etiquettes")
|
||||
parser.add_argument("--texte", required=True, help="Texte de l'étiquette")
|
||||
|
||||
# Analyse des arguments de la ligne de commande
|
||||
args = parser.parse_args()
|
||||
|
||||
# Conversion des informations
|
||||
number = int(args.qtt)
|
||||
texte = str(args.texte)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
for num in range(0, number):
|
||||
|
||||
label = texte
|
||||
|
||||
print (label)
|
||||
|
||||
# labelCode = '^XA^FO4,24^BY1^BCN,140,N^FD' + label + '^FS^FO0,190^A0,32,22^FD' + label + '^FS^XZ'
|
||||
labelCode = '^XA^FO15,20^BY2^BCN,80,N^FD' + label + '^FS^FO25,130^A0,50,28^FD' + label + '^FS^FO270,105^XGE:logo100^XZ'
|
||||
|
||||
# Chaîne de caractères à envoyer
|
||||
message = labelCode
|
||||
|
||||
# Encodez la chaîne en bytes, car les données sur le port série sont transmises sous forme de bytes
|
||||
message_bytes = message.encode('utf-8')
|
||||
|
||||
# Écrivez les données sur le port série
|
||||
ser.write(message_bytes)
|
||||
|
||||
|
||||
|
||||
# Fermez le port série lorsque vous avez terminé
|
||||
ser.close()
|
||||
67
etiquettes-serial.py
Normal file
67
etiquettes-serial.py
Normal file
@ -0,0 +1,67 @@
|
||||
import serial
|
||||
import argparse
|
||||
|
||||
# Définissez le port série et la vitesse de communication (baud rate)
|
||||
port = "/dev/ttyS4"
|
||||
baud_rate = 38400
|
||||
|
||||
# Créez un objet de port série
|
||||
ser = serial.Serial(port, baud_rate, timeout=1)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
parser = argparse.ArgumentParser(description="Un script d'impression d'etiquettes sur Zebra")
|
||||
|
||||
# Définition des arguments
|
||||
parser.add_argument("--qtt", type=int, required=True, help="Nombre d'etiquettes")
|
||||
parser.add_argument("--salle", required=True, help="Le nom de la salle")
|
||||
parser.add_argument("--snum", type=int, required=True, help="Numero du pc ou de depart")
|
||||
parser.add_argument("--schar", required=False, default="" , help="Caractère supplementaire a ajouter")
|
||||
|
||||
# Analyse des arguments de la ligne de commande
|
||||
args = parser.parse_args()
|
||||
|
||||
# Conversion des informations
|
||||
numPC = int(args.snum)
|
||||
number = int(args.qtt)
|
||||
salle = str(args.salle)
|
||||
extra = str(args.schar)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
for num in range(int(numPC), number + int(numPC)):
|
||||
|
||||
building_map = {'T': 'AT', 'L': 'LO', 'V': 'VA', 'G': 'GEO'}
|
||||
building_code = salle[0]
|
||||
building = building_map.get(building_code, 'N/A')
|
||||
|
||||
# Vérifie si salle géometre car systeme de notation différent
|
||||
if building == 'GEO':
|
||||
etage = '2'
|
||||
else:
|
||||
etage = salle[1]
|
||||
|
||||
label = building + '-' + etage + '-' + salle + '-' + str(num).zfill(2) + extra
|
||||
|
||||
print (label)
|
||||
|
||||
# labelCode = '^XA^FO4,24^BY1^BCN,140,N^FD' + label + '^FS^FO0,190^A0,32,22^FD' + label + '^FS^XZ'
|
||||
labelCode = '^XA^FO15,20^BY2^BCN,80,N^FD' + label + '^FS^FO25,130^A0,50,28^FD' + label + '^FS^FO270,105^XGE:logo100^XZ'
|
||||
|
||||
# Chaîne de caractères à envoyer
|
||||
message = labelCode
|
||||
|
||||
# Encodez la chaîne en bytes, car les données sur le port série sont transmises sous forme de bytes
|
||||
message_bytes = message.encode('utf-8')
|
||||
|
||||
# Écrivez les données sur le port série
|
||||
ser.write(message_bytes)
|
||||
|
||||
|
||||
|
||||
# Fermez le port série lorsque vous avez terminé
|
||||
ser.close()
|
||||
BIN
favicon.png
Normal file
BIN
favicon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 9.1 KiB |
Loading…
x
Reference in New Issue
Block a user