Os códigos de barras fazem parte do nosso quotidiano. Por exemplo, nos supermercados encontras códigos de barras para todos os gostos e feitios. Há quase tantos códigos de barras quantos produtos a vender! E quando compras cromos para a tua caderneta com o Ronaldo e os outros, lá está mais um código de barras à tua espera...



Que códigos serão estes que, à primeira vista, parecem todos iguais? Serão números “transformados” em barras a preto e branco?

E como se não bastasse, zás!!! Nova invasão, agora de “seres” aparentemente mais sofisticados, com 3 grandes olhos e montes de pontinhos ou quadradinhos pretos aparentemente sem sentido. Até têm vindo a substituir os típicos menus nos restaurantes! Ouvimos dizer que são chamados “Códigos-QR”. E que linguagem será a deles? Que segredos se esconderão no emaranhado de pontos e quadradinhos? Já reparaste que o teu smartphone, pelos vistos, os entende? Mas aposto que TU não! Por isso, desativa lá o modo “I don’t care” e junta-te a nós para perceberes como é que tudo isto funciona. No fim, irás ver que este assunto é afinal muito mais simples do que possas pensar 😜

Um Código-QR não é mais do que uma imagem feita de pontos ou quadradinhos pretos e brancos. Isso mesmo, só há DOIS tipos de pontos ou quadrados: ou são pretos, ou são brancos. Então cá estamos nós novamente num mundo binário, um mundo em que há apenas dois pratos no menu, sejam eles um 0 e um 1, um branco e um preto, um 👍 e um 👎... Ora, podemos encarar um quadradinho branco como um “0” e um quadradinho preto como um “1”, transformando assim cada imagem de um Código-QR em 0s e 1s.


Mas então se as imagens são feitas de 0s e 1s elas podem, como ficamos a saber pelo artigo sobre CRIPTOGRAFIA, codificar todo o tipo de mensagens, como por exemplo um http://... da internet, uma SMS, o identificador de um bilhete de avião, etc. Já agora, “QR” é abreviatura de Quick Response, isto é, Resposta Rápida, em português! Já percebeste a ideia, certo? O objetivo é, com muita rapidez, conseguirmos saber o que “diz a imagem” feita de pontos ou quadradinhos pretos e brancos 😊

E como funciona então um Código-QR? Em primeiro lugar, vamos perceber para que servem os seus três “olhos”, que se encontram nos cantos superiores e no canto inferior esquerdo da imagem. Como se não bastasse o grande olho de Sauron, o Senhor dos Anéis, ... precisamos mesmo de três?

A resposta é sim, precisamos! Os três “olhos” do código são fixos e destinam-se a ajudar o leitor (eletrónico) a encontrar a posição da imagem, pois esta pode estar rodada arbitrariamente. Quanto ao resto da imagem, vamos explicá-la recorrendo a uma versão muito simplificada a que vamos chamar “ENSICO-QR”.

O "ENSICO-QR"

Repara na imagem ao lado. Para além dos três "olhos", há 13 zonas numeradas, cada uma com 4 quadrículas. Umas zonas são quadradas, por exemplo, 1, 2 e 3. Outras são retangulares, por exemplo, 4, 7 e 10.

As retangulares podem estar na horizontal (ex. 4) ou na vertical (ex. 10). As quadrículas a cinzento não se podem usar, têm informação reservada de que o leitor vai precisar. Cada área das 13 numeradas vai conter uma letra do texto a codificar. Essas letras devem ser lidas pela ordem indicada: 1,2,3,...,13.





Mas como são representadas as letras?
É que, a preto e branco, só podemos ter 0s e 1s nas quadrículas...

Bom, mas se cada área representa uma letra e tem 4 quadrículas, basta associar a cada letra quatro quadrículas de 0s e 1s, todas diferentes, por exemplo:

E, com 4 quadrículas, ainda podemos representar mais letras:

Finalmente, vamos acrescentar o espaço e o ponto final, pois podem fazer falta:

Em suma, vamos poder codificar textos até 13 letras, espaços ou pontos. Mas atenção, nota que não conseguimos representar todas as letras, tivemos que fazer uma escolha. E nota também que para termos o alfabeto todo precisávamos de áreas maiores, com mais quadrículas... entendes porquê?

Mas há uma última questão por responder: qual é a ordem de leitura dos 0s e 1s em cada área? Bem, vai depender se é uma área quadrada ou retangular. E, se for retangular, vai depender de se está na vertical ou na horizontal.

Sendo quadrada, lê-se pela ordem indicada no quadrado abcd que podem ver ao lado. Assim, a área 6 vai conter 1 1 0 1 - isto é, a letra O, conforme se pode ver na figura ao lado. Sendo um retângulo horizontal, lê-se da esquerda para a direita. Assim, a área 4 vai conter 1 0 0 0, isto é, a letra I. Sendo um retângulo vertical, lê-se de cima para baixo. Assim, a área 12 vai conter 1 1 0 1, isto é, a letra O.

Com estes códigos “ENSICO-QR” somos então capazes de codificar algumas palavras e frases simples, ao associar a cada letra uma sequência de 0s e 1s e, portanto, de quadradinhos brancos e pretos. Os Códigos-QR “a sério” são bem mais potentes, normalmente de maior dimensão e densidade. O que significa ter “mais zonas de escrita” e “maior número de 0s e 1s” (recorda o que escrevemos sobre bits e bytes no artigo sobre CRIPTOGRAFIA) para representar letras, números e outros caracteres. A boa notícia é que a filosofia é a mesma, o que significa que o que aprendeste aqui te permite entender qualquer Código-QR que encontres pelo caminho, seja ele mais ou menos complexo.

Porque convém não esquecer a máxima que anteriormente referimos:
“one ring to rule them all” 😀

1. Será que consegues descodificar o Código-QR da figura acima?

2. Será que consegues criar a imagem do Código-QR de ANA ALMEIDA. ? Nota: atenção ao espaço a seguir ao ponto final ??

Colaboração de Mano a Mano Graphic Design Club

[Às quintas-feiras, o PÚBLICO na Escola dá espaço às ciências da computação, numa parceria com a ENSICO - Associação para o Ensino da Computação.]




«Foi preciso uma pandemia para o QR Code se impor»

Os códigos QR afirmaram-se indiscutivelmente graças à capacidade de conectar o mundo digital ao físico. Com a pandemia, muitos restaurantes, bares e outros serviços passaram rapidamente a instalar sistemas de código QR quer para consultar os menus, quer para fins de rastreamento. Talvez o mais famoso dos códigos QR seja o Certificado Digital Covid da UE (União Europeia), que é um documento digital que prova que uma pessoa tem a vacinação completa contra a COVID-19, recuperou da doença nos últimos 6 meses ou recebeu um resultado negativo nas últimas 48 horas ou 72 horas (teste TAAN). O certificado pretende facilitar a circulação das pessoas, de forma segura e livre, dentro e fora de Portugal, bem como o acesso a determinados espaços e eventos. Pode ser utilizado em todos os Estados-membros da União Europeia e nos países do Espaço Schengen (Islândia, Liechtenstein, Noruega e Suíça).

Para nos falar sobre este “menino” digital fomos ouvir o seu “encarregado de educação”, Dr. Luís Goes Pinheiro, presidente dos Serviços Partilhados do Ministério da Saúde (SPMS).

1. Tal como a figura abaixo sugere, a representação é:


2. Tal como a figura abaixo sugere, a representação é: