Brevet FR2986354A1 — publié le 20130802

PROCEDE DE GENERATION D'UN CODE BIDIMENSIONNEL GLOBAL LINEAIRE DOMAINE TECHNIQUE DE L'INVENTION [0001] L'invention se rapporte au domaine des codes bidimensionnels globaux dits codes 2D, notamment imprimables sur un support physique. [0002] On entendra par DOT dans le cadre de la présente demande une surface élémentaire d'information, généralement binaire, sur un support physique quelconque. Cette surface peut avoir des formes diverses : rectangulaire, carrée, ronde etc. ; une couleur et une taille. ETAT DE LA TECHNIQUE ANTERIEURE [0003] Il existe de nombreux codes bidimensionnels (2D) dits « globaux », ou encore « matriciels », qui sont des images créées à partir d'un algorithme. Le plus connu et le plus utilisé en Europe est le Datamatrix. Son pendant asiatique est le QR Code. [0004] Les codes 2D ont pour base des surfaces élémentaires binaires. L'information codée est alors représentée sous forme de bits. Tous ces codes 2D sont créés à l'aide d'un logiciel appelé « générateur » qui code de manière globale une chaîne de caractères en fonction de divers paramètres (taux de redondance, taille des dots."). [0005] Pour enlever ou ajouter un ou plusieurs caractères, les codes 2D industriels imposent une intégration de l'ajout avec une réédition du nouvel ensemble quel que soit le volume de l'ajout. [0006] La forme principale de tous ces codes est carrée. Ils peuvent quelquefois se présenter sous forme rectangulaire. [0007] Leur taille dépend du nombre de caractères à encoder. L'accroissement du nombre de caractères à encoder ne se répercute pas de manière strictement linéaire sur la taille du code. L'accroissement de la taille du code 2D se fait par saut. Autrement dit, la surface d'impression n'est pas directement proportionnelle à la quantité d'informations codées. [0008] Néanmoins un code 2D s'accroît significativement en hauteur et en longueur avec la quantité d'informations codées. Si cette particularité peut être adaptée à des utilisations isolées, elle devient très encombrante voire inutilisable dans un document à mise en page rigoureuse et dont la surface disponible est rare : un courrier marketing, une facture, un contrat, une étiquette, un journal, etc. [0009] Un des inconvénients majeurs de ces codes 2D réside dans le fait qu'ils intègrent des niveaux de sécurité variables grâce à l'introduction d'une redondance de l'information en plusieurs endroits du code afin d'en assurer l'intégrité en cas de destruction partielle. Le taux de redondance d'un code 2D est généralement paramétrable. Si la dégradation du code est supérieure à ce taux de redondance, aucune donnée n'est lue. [0010] Ces codes de type matriciel nécessitent une technologie de capture numérique de l'image (et non un simple faisceau de lecture). [0011] Ces codes 2D globaux ne proposent aucun outil simple de description des données à coder, i.e. de classification 30 des données par type (sémantique), et d'organisation (syntaxe). Ils ne restituent qu'une information faiblement structurée restreignant son exploitation par le récepteur. Ils sont limités par leur structure à des applications très simples où la structure des données est connue au caractère près : incrémentation de nombres, association d'un nombre à une adresse web, codage de chaînes de caractères à faible valeur sémantique, etc. [0012] Un autre inconvénient de ces codes 2D est qu'il est difficile de mixer des types de symboles différents au sein d'une même structure, sauf en mentionnant, par exemple, les 10 différents champs représentées par des balises privées. [0013] Un autre des inconvénients majeurs de ces codes 2D, type Datamatrix ou QR Code, réside dans le fait que pour une utilisation dans le cadre de la certification de documents, par exemple, leur morphologie ne permet pas de les adapter 15 facilement à n'importe quelle forme et dimension de surface d'impression. De plus, leur capacité limitée ne permet pas d'intégrer un grand nombre de données. EXPOSE DE L'INVENTION [0014] L'invention vise à remédier à tout ou partie des 20 inconvénients de l'état de la technique identifiés ci-dessus. [0015] L'invention offre une solution qui a pour avantage de permettre la génération d'un code bidimensionnel global ayant une morphologie linéaire, une capacité illimitée, permettant une modification ou insertion simple de nouvelles données, 25 supportant tout type de données et sécurisé. [0016] Dans ce dessein, un aspect de l'invention se rapporte à un procédé de génération d'un code bidimensionnel global linéaire comprenant les étapes suivantes: configuration de paramètres relatifs à une table de correspondance de données à coder, aux dimensions du code bidimensionnel global linéaire, au volume de données à coder; codage des données sous forme binaire à partir de valeurs définies dans la table de correspondance et de ladite valeur de translation ; génération d'un premier ensemble de symboles dans lequel chaque symbole comporte : au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et une taille; au moins une ligne formant un entête ; une pluralité de lignes comprenant les données binaires codées ; et au moins une ligne formant un pied ; juxtaposition des symboles du premier ensemble de symboles. [0017] Un tel procédé à pour avantage de permettre la génération d'un code bidimensionnel global linéaire dont la capacité est illimitée de par la juxtaposition des symboles représentant les données à coder. Il est possible de juxtaposer autant de symboles que nécessaires. La forme de ce code est linéaire, et ce code est ainsi adapté à tout type de mise en page sur support physique ou électronique, par exemple par insertion dans des factures ou des fax. [0018] De plus, un tel procédé de génération assure une intégration d'un ajout de données, quel que soit le type de données, sans nécessairement devoir générer à nouveau l'ensemble du code. En effet, tous les types de symboles peuvent être juxtaposés sans déclaration de format préalable puisque chaque symbole code son type. [0019] Selon des modes de réalisation particuliers : - l'étape de configuration comprend la configuration de paramètres relatifs à une valeur de translation ; - la taille des DOTs est fonction du ratio du volume de données à coder sur les dimensions du code bidimensionnel global linéaire. Une telle caractéristique a pour avantage de permettre de dimensionner le code bidimensionnel global linéaire en fonction d'un emplacement sur lequel il pourra être déposé ; - l'étape de configuration comprend la définition de données relatives à un calcul de redondance. - le procédé comprend en outre une étape de codage des données relatives à un calcul de redondance sous forme binaire ; - le procédé comprend en outre : - une étape de génération d'un second ensemble de symboles dits symboles de redondance, chaque symbole de l'ensemble comprenant au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et la taille; au moins une ligne formant un entête ; une pluralité de lignes comprenant les données binaires relatives à un calcul de redondance et au moins une ligne formant un pied ; - une étape de juxtaposition du second ensemble de symboles à la suite du premier ensemble de symboles juxtaposés ; - le procédé comprend en outre : - une étape de génération d'un troisième ensemble de symboles dits symboles de redondance, chaque symbole de l' ensemble comprenant au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et la taille; au moins une ligne formant un entête ; une pluralité de lignes comprenant les données binaires relatives à un calcul de redondance et au moins une ligne formant un pied ; - une étape d'insertion de symboles du troisième ensemble entre des symboles du premier ensemble de symboles juxtaposés; - le procédé comprend en outre une étape supplémentaire d'impression du code, l'impression se faisant sur au moins une ligne ; - l'étape d'impression comprend une étape de calcul du nombre de lignes en fonction de la taille des DOTs, du volume de données codées et des dimensions du code bidimensionnel global linéaire. Une telle caractéristique a pour avantage d'assurer que la surface d'impression sera proportionnelle à la quantité d'informations à coder. - la juxtaposition des symboles d'au moins un des ensembles de symboles est réalisée de façon à définir une forme générale dudit code pour une orientation et un sens de lecture convenant à la réalisation d'une étape de décryptage des données par un lecteur optique ; - les dimensions du code bidimensionnel global linéaire correspondent à la surface d'une zone d'affichage d'un support sur lequel ledit code est susceptible d'être imprimé. [0020] L'invention se rapporte également à un code bidimensionnel global linéaire composé d'une juxtaposition d'un ensemble de symboles, chaque symbole comprenant au moins une colonne de DOTs, tel que la taille des DOTs est fonction du ratio du volume de données à coder et des dimensions du code bidimensionnel global linéaire. [0021] L'invention se rapporte également à un programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé de génération d'un code bidimensionnel global linéaire selon l'invention lorsque le programme est exécuté par des moyens de traitement d'un dispositif informatique. BREVE DESCRIPTION DES FIGURES [0022] D'autres caractéristiques et avantages de l'invention ressortiront à la lecture de la description qui suit, en référence aux figures annexées, qui illustrent : la figure 1, les étapes principales permettant la génération d'un code bidimensionnel global linéaire ; la figure 2, les principales étapes du codage de l'information, de la génération du premier ensemble de symboles et de la juxtaposition des symboles du premier ensemble de symboles; la figure 3, un code bidimensionnel global linéaire généré par le procédé selon un mode de réalisation de l'invention; la figure 4, l'impression d'un code bidimensionnel global linéaire sur un support selon un mode de réalisation de l'invention; [0023] Pour plus de clarté, les éléments identiques ou similaires sont repérés par des signes de référence identiques sur l'ensemble des figures. [0024] Dans la description qui suit, l'invention nécessite une convention de sens de lecture des informations. L'invention est indépendante de cette convention. [0025] On nomme un DOT positionné avant un autre DOT dans le sens horizontal, par exemple quand une ligne est considérée, 15 un DOT qui se situe en amont d'un autre DOT dans le sens de lecture conventionnel de gauche à droite. [0026] De manière analogue, on nomme un DOT positionné avant un autre DOT dans le sens vertical, par exemple quand une colonne est considérée, un DOT qui se situe en amont d'un 20 autre DOT dans le sens de lecture conventionnel de haut en bas. MODES DE REALISATION [0027] La figure 1 représente un exemple d'un schéma de principe de fonctionnement des étapes principales permettant 25 la génération d'un code bidimensionnel global linéaire correspondant à une représentation graphique de données. [0028] Une étape de configuration de paramètres, notée DEF. Cette étape permet de configurer les paramètres relatifs à : une table de correspondance des données à coder ; les dimensions du code bidimensionnel global linéaire ; et - un volume de données à coder. [0029] Une étape de codage, notée C, permet de coder des données d'un flux d'information. Ces données peuvent être un ensemble de caractères ou de symboles. [0030] Un calculateur K permet de mettre en oeuvre l'étape de codage de l'information. Le codage comprend la numérisation de données ou le traitement de données déjà numérisées. A chaque caractère, ou balise, ou symbole, est associée une valeur V. Cette valeur V est la valeur du caractère, ou symbole, dans une table de correspondance. [0031] A partir de cette valeur V, le calculateur calcule le polynôme, par exemple en base 2, représentant le caractère. Prenons l'exemple de la lettre I et de la table de correspondance Unicode. La valeur de la lettre I dans la table Unicode est 73. Le polynôme, en base 2, représentant I est PI= 20+ 23 +27. [0032] L'étape de codage permet, en outre, d'encapsuler les données codées par un entête de données et un pied de données. [0033] Outre l'encapsulation des données encodées par un entête et un pied, les données sont ordonnées de manière 25 binaire dans un corps, appelé également coeur, entre le pied et l'entête. [0034] L'étape de génération d'un premier ensemble de symboles, notée G, permet d'associer une symbologie au codage des données. Il s'agit d'une étape de génération d'un premier ensemble de symboles graphiques S. Cette étape comprend la définition d'un ensemble de DOTs. Un DOT est une forme physique comprenant une couleur, une forme et une taille. Cette forme physique peut être carrée, rectangulaire, ronde, sans se restreindre à ces formes. [0035] Dans ce mode de réalisation, nous nous intéressons à la génération de DOTs carrés, ayant une couleur unie. De façon préférentielle, cette couleur est blanche ou noire. Un avantage du choix de ces couleurs est de faciliter la discrimination des DOTs lors d'une lecture du code. [0036] Ces derniers sont agencés sur au moins une colonne et un certain nombre de lignes de manière à définir un symbole 3. Le symbole permet de coder une ou des données à encoder. [0037] Chacun des symboles du premier ensemble de symboles est généré lors de l'étape G. Chaque symbole comporte un entête comportant au moins une ligne, un coeur comportant une pluralité de lignes et un pied comportant au moins une ligne. Le nombre de lignes de chaque symbole peut être différent suivant la nature de la donnée représentée par le symbole. [0038] Sur la figure 1 est représenté un exemple de symbole 3 comprenant 3 colonnes de DOTs agencés sur 11 lignes dont une ligne d'entête, 2 lignes de pied et 8 lignes de coeur contenant la donnée à coder. [0039] L'étape de juxtaposition J consiste à juxtaposer les symboles du premier ensemble de symboles générés lors de l'étape G. La figure 1 représente une zone d'affichage 1 et un code 2 comprenant une pluralité de symboles 3 juxtaposés. Le code 2 peut être lu par un détecteur optique L, par exemple infrarouge. [0040] La figure 2 représente les principales étapes du codage de l'information, de la génération du premier ensemble de symboles et de la juxtaposition de ces symboles : le codage comprend une étape de détermination D du type d'information à coder et de l'identification d'une police éventuelle associée à l'information. On entend par information un ensemble de données ordonnées et typées. Cette étape permet en outre de répartir les données selon un ou plusieurs symboles selon des critères prédéterminés ; une étape, notée Nb C, de détermination du nombre de colonnes de chaque symbole à générer selon les données à encoder ainsi que la définition des DOTs associés. une étape, notée S, de génération des symboles selon le codage des informations. L'étape de génération des symboles comprend l'agencement des DOTs de données ainsi que leur agencement dans l'entête et le pied de chaque symbole ; une dernière étape, notée J, permet de juxtaposer les symboles du premier ensemble de symboles. [0041] Une telle juxtaposition a pour avantage de s'affranchir des limitations de taille. La capacité du code est illimitée, et il est possible de juxtaposer autant de symboles que de données à coder. De plus, la taille du code est ainsi proportionnelle au volume de données à coder. [0042] La taille des DOTs est fonction du ratio du volume de données à coder sur la taille de la zone d'affichage du code, ces critères étant définis à l'étape DEF. Cette taille 30 s'exprime de façon préférentielle en pixels. La taille des DOTs est ajustée en fonction de la zone sur laquelle le code est destiné à être placé. [0043] Dans un mode de réalisation, l'étape de configuration du procédé, peut comprendre la configuration de paramètres relatifs à une valeur de translation. Si une valeur de translation est configurée, à chaque caractère, ou balise, ou symbole, la valeur V, associée, est la somme de : la valeur du caractère, ou symbole, dans une table de correspondance ; et la valeur de translation. [0044] Cette valeur de translation peut être nulle. Lorsque cette valeur n'est pas nulle, elle permet de s'affranchir des problèmes liés à la valeur des caractères de contrôle tels que BS (Backspace). En effet, lors de l'impression de ces caractères, une imprimante en voyant la valeur correspondant au caractère de contrôle BS effectuera un retour en arrière, ce qui est fortement préjudiciable. Afin de s'affranchir de ce problème, la valeur de translation peut être de 256, afin de décaler de 255 les valeurs des données à coder. Cette valeur de translation devra être prise en compte au moment d'un décodage du code généré. [0045] La figure 3 représente un code bidimensionnel global linéaire généré par le procédé. Dans cet exemple, le code généré comprend une première partie Fl comprenant une pluralité de DOTs (non visibles entièrement sur la figure 3) ordonnées en lignes et colonnes définissant les données encodées par l'étape d'encodage de l'information. En outre, il comprend une seconde partie F2 définissant l'entête de la matrice composée d'une pluralité de DOTs et une troisième partie F3 comprenant une pluralité de DOTs ordonnées en lignes et colonnes définissant un pied du code. [0046] L'entête comprend des motifs formés de DOTs permettant notamment la détection d'un symbole ou de l'orientation du code par un lecteur optique. L'entête peut avoir plusieurs formes : celle d'une ligne continue (composante connexe) qui sert à repérer une ligne de symboles ainsi que sa dimension et ses limites en cas de superposition des lignes de symboles. il peut aussi être composé d'une ligne composée de dots de parités complémentaires de ceux du pied. [0047] Le code comprend une troisième partie F3 comprenant une pluralité de DOTs ordonnées en lignes et colonnes définissant un pied du code. Le pied du code comprend des motifs formés de DOTs permettant par exemple de déterminer notamment le pas d'un DOT, c'est-à-dire sa taille en pixels. Avantageusement, cette information permet à un lecteur optique de détecter la taille d'un DOT et d'adapter l'interprétation des données au pas de lecture du code à analyser. Le pied est constitué : - d'une dernière ligne constituée, soit de dots de parité, généralement impairs, soit d'un crénelage régulier ou d'une échelle graphique pour repérer les colonnes - d'une avant-dernière ligne qui code la dernière colonne des symboles ; et - et des 2 lignes qui précèdent l'avant-dernière ligne qui codent le type de symboles (caractères, balises simples ou élargies etc..). [0048] Dans l'exemple de la figure 3, le code généré comprend une pluralité de symboles juxtaposés, notés Sl, S2, S3, S4, S5, S6, S7. Dans cet exemple, chaque symbole comprend un nombre de lignes identiques et un nombre de colonnes propre à chaque symbole. [0049] Différentes techniques permettent de discriminer les 5 symboles entre eux notamment quand leur juxtaposition ne permet pas simplement de les différencier : l'échelle graphique de la dernière ligne du pied ; une ligne de parité ; une sommation verticale des détections de transitions 10 dot noir/dot blanc et dot blanc/dot noir sur les différentes lignes. [0050] Des erreurs de lecture d'un code bidimensionnel global linéaire peuvent survenir pour différentes raisons, notamment du fait : 15 - de la taille des DOTs qui peut-être réduite au maximum de manière à condenser le plus possible l'information codée ; ou encore - d'un support physique se dégradant à cause de la souplesse permettant au support de se plier et de 20 s'abimer ; ou encore - d'une impression se superposant telle qu'une signature pouvant gêner l'interprétation des données ; - que les niveaux de gris des DOTs puissent être 25 difficilement discriminables, notamment avec l'usure causée par la dégradation du support dans le temps ou un éclairage défectueux. [0051] De manière à éviter les erreurs de lectures et à optimiser le décodage des données, il est possible, dans des modes de réalisation, de générer des ensembles de symboles de redondance. [0052] Dans ce cas, il est possible de définir des données relatives à un calcul de redondance lors de l'étape de configuration du procédé. Ces données sont : le type de calcul de redondance à effectuer : par exemple Hamming ou Reed Solomon ; et le fait de les associer ou de les utiliser de façon séparée ; le pourcentage de données de redondance par rapport aux données à coder. [0053] Lorsqu'un calcul de redondance de Reed Solomon est choisie, la taille de l'image varie linéairement jusqu'à un seuil où elle subit un bond, puis linéairement ensuite jusqu'à un seuil suivant. Ce seuil varie suivant la configuration de Reed Solomon retenue, c'est-à-dire suivant le pourcentage de données de redondance par rapport aux données à coder. Par exemple pour une configuration « 44+15 », c'est-à-dire une configuration telle qu'il y a 15 symboles de redondance pour 44 symboles de données à coder, la longueur 1 du code, pour n symboles de données à coder au total sera : 0 à 44, 1=n+15 ; 15 +15 ; pour n allant de pour n allant de pour n allant de 45 à 89, 1 = n+ +15 + 15 ; 90 à 134, 1 = n et ainsi de suite. D'autres configurations de calcul Reed Solomon existent, par exemple « 115 + 40 ». [0054] Une fois les données, relatives à un calcul de redondance, définies, le procédé code lesdites données sous 5 forme binaire. [0055] Dans un mode de réalisation, le procédé peut comprendre une étape de génération d'un second ensemble de symboles dits symboles de redondance. Ces symboles ont pour caractéristique de coder une information de redondance d'une 10 ligne de DOTs d'une pluralité de symboles du premier ensemble de symboles. Ils peuvent comporter de façon avantageuse une information permettant de connaitre le nombre de symboles du premier ensemble de symboles dont ils codent la redondance. Chaque symbole du second ensemble de symbole comporte : 15 au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et une taille fonction du ratio du volume de données à coder sur la taille de la zone d'affichage du code; au moins une ligne formant un entête ; 20 une pluralité de lignes comprenant les données binaires relatives à un calcul de redondance ; au moins une ligne formant un pied ; [0056] Après la génération du second ensemble de symboles, le procédé comporte une étape de juxtaposition de ce second 25 ensemble de symboles à la suite du premier ensemble de symboles juxtaposés. Une telle étape a pour avantage d'assurer que toute l'information ne sera pas perdue lorsque certaines parties du code 2D seraient illisibles. En effet, même si les parties illisibles du code dépassent le taux de redondance programmé, il sera possible de lire les parties non affectées du code. [0057] Dans un autre mode de réalisation, le procédé peut comprendre une étape de génération d'un troisième ensemble de 5 symboles dits symboles de redondance. Ces symboles ont pour caractéristique de coder une information de redondance d'une ligne de DOTs d'une pluralité de symboles du premier ensemble de symboles. Ils peuvent comporter de façon avantageuse une information permettant de connaitre le nombre de symboles du 10 premier ensemble de symboles dont ils codent la redondance. Chaque symbole du troisième ensemble de symbole comporte : au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et une taille fonction du ratio du volume de données à coder sur la taille de 15 la zone d'affichage du code; au moins une ligne formant un entête ; une pluralité de lignes comprenant les données binaires relatives à un calcul de redondance ; au moins une ligne formant un pied ; 20 [0058] Après la génération du troisième ensemble de symboles, le procédé comporte une étape d'insertion de symboles du troisième ensemble de symboles entre des symboles du premier ensemble de symboles juxtaposés. Une telle étape a pour avantage d'assurer que toute l'information ne sera pas 25 perdue lorsque certaines parties du code 2D seraient illisibles. En effet, même si les parties illisibles du code dépassent le taux de redondance programmé, il sera possible de lire les parties non affectées du code. [0059] Dans des modes de réalisation, après les étapes : de juxtaposition des symboles du premier ensemble de symboles ; ou de juxtaposition des symboles du second ensemble de symboles à la suite des symboles du premier ensemble de symboles ; ou d'insertion des symboles du troisième ensemble de symboles entre les symboles du premier ensemble de symboles juxtaposés, en combinaison, éventuelle, avec l'étape de juxtaposition des symboles du second ensemble de symboles à la suite des symboles du premier ensemble de symboles ; le code peut être imprimé sur au moins une ligne. La figure 4 illustre une impression d'un exemple de code généré sur plusieurs lignes. La ligne 21 est une ligne sur laquelle est imprimé une partie du code. Cette étape d'impression comporte une étape de calcul du nombre de lignes sur lesquelles sera imprimé le code. Le nombre de lignes est calculé en fonction de la taille des DOTs, du volume de données codées et des dimensions du code. [0060] Cette impression du code, qui est l'impression de la juxtaposition des symboles est réalisée de façon à définir une forme générale du code pour une orientation et un sens de lecture convenant à la réalisation d'une étape de décryptage des données par un lecteur optique. En effet, la première et la dernière ligne du code, ou de chacune des parties du code lorsqu'il est imprimé sur plusieurs lignes tel que cela est illustré à la figure 4, comprennent des informations concernant la composante connexe et les dots de parité. Ceci définit un sens d'orientation du code. [0061] Suivant les modes de réalisations le code peut-être imprimé sur n'importe quel support de type papier, plastique, ou tout autre support imprimable. [0062] Dans le cadre de l'impression du code sur un support 5 20, tel qu'illustré à la figure 4, les dimensions du code correspondent à la surface de la zone d'affichage disponible sur le support sur lequel le code est imprimé. Ainsi dans le cas de l'authentification d'une facture, par exemple, une zone sera réservée sur la facture à l'impression du code, qui 10 peut avoir pour fonction d'authentifier la facture. Les dimensions de cette zone correspondent aux dimensions du code. [0063] L'invention concerne, également, un code bidimensionnel global linéaire. Ce code bidimensionnel global 15 linéaire est la juxtaposition d'un ensemble de symboles représentant des données à coder. Chaque symbole de cet ensemble de symboles comprend au moins une colonne de DOTS dont la taille est fonction du ratio du volume de données à coder et des dimensions du code bidimensionnel global 20 linéaire, par exemple lors de son impression sur un support physique. Ces dimensions du code bidimensionnel global linéaire sont les dimensions attendues, c'est-à-dire les dimensions de la zone sur laquelle sera imprimé ou représenté ledit code. 25 [0064] L'invention concerne enfin un programme d'ordinateur, exécutable par des moyens de traitement d'un dispositif informatique, pour l'exécution d'un procédé de génération d'un code bidimensionnel global. Ce programme regroupe en un seul traitement toutes les opérations réalisées 30 séquentiellement par un générateur de polices d'une part, puis d'autre part, par un éditeur de textes qui met en oeuvre ces polices. Ainsi ce programme créera successivement chaque symbole suivant une structure donnée puis assemblera les symboles suivant les critères de composition imposés. Pour une structure de symbole donnée, correspond un logiciel générateur à moins de paramétrer le choix des structures dans le générateur. Dans l'autre cas le changement de structure des symboles se fait en changeant de police dans le générateur de polices. [0065] L'invention a été illustrée et décrite en détail dans les dessins et la description précédente. Celle-ci doit être considérée comme illustrative et donnée à titre d'exemple et non comme limitant l'invention à cette seule description. De nombreuses variantes de réalisation sont possibles. [0066] Dans les revendications, le mot « comprenant » n'exclut pas d'autres éléments et l'article indéfini 15 « un/une » n'exclut pas une pluralité. REVENDICATIONS1. Procédé de génération d'un code bidimensionnel global linéaire comprenant les étapes suivantes: configuration de paramètres relatifs à une table de correspondance de données à coder, aux dimensions du code bidimensionnel global linéaire, au volume de données à coder; codage des données sous forme binaire à partir de valeurs définies dans la table de correspondance et de ladite valeur de translation ; génération d'un premier ensemble de symboles dans lequel chaque symbole comporte : au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et une taille; au moins une ligne formant un entête ; une pluralité de lignes comprenant les données binaires codées ; et au moins une ligne formant un pied ; juxtaposition des symboles du premier ensemble de symboles. 2. Procédé selon la revendication 1 caractérisé en ce que l'étape de configuration comprend la configuration de paramètres relatifs à une valeur de translation. 3. Procédé selon l'une quelconque des revendications précédentes caractérisé en ce que la taille 30 des DOTs est fonction du ratio du volume de données à coder sur les dimensions du code bidimensionnel global linéaire. 4. Procédé selon la revendication 1 caractérisé en ce que l'étape de configuration comprend la définition de données relatives à un calcul de redondance. 5. Procédé selon la revendication 4 caractérisé en ce qu'il comprend une étape de codage des données relatives à un calcul de redondance sous forme binaire. 6. Procédé selon les revendications 3 et 5 caractérisé en ce qu'il comprend : une étape de génération d'un second ensemble de symboles dits symboles de redondance, chaque symbole dudit ensemble comprenant : au moins une colonne de DOTs, chaque DOT comprenant une couleur, une forme et la taille; au moins une ligne formant un entête ; une pluralité de lignes comprenant les données binaires relatives à un calcul de redondance ; au moins une ligne formant un pied ; une étape de juxtaposition du second ensemble de symboles à la suite du premier ensemble de symboles juxtaposés. 7. Procédé selon les revendications 3 et 5 caractérisé en ce qu'il comprend : une étape de génération d'un troisième ensemble de symboles dits symboles de redondance, chaque symbole dudit ensemble comprenant : au moins une colonne de DOTs de taille prédéfinie, chaque DOT comprenant une couleur, une forme et la taille;- au moins une ligne formant un entête ; - une pluralité de lignes comprenant les données binaires relatives à un calcul de redondance ; - au moins une ligne formant un pied - une étape d'insertion de symboles du troisième ensemble entre des symboles du premier ensemble de symboles juxtaposés. 8. Procédé selon l'une quelconque des revendications précédentes caractérisé en ce qu'il comprend une étape supplémentaire d'impression du code, l'impression se faisant sur au moins une ligne. 9. Procédé selon la revendication 8 caractérisé en ce que l'étape d'impression comprend une étape de calcul du nombre de lignes en fonction de la taille des DOTs, du volume de données codées et des dimensions du code bidimensionnel global linéaire. 10. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que la juxtaposition des symboles d'au moins un des ensembles de symboles est réalisée de façon à définir une forme générale dudit code pour une orientation et un sens de lecture convenant à la réalisation d'une étape de décryptage des données par un lecteur optique. 11. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que lesdites dimensions du code bidimensionnel global linéaire correspondent à la surface d'une zone d'affichage d'un support sur lequel ledit code est susceptible d'être imprimé. 12. Code bidimensionnel global linéaire composé d'une juxtaposition d'un ensemble de symboles, chaque symbole comprenant au moins une colonne de DOTs, caractérisé en ce que la taille desdits DOTs est fonction du ratio du volume de données à coder et des dimensions du code bidimensionnel global linéaire. 13. Programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé de génération d'un code bidimensionnel global linéaire selon l'une des revendications 1 à 11 lorsque ledit programme est exécuté par des moyens de traitement d'un dispositif informatique.15