";
+
+foreach ($skus_to_test as $s) {
+ analyze_sku($s, "Literal en código");
+}
+
+// Simular generación de Barcode con la nueva lógica
+$generator = new BarcodeGenerator();
+echo "
Simulación de Generación CODE128 AUTO
";
+foreach ($skus_to_test as $s) {
+ echo "
Generando para: $s
";
+
+ // Usar reflexión para acceder a getBarcodeData si fuera necesario,
+ // pero como ya actualizamos el archivo, podemos simplemente ver el resultado visual o recrear la lógica aquí para confirmar.
+
+ $code = strtoupper(trim($s));
+ $len = strlen($code);
+ $indices = [];
+ $currentSet = '';
+
+ if (ctype_digit(substr($code, 0, 2))) {
+ $indices[] = 105; // Start C
+ $currentSet = 'C';
+ } else {
+ $indices[] = 104; // Start B
+ $currentSet = 'B';
+ }
+
+ $i = 0;
+ while ($i < $len) {
+ if ($currentSet == 'B') {
+ if ($i + 1 < $len && ctype_digit($code[$i]) && ctype_digit($code[$i+1])) {
+ $indices[] = 99; // Switch to C
+ $currentSet = 'C';
+ continue;
+ }
+ $indices[] = ord($code[$i]) - 32; // Simplificado para B
+ $i++;
+ } else {
+ if (!($i + 1 < $len && ctype_digit($code[$i]) && ctype_digit($code[$i+1]))) {
+ $indices[] = 100; // Switch to B
+ $currentSet = 'B';
+ continue;
+ }
+ $indices[] = (int)substr($code, $i, 2);
+ $i += 2;
+ }
+ }
+
+ $sum = $indices[0];
+ for ($k = 1; $k < count($indices); $k++) {
+ $sum += ($indices[$k] * $k);
+ }
+ $checksum = $sum % 103;
+ $indices[] = $checksum;
+ $indices[] = 106; // Stop
+
+ echo "Índices CODE128 AUTO: " . implode(', ', $indices) . " ";
+ echo "Checksum: $checksum ";
+ echo "";
+}
+?>
\ No newline at end of file
diff --git a/imprimir_etiquetas_termica.php b/imprimir_etiquetas_termica.php
index e477d550..9a39e4d2 100644
--- a/imprimir_etiquetas_termica.php
+++ b/imprimir_etiquetas_termica.php
@@ -50,8 +50,8 @@ if (empty($codes)) {
grid-template-rows: repeat(3, 21mm);
column-gap: 4mm;
row-gap: 3mm;
- padding-left: 2.5mm;
- padding-top: 6.5mm; /* Aumentado de 5mm a 6.5mm */
+ padding-left: 3.5mm; /* Ajustado a 3.5mm */
+ padding-top: 5mm; /* Ajustado a 5mm */
background: white;
box-sizing: border-box;
page-break-after: always;
@@ -73,22 +73,21 @@ if (empty($codes)) {
}
.barcode-container {
- height: 11.5mm;
+ height: 8.5mm; /* Ajustado para que el total con texto sea 12mm */
display: flex;
justify-content: center;
align-items: center;
- margin-top: 1.5mm; /* Añadido margen superior para bajarlo un poco */
+ margin-top: 2mm;
padding: 0;
box-sizing: border-box;
width: 100%;
}
.barcode-container svg {
- height: 11.5mm;
+ height: 8.5mm;
width: auto;
display: block;
margin: 0 auto;
- /* Desactivar suavizado para máxima nitidez */
shape-rendering: crispEdges;
}
@@ -96,10 +95,11 @@ if (empty($codes)) {
font-family: Arial, sans-serif;
font-size: 3.5mm;
font-weight: normal;
- margin-top: 0.5mm;
+ margin-top: 0mm;
width: 100%;
- line-height: 1;
+ line-height: 3.5mm;
color: black;
+ text-transform: uppercase;
}
@media print {
@@ -142,8 +142,9 @@ if (empty($codes)) {