CLASSE GÉNÉRATEUR DE CODES BARRES 2D DATAMATRIX

Optitech Messages postés 134 Date d'inscription samedi 19 octobre 2002 Statut Membre Dernière intervention 3 janvier 2009 - 22 août 2010 à 11:48
Yves29 Messages postés 12 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 23 avril 2018 - 5 nov. 2013 à 11:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52211-classe-generateur-de-codes-barres-2d-datamatrix

alrob Messages postés 1 Date d'inscription samedi 26 mai 2012 Statut Membre Dernière intervention 26 mai 2012
26 mai 2012 à 01:06
Merci TorTukiTu pour cette classe. Je l'utilise en mode test pour un projet et l'image est belle et bien générée et ce même si je reçois ce genre de notification à l'écran : Notice: Uninitialized string offset: 13 in /home/lab/public_html/experiments/2dcode/tents/datamatrix.php on line 587. Quelqu'un à déjà eu ce problème ?
Arnaud.f123 Messages postés 23 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 13 novembre 2013 > alrob Messages postés 1 Date d'inscription samedi 26 mai 2012 Statut Membre Dernière intervention 26 mai 2012
23 août 2013 à 16:23
Super et merci pour ton code, je ne l'ai pas testé en php car je le traduis en VBA pour Excel.

Sinon je pense qu'il il y a une coquille dans la déclaration de la table ECC 200, il y a un 14 en trop.

//coquille un 14 en trop
 25 => Array(18,18,16,1,16,18,14,14,18,14,1,36,25,16,43.8,'7/11'),
//mais plutôt :
25 => Array(18,18,16,1,16,18,14,18,14,1,36,25,16,43.8,'7/11'),


A+
Arnaud
Yves29 Messages postés 12 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 23 avril 2018 3 > Arnaud.f123 Messages postés 23 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 13 novembre 2013
5 nov. 2013 à 11:31
Tu as réussi à traduire le PHP en VBA ?
Si c'est le cas, ça m'intéresse.
.
kevgd Messages postés 3 Date d'inscription lundi 11 décembre 2006 Statut Membre Dernière intervention 13 novembre 2010
8 nov. 2011 à 23:56
Bonjour,

j’étudie en se moment la data-matrix mais je bloque sur le reed solomon par exemple si je code sur une data de 10 sur 10 les chiffres "479852" j'ai mes trois data 177 228 et 182 mais comment calculer les 5 valeurs d'erreur quelles valeurs je doit prendre et sous quel base ? binaire ou décimal et surtout le principe de calcul. Je connais pas le php donc je comprend pas trop car je code sous visual basic 6.

Si vous pouvez m'explique la fonction que vous avez faite ce serais très gentil. Merci
elmeksaoui1 Messages postés 26 Date d'inscription mercredi 29 octobre 2008 Statut Membre Dernière intervention 25 février 2016
5 oct. 2011 à 19:42
bonjour,

j 'ai implémenter la classe mais rien n afficher sur ma page. qlqun peut m aider ?
TorTukiTu Messages postés 31 Date d'inscription samedi 22 avril 2006 Statut Membre Dernière intervention 18 avril 2011 1
1 nov. 2010 à 21:30
Vous trouverez une démo en ligne sur http://www.openbio.fr/ section "outils en ligne"

Patientez un moment entre chaque chargement. Si vous avez un souci, essayez avec Firefox.

Voici un lien direct vers la source de la démo:

http://www.openbio.fr/php/datamatrix_demo.tar.gz
TorTukiTu Messages postés 31 Date d'inscription samedi 22 avril 2006 Statut Membre Dernière intervention 18 avril 2011 1
1 nov. 2010 à 19:25
Tu inclus la classe dans ton script. Ensuite, tu procède comme suit:

<?php
$string = "(01) ".$donnees['cip13']."(17)".$donnees['date']."(10)".$donnees['lot'];
$datamatrixMaker = new datamatrix($string);
$datamatrixMaker->stroke();
unset($datamatrixMaker);
?>

Il peut y avoir des fautes de frappes mais l'idée est là.
infograph61 Messages postés 34 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 19 janvier 2011
30 oct. 2010 à 16:35
Bonjour,
je voudrais testé cette class, mais voilà mes compétences ne vont pas jusque là.
En fait,j'ai un ligne de texte de 40 caractères issue de :
"(01)<?php echo $donnees['cip13']; ?>(17)<?php echo $donnees['date']; ?>(10)<?php echo $donnees['lot']; ?>"

est il réaliste de vouloir générer un datamatrix sur une page php en fonction de cette ligne
Si oui, comment pourrai je faire.?
merci d'avance pour votre aide.
Cordialement
infograph61
cs_sucsuc Messages postés 1 Date d'inscription mercredi 1 septembre 2010 Statut Membre Dernière intervention 1 septembre 2010
1 sept. 2010 à 21:45
Merci beaucoup, ça marche très bien.
TorTukiTu Messages postés 31 Date d'inscription samedi 22 avril 2006 Statut Membre Dernière intervention 18 avril 2011 1
1 sept. 2010 à 20:49
Voilà, c'est fait SWISSCAD? tu peux encoder des url maintenant.
swisscad Messages postés 1 Date d'inscription dimanche 22 août 2010 Statut Membre Dernière intervention 1 septembre 2010
1 sept. 2010 à 00:38
Excellent travail ! J'attends avec impatience une version permettant d'encoder des textes plus longs, type URL
TorTukiTu Messages postés 31 Date d'inscription samedi 22 avril 2006 Statut Membre Dernière intervention 18 avril 2011 1
26 août 2010 à 10:48
Et petite correction, c'est la norme ISO 16022 pas 16044 , je savas pas où j'vais la tête quand j'ai écris ça...
TorTukiTu Messages postés 31 Date d'inscription samedi 22 avril 2006 Statut Membre Dernière intervention 18 avril 2011 1
26 août 2010 à 10:44
YANNIKATOR,

Il existe plusieurs procédés de compaction de données pour les datamatrix. J'ai utilisé ici le mode ASCII, il existe pour info entre autre le mode C40 et TEXT. Pour le datamatrix de wikipedia, il est possible que l'un ou (et!) l'autre ait été utilisé. Il faut dans l'idéal calculer le gain de place suivant l'une ou l'autre méthode et sauter d'un mode de compaction à un autre afin de gagner un maximum de place.

En gros, on pourrait imaginer un datamatrix correspondant à un encodage en ASCII - C40 - TEXT qui, même si les données encodées sont les mêmes ne serait pas identique à un datamatrix uniquement en ASCII

Les autres méthodes sont en cors de test. Je les publierait dans le courant de la semaine prochaine.

Sinon, je te rappelle que cette source à été testée avec des longueurs de chaines de 6 et mois. Donc, je ne te garantis pas que ton 'Wikipedia' de 9 lettres va fonctionner correctement (à priori, c'est bon, mais étant donné que je n'ai pas testé, je vais pas me mouiller).

Je teste tout ça la semaine prochaine.

La tortue.
Yannikator Messages postés 23 Date d'inscription mardi 23 octobre 2007 Statut Membre Dernière intervention 10 novembre 2012
25 août 2010 à 19:03
Je trouve ça très intéressant. J'ai donc testé et l'algo est assez stable et rapide. Cependant un petit problème qu'on peut ce poser. J'ai fait le test avec l'exemple de wikipedia et je n'obtient pas le même résultat.
C'est peut-être du au fait que tu convertit la chaine en code ascii avant de passer en binaire. Cependant je me demande comment ils ont fait pour faire celle de wikipedia (string =Wikipedia, the free encyclopedia ).
Soit l'image de wikipedia est fausse, soit il y a un problème dans ton algo.
Sinon c'est bien sympas de voir son prénom en datamatrix.

SYL
Optitech Messages postés 134 Date d'inscription samedi 19 octobre 2002 Statut Membre Dernière intervention 3 janvier 2009
22 août 2010 à 11:48
Merci pour la source, j'ai cherché ceci pendant un bout de temps. Sinon merci aussi pour l'adresse de la norme. Je vais pouvoir la lire.
Rejoignez-nous