QR - код
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
QR - код
Ни в Хроме, ни в Лисе не хочет, а в Торе все нормально, хотя везде стоят одни и те же дополнения, блокировщики...
C10, Win10x64
QR - код
Qr код нужен для печати на квитанциях. При отправке по Email с внедренным шрифтом получается ерунда. Zint формирует картинку малого размера. Пробовал Zint.exe для проверки. Проверку на сайте Сбера http://sbqr.ru/validator/index.html проходит , но если 1251, отображается все правильно, а если перекодировать в utf-8, кириллица не читаемый текст. В программе конечно нужно с помощью Zint.dll. Попробовал - ошибка ZINT_ERROR_INVALID_OPTION. Где-то в Инете попадалось что у них на сайте не так описана структура. Вообще с помощью Zint можно генерировать много разных кодов и она бесплатна. Cstr Юрия Философова прилагаю.
- Вложения
-
- Cstr.zip
- (2.15 КБ) 149 скачиваний
QR - код
Структура взятая из zint.h
Продвинулся немного дальше. Теперь 9_ Error 658: Insufficient memory for pixel buffer.
Если кто-то уже использует Zint.dll, поделитесь кодом. А то при моем уровне долго буду биться.
Код: Выделить всё
Zint_symbol GROUP,PRE(znt)
symbology LONG
height LONG
whitespase_width LONG
border_width LONG
output_options LONG
fgcolour STRING(10)
bgcolour STRING(10)
outfile CSTRING(256)
scale SREAL(1.0)
option_1 LONG
option_2 LONG
option_3 LONG
show_hrt LONG(1)
input_mode LONG
eci LONG
text STRING(128)
rows LONG
width LONG
primary STRING(128)
encoded_data BYTE,DIM(200,143)
row_height LONG,DIM(200)
errtxt STRING(100)
bitmap &STRING
bitmap_width LONG
bitmap_height LONG
bitmap_byte_length long
dot_size SREAL
rendered &STRING
debug LONG
END
Если кто-то уже использует Zint.dll, поделитесь кодом. А то при моем уровне долго буду биться.
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
QR - код
Сделал у себя:
Код можете попробовать распознать мобилой.
Код: Выделить всё
LOC:TempString = 'Кларион велик'
len# = len(clip(LOC:TempString))
LOC:String1 &= new(cstring(len# * 2))
LOC:String2 &= new(cstring(len# * 2))
i# = MultiByteToWideChar(CP_ACP, 0, address(LOC:TempString), len#, address(LOC:String2), len#*2)
if i#
i# = WideCharToMultiByte(CP_UTF8, 0, address(LOC:String2), i#, address(LOC:String1), len#*2, 0, 0)
LOC:QRCode = GetQRCode(LOC:String1)
end
We are hard at work… for you.
QR - код
Генерит очень много кодов. Бесплатно. Создает картинки малого размера. Пробовал qrcodelib.dll - FastQRCode , картинка ~160 кб, Zint - если .BMP то ~ 2 с чем-то кб, если .PNG меньше 1 кб. Пробовал QRCodeFont.dll - требуется устанавливать шрифт, невозможно отослать кому-то документ с QR кодом, т.к. нужно отсылать еще и шрифт. А если рассылаю квитанции на оплату несколько тысяч. Zint позволяет формировать код в Buffer.
Мне например нужно печатать QR и Code128B. Code128 печатаю с помощью Taboga. QR другим. Zint.exe получается, но мелькает черное DOS окно.
Если научиться с помощью Zint.dll, то можно сформировать практически любой штрих код. Список см. у них на сайте. Я думаю полезно было-бы всем. Валерий Будько на ClaList вроде-бы пользует. Если-бы поделился своим классом с сообществом как Юрий Философов - то думаю многие ему были-бы благодарны.
Мне например нужно печатать QR и Code128B. Code128 печатаю с помощью Taboga. QR другим. Zint.exe получается, но мелькает черное DOS окно.
Если научиться с помощью Zint.dll, то можно сформировать практически любой штрих код. Список см. у них на сайте. Я думаю полезно было-бы всем. Валерий Будько на ClaList вроде-бы пользует. Если-бы поделился своим классом с сообществом как Юрий Философов - то думаю многие ему были-бы благодарны.
QR - код
Мобильник сдох, пока пользуюсь кнопочным. На Qrrd проверил, читается правильно. Значит что-то не так у меня. Если не сложно отошли или покажи Clarion.env.
В ProgramSetup
Может здесь собака зарыта?
В ProgramSetup
Код: Выделить всё
Locale('Windows')
system{prop:charset}=charset:cyrillic
SYSTEM{PROP:FontCharSet + PROP:TipsFont} = CHARSET:CYRILLIC
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
QR - код
Причём тут Clarion.env. Может Program.env? Да и то не причём. В описании qr-кода написано, что строка может содержать кодировку win1251 или utf-8. Но возможно конвертеры и считыватели этого не хотят знать. Скорее проблема со считывателем. Конвертеру по барабану. Utf-8 должен работать железно. Что нужно подсунуть этому zint'у? Строку в utf-8? Проверь на всякий случай свою формируемую строку. ИМХО, надо начать со строки utf-8.
We are hard at work… for you.
QR - код
Код: Выделить всё
// zint.h
...
int show_hrt;
int fontsize;
int input_mode;
int eci;
...
C10, Win10x64
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
QR - код
Привет всем и с завершением Новогодних праздников !
Нет ли у кого-нибудь рабочего примера для работы с библиотекой ZINT в Clarion
(структура данных, прототипы функций, пример генерации какого-нибудь кода) ?
Так сказать, для стартапа … Заранее спасибо !
Нет ли у кого-нибудь рабочего примера для работы с библиотекой ZINT в Clarion
(структура данных, прототипы функций, пример генерации какого-нибудь кода) ?
Так сказать, для стартапа … Заранее спасибо !
За теми кто отстал - не возвращаться. (С) Кодекс