Що робить ECI
ECI повідомляє зчитувачу, який набір символів або спосіб інтерпретації даних застосовується до наступних байтів. Без нього зчитувач мусить припустити типове значення або вгадати за самими байтами.
ECI не є унікальним для QR-кодів. Схему визначила AIM, галузева асоціація штрихкодів, і її також підтримують Data Matrix, Aztec, PDF417, MaxiCode та інші символіки.
Як його кодують у QR-коді
Сегмент ECI починається з індикатора режиму 0111, за яким іде номер ідентифікатора ECI завдовжки від одного до трьох байтів. Інтерпретація діє до кінця даних або доки її не змінить інший ECI.
- ECI 3: ISO-8859-1 (Latin-1)
- ECI 20: Shift JIS
- ECI 26: UTF-8
- Ідентифікатори мають діапазон від 0 до 999999
Підтримка на практиці
Підтримка ECI нерівномірна. Промислові та документні сканери часто її враховують, тоді як багато додатків камер телефонів ігнорують її й визначають UTF-8 за аналізом, що працює для більшості сучасного вмісту.
Деякі старіші зчитувачі не очікують заголовка ECI й можуть показати сторонні символи або не розібрати вміст. Для звичайних адрес і простого тексту більшість генераторів пропускають ECI й покладаються на розпізнавання UTF-8.