Grazie MD...
ma la mia è ben poca cosa!
Questo è il confronto tra il codice a barre EAN13 generato in PHP ed il suo corrispettivo generato da PdfWriter in Gambas... Il numero è "123456789012" (l'8 finale viene aggiunto di suo).
Se togli le ultime 2 barre del PHP le restinti 12 combaciano perfettamente con le ultime 12 di Gambas...
E' come se Gambas perdesse un numero alla fine e lo mette all'inizio, ma in maniera casuale stravolgendo la parte iniziale...
Ho provato a rileggere attentamente nel codice, ma non mi pare che ci siano errori.
Ho lanciato un print barcode per verificare che dopo il controllo iniziale il numero barcode venga restituito corretto... ed infatti è "1234567890128"... e quindi il problema deve essere dai cicli finali in poi.
PS. sicuramente non è un problema (visto che le risoluzioni delle stampanti non arrivano a tanto), ma secondo me sarebbe meglio accorpare i rettangoli neri contigui in un unico rettangolo, altrimenti ho notato che da gambas ingrandendo il codice a barre generato si creano delle sottilissime zone di vuoto... In PHP non succede... Puoi confrontarlo nei disegni che ho allegati...
Credo che basterebbe, anziché stampare un rettangolo ad ogni ciclo, un semplice If con una variabile integer che aumenti lo spessore quando se il risultato del ciclo precedente è uguale.