ZINT BarCode для Clarion

Программы на Clarion, шаблоны, библиотеки и пр.
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

ZINT BarCode для Clarion

Сообщение Игорь Столяров »

Библиотека для создания практически любых штрих-кодов.
В примере показан вывод штрих-кодов в окно и отчёт.

(Перекрестная ссылка на альтернативу viewtopic.php?p=40124#p40124) добавил Admin
Вложения
zint-09-02-2020.zip
Версия: 09.02.2020 г.
(378.13 КБ) 58 скачиваний
Последний раз редактировалось Игорь Столяров 09 Февраль 2020, 20:27, всего редактировалось 1 раз.
«V» значит Вендетта !

Аватара пользователя
vic7tar
Ветеран
Сообщения: 323
Зарегистрирован: 09 Февраль 2017, 20:12

ZINT BarCode для Clarion

Сообщение vic7tar »

Вообще-то, где-нибудь надо выложить файлик лицензии автора библиотеки или где-то упомянуть его имя, а не ссылку.
А где русские буквы в QR-code?
C10, Win10x64

Аватара пользователя
RaFaeL
Ветеран
Сообщения: 977
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Контактная информация:

ZINT BarCode для Clarion

Сообщение RaFaeL »

Игорь, вычисление в ZINT:ANSItoUTF8 длины UTF-8 строки как длина строки ANSI, умноженная на 2, ошибочна
Например символ "№" будет 3 байта, а не 2. Соответственно например текст "№№№" правильно не перекодируется. Посмотри, как сейчас сделано в libxlsxwriter - сначала вычисляется требуемая длина строки, и уже затем создается выходная переменная необходимой длины

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

ZINT BarCode для Clarion

Сообщение Игорь Столяров »

RaFaeL писал(а):
04 Февраль 2020, 21:14
умноженная на 2, ошибочна
Согласен, правильную форму перекодировки из ANSI в UTF8 c запросом размера я знаю (она же описана в MSDN) ...
Но это такой экзотический случай с "№№№", что бы городить выкрутасы с выделением памяти … ;)
Как по мне - то проще тогда умножить не на 2, а на 3 и не вспоминать. :)
«V» значит Вендетта !

Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 1529
Зарегистрирован: 06 Ноябрь 2014, 12:48

ZINT BarCode для Clarion

Сообщение finsoftrz »

Кириллица не поддерживается в qr?
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

ZINT BarCode для Clarion

Сообщение Игорь Столяров »

finsoftrz писал(а):
05 Февраль 2020, 8:30
Кириллица не поддерживается в qr?
Прекрасно поддерживается, но только она завёрнута в UTF8.
В оригинальном комплекте ZINT есть файл Manual.txt в котором есть описание допустимых кодировок
для каждого вида кода, что в общем-то и реализовано в методе ZintClass.CheckAndParam() …

Конкретно по QRCode: Input should usually be entered as Unicode (UTF-8) with conversion to Shift-JIS being carried out by Zint.
«V» значит Вендетта !

Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 1529
Зарегистрирован: 06 Ноябрь 2014, 12:48

ZINT BarCode для Clarion

Сообщение finsoftrz »

Если пробовать просто в прилагаемом примере, то не выводится. Я попробовал передать строку в utf8, вывалилась ошибка при сохранении в файле. Наверно, надо вчитываться в код класса, на бегу не получилось.
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

ZINT BarCode для Clarion

Сообщение Игорь Столяров »

finsoftrz писал(а):
05 Февраль 2020, 9:03
Если пробовать просто в прилагаемом примере, то не выводится.
Мне сложно комментировать это сообщение, т.к. я не знаю, что именно Вы делали …
Ничего кодировать в UTF8 не надо однозначно, класс это сделает сам если требуется.

Давайте по другому: к этому сообщению прикреплён пример с кодировкой русского текста в QRCode … ;)
А проверить (прочитать QRCode) можно, например, вот здесь: https://decodeit.ru/qr
Вложения
demo.zip
Русский текст в QRCode
(13.84 КБ) 26 скачиваний
«V» значит Вендетта !

Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 1529
Зарегистрирован: 06 Ноябрь 2014, 12:48

ZINT BarCode для Clarion

Сообщение finsoftrz »

Ничего особенного не делал. В том примере для вывода на экран, который был, вместо цифр поставил русское Привет и вид штрих-кода qr. Потом пикнул со смартфона, выдало абракадабру. Цифры и латиница нормально. Еще app не скомпилилось, перенес код вручную в свое тестовое приложение. У меня такое есть специально для проверки разных вещей.

PS. Примеры лучше прикладывать в clw+prj.
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

ZINT BarCode для Clarion

Сообщение Игорь Столяров »

finsoftrz писал(а):
05 Февраль 2020, 9:30
Еще app не скомпилилось
Пример взял из Examples C6.3 - он практически пустой, у меня нет никаких самопальных шаблонов и т.д.
Под C11 проверил, никаких проблем … Так что Ваше голословное обвинение связано с местными заморочками. ;)

Откуда же я знаю что делает Ваш смартфон, кто и что на него устанавливал … ? :)
Судя по описанию - приложение на смартфоне не знает о существовании национальных кодировок и UTF-8.
Используйте пожалуйста ссылку для проверки QR кода из предыдущего сообщения.
«V» значит Вендетта !

Аватара пользователя
vic7tar
Ветеран
Сообщения: 323
Зарегистрирован: 09 Февраль 2017, 20:12

ZINT BarCode для Clarion

Сообщение vic7tar »

Игорь Столяров писал(а):
05 Февраль 2020, 9:14
Давайте по другому: к этому сообщению прикреплён пример с кодировкой русского текста в QRCode …
Всё равно крякизюбры. :lol:
C10, Win10x64

Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 1529
Зарегистрирован: 06 Ноябрь 2014, 12:48

ZINT BarCode для Clarion

Сообщение finsoftrz »

Игорь Столяров писал(а):
05 Февраль 2020, 10:49
finsoftrz писал(а):
05 Февраль 2020, 9:30
Еще app не скомпилилось
Пример взял из Examples C6.3 - он практически пустой, у меня нет никаких самопальных шаблонов и т.д.
Под C11 проверил, никаких проблем … Так что Ваше голословное обвинение связано с местными заморочками. ;)
Да нет, я просто про общепринятую практику написал. Не все же, к примеру, abc используют.
Игорь Столяров писал(а):
05 Февраль 2020, 10:49
Откуда же я знаю что делает Ваш смартфон, кто и что на него устанавливал … ? :)
Судя по описанию - приложение на смартфоне не знает о существовании национальных кодировок и UTF-8.
Используйте пожалуйста ссылку для проверки QR кода из предыдущего сообщения.
Кстати, да. Приложение на смартфоне не распознает кириллицу. Странно, вроде как стандартное приложение, версия андроида достаточно свежая.
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

ZINT BarCode для Clarion

Сообщение Игорь Столяров »

finsoftrz писал(а):
05 Февраль 2020, 11:45
версия андроида достаточно свежая.
Основное назначение QRCode в смартфонах - это быстрый переход по ссылкам.
Приложение вполне может не знать, что в далёкой России навострились продавать доменные имена в зоне РФ и т.д. ;)

Также есть разные способы указания национальной кодировки в самом коде.
Например префиксы ECI (Extended Channel Interpretations) - их не рекомендуют использовать для традиционной работы,
т.к. требуется аппаратная поддержка распознавания в сканере, но она вполне может быть реализована в приложении смартфона.
Можно попробовать включить префикс ECI для UTF-8 в QR и посмотреть раскодирует ли приложение такой QR код …
«V» значит Вендетта !

kreator
✯ Ветеран ✯
Сообщения: 3615
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

ZINT BarCode для Clarion

Сообщение kreator »

У Айфона с кириллицей всё в порядке, если что.
We are hard at work… for you. :)

kreator
✯ Ветеран ✯
Сообщения: 3615
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

ZINT BarCode для Clarion

Сообщение kreator »

Можно этот QR-код приложить? А то я не могу zip скачать, корпоративный запрет. Я Айфоном посмотрю.
We are hard at work… for you. :)

Ответить