У меня возникла проблема с печатью акцентированных и специальных символов на принтере Zebra ZD420. При печати этикеток акценты и некоторые символы отображаются неправильно. Например, «Code Lot reduit» становится «Code Lot réduit».
Я использую язык ZPL и уже попробовал несколько решений:
Я добавил команду ^CI28 для международного набора символов.
Я добавил ^FH перед каждым текстовым полем (^FD), содержащим специальные символы.
Я сохранил свой файл ZPL в формате UTF-8.
Я пытался закодировать текст в UTF-8 в своем коде C# перед отправкой его на принтер, используя этот код:
У меня возникла проблема с печатью акцентированных и специальных символов на принтере Zebra ZD420. При печати этикеток акценты и некоторые символы отображаются неправильно. Например, «Code Lot reduit» становится «Code Lot réduit». Я использую язык ZPL и уже попробовал несколько решений: Я добавил команду ^CI28 для международного набора символов. Я добавил ^FH перед каждым текстовым полем (^FD), содержащим специальные символы. Я сохранил свой файл ZPL в формате UTF-8. Я пытался закодировать текст в UTF-8 в своем коде C# перед отправкой его на принтер, используя этот код: [code][HttpPost] public IActionResult ImprimerEtiquetteModifiee() { try { // Chemin vers le fichier ZPL d'origine string cheminFichierZPL = Path.Combine(Directory.GetCurrentDirectory(), "etiquette_lot_reduit.prn");
// Vérifier si le fichier existe if (!System.IO.File.Exists(cheminFichierZPL)) { return Json(new { success = false, message = "Fichier ZPL introuvable." }); }
// Lire le contenu du fichier ZPL string contenuZPL = System.IO.File.ReadAllText(cheminFichierZPL, Encoding.UTF8); contenuZPL = ConvertirCaracteresSpeciaux(contenuZPL);
// Remplacer les placeholders (@01, @02, etc.) par des valeurs simulées contenuZPL = contenuZPL .Replace("@01", "CodeLotReduit123") .Replace("@02", "Num OC 456") .Replace("@03", "Quantite 789") .Replace("@04", "CodePF001") .Replace("@05", "ProduitFiniXYZ") .Replace("@06", "Lot987654");
// Créer un nouveau fichier ZPL avec le contenu modifié string fichierModifie = Path.Combine(Directory.GetCurrentDirectory(), "etiquette_modifiee.zpl"); System.IO.File.WriteAllText(fichierModifie, contenuZPL, Encoding.UTF8);
// Chemin UNC de l'imprimante string cheminImprimante = @"\\FRLORBRIPRTA20P\FRLORBRIPRT8002";
// Envoyer le fichier ZPL modifié à l'imprimante via le chemin UNC using (var fileStream = new FileStream(cheminImprimante, FileMode.OpenOrCreate, FileAccess.Write)) { byte[] zplData = Encoding.UTF8.GetBytes(contenuZPL); fileStream.Write(zplData, 0, zplData.Length); }
return Json(new { success = true, message = "Étiquette imprimée avec succès via l'imprimante : " + cheminImprimante }); } catch (Exception ex) { _logger.LogError($"Erreur lors de l'impression : {ex.Message}"); return Json(new { success = false, message = "Erreur lors de l'impression : " + ex.Message }); } }
У меня есть устройство с ОС Yocto Linux, использующее CUPS для печати. Принтер типа ZTC ZD421-203dpi ZPL Версия CUPS — 2.4.1. Попытка печати с использованием следующего PPDS:
Для контекста: наше приложение представляет собой Android WebView, которое загружает URL-адрес (веб-приложение, написанное на React) с функцией печати. Суть приложения заключается в том, что после нажатия кнопки печати оно запускает метод печати на...
Я хотел бы отправить необработанный ZPL на мой принтер Zebra GK420t с помощью какого-либо сценария, в идеале Python, оболочки или просто терминала Windows. Я не хочу использовать какой-либо их фирменный софт, потому что процесс нужно...
Для контекста: наше приложение представляет собой Android WebView, который загружает URL-адрес (веб-приложение, написанное на React) с функцией печати. Суть приложения заключается в том, что при нажатии кнопки печати оно запускает метод печати на...
Устройство Zebra RFID после отключения я не могу повторно подключить, пока не зарядю устройство Zebra снова и не буду использовать его. Я получаю эту ошибку:
D/RFIDAPI3Error( 3867): connected RFD850019240520100016
E/MainActivity( 3867): Error...