Gambas-it

Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: dex - 01 Dicembre 2010, 23:08:53

Titolo: stampare etichette
Inserito da: dex - 01 Dicembre 2010, 23:08:53
ciao
devo creare un form per stampare etichette con codice sia alfanumerico che a barre.

1) devo acquistare le stampanti, e qui mi servirebbe un consiglio su quale prendere, vista la difficoltà dei driver su linux.

2) come lancio la stampa da gambas

3) come faccio da gambas ad indirizzare la stampa sulla stampante per etichette e non su quella di default?

il tutto deve girare su ubuntu 10.10
Titolo: Re: stampare etichette
Inserito da: md9327 - 02 Dicembre 2010, 10:23:14
Per impostare la stampante per la tua applicazione devi agire sull'oggetto statico Printer.

Puoi farlo in due modi:
1) farlo impostare all'utente, e magari salvarlo in un file di configurazione
2) modificare a programma la configurazione di Printer, ma per questo ovviamente devi conoscere tutti i parametri da inserire

Riguardo alla stampa, l'invio è uguale per uttto, ma riguardo ai codici a barre devi affidarti alla doc della stampante in questione.

Per la stampante, moltissimi anni fà avevo fatto un progetto con il Clipper, ma non ricordo che tipo era, e comunque oggi ce ne sono svariate altre, e forse anche più semplici da gestire...
Titolo: Re: stampare etichette
Inserito da: milio - 02 Dicembre 2010, 10:45:15
Noi in ditta usiamo le stampanti per etichette Zebra. Si collegano via seriale ed usano un particolare linguaggio che si chiama, se non ricordo male, ZTL.

La gestione del codice a barre viene gestita direttamente dalla stampante.
Titolo: Re: stampare etichette
Inserito da: leo72 - 02 Dicembre 2010, 10:47:06
Cmq la stampa con Gambas (almeno con G2) è un po' ostica.
Io ho risolto facendo preparare il documento da stampare a Gambas ma facendolo poi inviare in stampa tramite il comando "lpr" con il quale puoi anche impostare una stampante differente da quella di default.

Se cerchi nelle vecchie discussioni, trovi qualcosa.
Titolo: Re: stampare etichette
Inserito da: perseo - 02 Dicembre 2010, 11:26:41
Il thread interessa tantissimo anche me...

Ti riporto la mia personalissima esperienza per la creazione di etichette (nel mio vecchio gestionale in VB, quindi Winzoz), che sto cercando di adattare anche in Gambas.

In ufficio (ancora ambiente Winzoz, spero non per molto ancora) usiamo la stampante normale, e dei fogli A4 standard con numero fisso di etichette, tipo questi...
(http://www.cosacosta.it/i/www.misco.it/store/products/officeready/images/large/OR_TICE-5836.jpg)
Quando stampiamo le nuove etichette, per non sprecare le etichette dei fogli già utilizzati, creai una configurazione del foglio di stampa attraverso la quale inserivo il numero progressivo di etichetta da cui ricominciare la stampa. In questo modo non sprechiamo nessuna etichetta.

In gambas credo che la ragionerò memorizzando tale numero progressivo in una variabile del gb.setting, in cui inserirò il numero progressivo successivo all'ultima etichetta stampata. Fatto questo poi rimane solo (si fa per dire) di creare il/i foglio/i con tutte le etichette da stampare...
Per il momento sono ancora indaffarato con la struttura di base, ma appena comincerò la creazione dei report di stampa ti aggiorno sull'evoluzione.

Per il codice a barre e per la stampa in genere sono anch'io in attesa di risposte.  :)

PS. è sicuramente da valutare il consiglio di milio, di lasciar fare tutto ad un'apposita stampante per le etichette. E' da valutare il costo della stampante, di consumo, e delle etichette.
Titolo: Re: stampare etichette
Inserito da: Golia - 02 Dicembre 2010, 13:22:04
Citazione
3) come faccio da gambas ad indirizzare la stampa sulla stampante per etichette e non su quella di default?
Per impostare la stampante io ho usato (circa adesso non ricordo)questo codice che trovi in questa discussione, adesso non ho gambas sottomano :evil:
http://www.gambas-it.org/smf/index.php?topic=944.0 (http://www.gambas-it.org/smf/index.php?topic=944.0)
Titolo: Re: stampare etichette
Inserito da: perseo - 02 Dicembre 2010, 14:51:40
Comunque, se usi la classe Printer di gambas (io l'ho provato per la versione 3) esiste il metodo Configure... che apre la form_Dialog classica delle stampanti, da cui puoi scegliere o settare una delle stampanti installate nel PC. Come ti dicevo mi sono interessato solo sommariamente, ma credo tu possa impostarne a priori anche una predefinita (ma su questo non ci giurerei).
Titolo: Re: stampare etichette
Inserito da: Berserker79 - 02 Dicembre 2010, 16:57:58
Ciao, anche nella ditta in cui lavoro io utilizziamo le stampanti zebra.
Come già detto da Milio, le stampanti hanno un linguaggio tutto loro per la stampa, infatti sul pc vanno installate come generic text only e poi gli invi una stampa con delle stringhe
generate ad hoc, sarà poi la stampante a fare il resto.
Il post linkato da Golia è una mia vecchia richiesta e funziona benissimo per recuperare le stampanti installate e quella predefinita.
Cmq nel tuo caso, se sai già il nome della stampante a cui devi inviare la stampa, pui utilizzare da shell il comando lpr -P nome_stampante.
Ciao.
Titolo: Re: stampare etichette
Inserito da: dex - 02 Dicembre 2010, 21:48:31
grazie a tutti per le risposte

interessanti le zebra, mi metto a cercare in rete.
Titolo: Re: stampare etichette
Inserito da: leo72 - 02 Dicembre 2010, 22:07:12
@perseo:
ehm... qui siamo sulla sezione G2  ;)

Cmq il dialog di G2 sulle vecchie versioni non funzionava per cui tu potevi scegliere certi dati con cui, poi, configurare l'oggetto Printer. Però, Gambas, di ciò non teneva conto... ad esempio il numero di pagine o la stampante...  :-\
Quindi io usavo il dialogo solo per recuperare il nome della stampante scelta dall'utente che poi davo in pasto a "lpr" tramite terminale.

Titolo: Re: stampare etichette
Inserito da: perseo - 02 Dicembre 2010, 22:35:26
Hai ragione Leo,
questa è la sezione dedicata alla G2. Hai fatto bene ad avvisarmi.  :-[

Per i metodi di stampa spero che possiate darmi qualche buon consiglio anche nei post della sezione G3. :)
Titolo: Re: stampare etichette
Inserito da: dex - 02 Dicembre 2010, 22:36:16
@ Md e Golia

che voi sappiate Pdfwriter accetta solo questi formati?
Citazione
SELECT CASE Lower(form)
  CASE "a3"
    $fwPt = 841.89
    $fhPt = 1190.55
  CASE "a4"
    $fwPt = 595.28
    $fhPt = 841.89
  CASE "a5"
    $fwPt = 420.94
    $fhPt = 595.28
  CASE "letter"
    $fwPt = 612
    $fhPt = 792
  CASE "legal"
    $fwPt = 612
    $fhPt = 1008
  DEFAULT
    Error.Raise("Unknown page format: " & form)
  END SELECT

volendo inserirne uno personalizzato?
Titolo: Re: stampare etichette
Inserito da: Golia - 02 Dicembre 2010, 22:56:33
Forse dico una grande fesseria, ma penso che basta che aggiungi il formato che serve a te, aggiungendo un CASE proprio nel codice che hai incollato con le misure che ti servono.
Prova!
Titolo: Re: stampare etichette
Inserito da: dex - 02 Dicembre 2010, 23:05:29
gia fatto e funziona

Citazione
SELECT CASE Lower(form)
  CASE "a3"
    $fwPt = 841.89
    $fhPt = 1190.55
  CASE "a4"
    $fwPt = 595.28
    $fhPt = 841.89
  CASE "a5"
    $fwPt = 420.94
    $fhPt = 595.28
  CASE "letter"
    $fwPt = 612
    $fhPt = 792
  CASE "legal"
    $fwPt = 612
    $fhPt = 1008
  CASE "pers"
    $fwPt = 226.8 '8 cm
    $fhPt = 141.75  '5 cm
  DEFAULT
    Error.Raise("Unknown page format: " & form)
  END SELECT

in pratica si può inserire qualsiasi formato o etichetta
Pdfwriter ha dell'incredibile  :o
Titolo: Re: stampare etichette
Inserito da: Golia - 02 Dicembre 2010, 23:28:56
Bene  :2birre: PdfWriter è andato a segno ancora  :2birre:
Titolo: Re: stampare etichette
Inserito da: andy60 - 02 Dicembre 2010, 23:57:34
@dex

io a casa ho una ottima HP Officejet j4680 all-in-one, i driver sono dentro la distribuzione (hplip)
Titolo: Re: stampare etichette
Inserito da: dex - 04 Dicembre 2010, 02:00:01
aggiornamento.
mi sono ricordato di una vecchia Dymo LabelWriter 400 che usavamo con windows, collegata al pc ubuntu 10.10 l'ha riconosciuta e caricato il driver al volo.
Poi ho installato  gLabels,  questo programmino (in italiano ) aveva al suo interno anche delle Template per le Dymo, in più ha un Template Designer che permette di creare qualsiasi etichetta.
Oltre al testo ha tantissimi codici a barre.

Ora devo solo provare a lanciare la stampa da Gambas con PdfWriter
Titolo: Re: stampare etichette
Inserito da: dex - 05 Dicembre 2010, 02:38:58
stampate le prime etichette con la Dymo.

unico neo per PdfWriter  è che con le etichette piccole tipo 25 x 25 mm mi crea dei problemi per inserire più righe, in quanto vanno ad accavallarsi Header con  Footer e Data non avendo spazio mi crea più pagine.

allego la prima etichetta
Titolo: Re: stampare etichette
Inserito da: md9327 - 06 Dicembre 2010, 14:05:13
Prova a ridurre i font, e/o a calcolarti la posizione della riga successiva.
Titolo: Re: stampare etichette
Inserito da: perseo - 06 Dicembre 2010, 19:44:14
Scusate ragazzi,

io ho un problema con il riconoscimento del Barcode (EAN13) di PDFWriter...
Lo stampo (anche in BEST Quality) ma non ne vuol sapere di riconoscerlo.

Stessa stampante, sempre EAN13, stesso numero di codice... generato e stampato con BarCode0.0.7 me lo riconosce.

Ho confrontato i due disegni creati per lo stesso numero, 8711577011208, sia da PdfWriter che da BarCode0.0.7, e mi sembra che siano quasi simili... con la differenza che quello di PDFWriter disegna in mezzo alcune righe differenti da quell'altro.

PS. ho stampati i BarCode del programma Test di PdfWriter (gli esempi che ha fatti MD) ed il barcode-reader non riconosce neppure quelli...  ???
Titolo: Re: stampare etichette
Inserito da: dex - 06 Dicembre 2010, 20:38:07
Prova a ridurre i font, e/o a calcolarti la posizione della riga successiva.

gia provato.
con le linee o il Barcode dato che conservano una posizione assoluta  riesco a stampare dove voglio, il problema si presenta solo con Cel, per stampare la prima Cell devo settare Y a -8 e la seconda Cell in automatico mi crea una nuova pagina
Titolo: Re: stampare etichette
Inserito da: dex - 06 Dicembre 2010, 20:40:21
Scusate ragazzi,

io ho un problema con il riconoscimento del Barcode (EAN13) di PDFWriter...
Lo stampo (anche in BEST Quality) ma non ne vuol sapere di riconoscerlo.

Stessa stampante, sempre EAN13, stesso numero di codice... generato e stampato con BarCode0.0.7 me lo riconosce.

Ho confrontato i due disegni creati per lo stesso numero, 8711577011208, sia da PdfWriter che da BarCode0.0.7, e mi sembra che siano quasi simili... con la differenza che quello di PDFWriter disegna in mezzo alcune righe differenti da quell'altro.

PS. ho stampati i BarCode del programma Test di PdfWriter (gli esempi che ha fatti MD) ed il barcode-reader non riconosce neppure quelli...  ???

Io non ho provato a leggere il barcode in quanto il lettore è su un'altro pc, prova a leggere il pdf che ho allegato vedi se lo legge, l'ho creato con PdfWriter e Barcode Code39
Titolo: Re: stampare etichette
Inserito da: perseo - 06 Dicembre 2010, 21:12:01
Grazie mille,
dex... Avevo già provato e non lo legge.

Poi ho riesumato un progetto di Golia e sono riuscito astampare e far leggere il Code39! L'unica cosa è che a me servono codici per "00000000" numeri.. e con code39 vengono troppo lunghi.
Sarebbe ottimo un Code con i25 o con EAN13... a quelli non li legge!

A voi gli EAN13 ed i i25 li legge?
Titolo: Re: stampare etichette
Inserito da: perseo - 07 Dicembre 2010, 03:29:46
Ce l'ho fatta! Ho risolto sul formato code.i25!  :ok:

Ho confrontato il codice a barre generato sull'esempio in php nel sito fpdf.org... e quello generato da Gambas... Li ho stampati e confrontati... quello di gambas è l'esatto negativo di quello in php, infatti il mio lettore laser quest'ultimo lo riconosceva, mentre il codice a barre generato da gambas no.
(http://img213.imageshack.us/img213/6899/i25.png)
Nella figura ho usato il numero "12345678" in .i25. Il codice a barre superiore è generato in php, quello sotto era quello di gambas.

Quindi sono andato a vedere il codice della classe PdfWriter, e nonostante io non conosca il php mi pare che MD abbia fatta la traduzione esatta, ma tant'è che se cambiate la riga 2854 della classe PdfWriter da così:

Codice: gambas [Seleziona]
If (bar Mod 2 = 0) Then Me.Rect(xpos, ypos, lineWidth, height, "F")


a così:
Codice: gambas [Seleziona]
If (bar Mod 2 <> 0) Then Me.Rect(xpos, ypos, lineWidth, height, "F")


Il codice a barre generato è perfetto e non mi da più problemi di riconoscimento.

Credo che il codice di programmazione per generare EAN13 abbia problemi simili, perché anche in lì confrontando le stampe ci sono delle leggere discordanze tra le barre (quelle in mezzo).

PS. non è tardi... di più!!! E domattina sveglia alle 7... Però vado a dormire soddisfatto. Ce l'abbiamo fatta!  ;)
Titolo: Re: stampare etichette
Inserito da: md9327 - 07 Dicembre 2010, 11:05:27
Hai fatto un bel lavoro!!!  :ok:

Purtroppo il mio lavoro è stato solo quello di tradurre la libreria, e su alcune funzioni aggiuntive non ho potuto fare verifiche.

Introdurrò la tua modifica a breve (mi fido del tuo lavoro...  ;D ), per la prox versione 0.0.5

E' anche probabile che il problema sia lo stesso per le altre funzioni barcode, come tu dici. Proverò a dargli un'occhiata, ma non ho modo di verificare, e il tuo aiuto sarebbe indispensabile per sistemare la libreria, visto che la possibilità di provarlo con gli strumenti adatti.
Titolo: Re: stampare etichette
Inserito da: perseo - 07 Dicembre 2010, 16:59:52
Grazie MD...

ma la mia è ben poca cosa!

(http://img834.imageshack.us/img834/7360/ean13.png)

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.
Titolo: Re: stampare etichette
Inserito da: perseo - 07 Dicembre 2010, 18:06:49
MD...
dagli una controllata. Questa dovrebbe essere la SUB che raggruppa i rettangoli contigui neri, per generare un barcode più omogeneo.

Codice: gambas [Seleziona]
PRIVATE SUB DrawBarcode($code AS String, $x AS Float, $y AS Float, $h AS Float, $w AS Float)
DIM i, j AS Integer = 0
DIM l AS Boolean = FALSE

  $code = $code & "!" ' <--- è finita la stringa
 
  FOR i = 1 TO (Len($code) - 1)
    IF (Mid($code, i, 1) = "1") THEN
      IF (Mid($code, i + 1, 1) = "!") OR (Mid($code, i + 1, 1) = "0") THEN
        'stampa il rettangolo
        ME.Rect($x + (i - 1 - j) * $w, $y, $w + j * $w, $h, "F")
        'PRINT i, Mid($code, i, 1), "Stampa " & j
      ELSE
        INC j
        'PRINT i, Mid($code, i, 1), "Incrementa j"
      ENDIF
    ELSE
      j = 0
      'PRINT i, Mid($code, i, 1), "Si sposta"
    ENDIF
  NEXT
END



Il codice è sempre ancora sbagliato... però intanto abbiamo migliorato la parte a stampa...  ;D
Nella parte superiore il codice generato con l'aggiunta di questa SUB, sotto senza la SUB...
(http://img225.imageshack.us/img225/7779/ean13stampa.png)
Titolo: Re: stampare etichette
Inserito da: md9327 - 07 Dicembre 2010, 20:06:52
MD...
dagli una controllata. Questa dovrebbe essere la SUB che raggruppa i rettangoli contigui neri, per generare un barcode più omogeneo.

Codice: gambas [Seleziona]
PRIVATE SUB DrawBarcode($code AS String, $x AS Float, $y AS Float, $h AS Float, $w AS Float)
DIM i, j AS Integer = 0
DIM l AS Boolean = FALSE

  $code = $code & "!" ' <--- è finita la stringa
  
  FOR i = 1 TO (Len($code) - 1)
    IF (Mid($code, i, 1) = "1") THEN
      IF (Mid($code, i + 1, 1) = "!") OR (Mid($code, i + 1, 1) = "0") THEN
        'stampa il rettangolo
        ME.Rect($x + (i - 1 - j) * $w, $y, $w + j * $w, $h, "F")
        'PRINT i, Mid($code, i, 1), "Stampa " & j
      ELSE
        INC j
        'PRINT i, Mid($code, i, 1), "Incrementa j"
      ENDIF
    ELSE
      j = 0
      'PRINT i, Mid($code, i, 1), "Si sposta"
    ENDIF
  NEXT
END



Il codice è sempre ancora sbagliato... però intanto abbiamo migliorato la parte a stampa...  ;D
Nella parte superiore il codice generato con l'aggiunta di questa SUB, sotto senza la SUB...

Il fatto delle linee non contigue potrebbe dipendere dalla differenza di profondità della risoluzione tra PHP e Gambas, relativamente al tipo di variabile utilizzata.
La tua idea potrebbe non essere male... :ok:

Riguardo alle differenze, mi sembra tanto che il colore delle barre venga semplicemente invertito. Se così è, basterebbe invertire la funzione di disegno... E' da controllare...

Sò che lo dico spesso in questo periodo, ma cercherò di studiare la cosa appena possibile, e le tue analisi e i tuoi suggerimenti mi saranno senz'altro utili per sistemare la cosa.

Ho messo in evidenza questa cosa tra i problemi che dovrò sistemare appena possibile.
Titolo: Re: stampare etichette
Inserito da: perseo - 07 Dicembre 2010, 22:10:49
Mitico!

Occhio che il problema dei colori invertiti era per il code.i25... Ora l'ho corretto e funziona perfettamente (oggi l'ho testato su una 20 di etichette a numero random)

Quello del code.EAN13 invece è proprio un altro problema. Infatti come puoi vedere confrontando l'immagine del codice generato da php con quello generato da gambas la differenza è che sono proprio due disegni differenti, la cui unica similitudine è una zona tra la seconda metà e quella finale. Quindi lì non si tratta di invertire i colori, ma di rivedere il codice.
Io ho ritentato anche oggi, ma non vedo errori, quindi non capisco proprio da cosa possa dipendere. Magari è uno di quei bugs subdoli... che prima o poi uscirà fuori.
Se ti serve una mano, nei limiti del tempo possibile, sono disponibilissimo!

PS. PdfWriter è fantastico!
Ho deciso però di non utilizzare troppo le "cell", ma di disegnarmi direttamente ogni elemento di ogni report alla volta (attraverso i cicli... chiaramente). Sarà una soluzione meno sbrigativa, ma almeno ho il pieno controllo di ogni tassello. Poi, appena sono pronti, metto alcuni allegati. grazie ancora per il lavorone di trascrizione! :)
Titolo: Re: stampare etichette
Inserito da: dex - 08 Dicembre 2010, 00:09:28
PS. PdfWriter è fantastico!
Ho deciso però di non utilizzare troppo le "cell", ma di disegnarmi direttamente ogni elemento di ogni report alla volta (attraverso i cicli... chiaramente). Sarà una soluzione meno sbrigativa, ma almeno ho il pieno controllo di ogni tassello. Poi, appena sono pronti, metto alcuni allegati. grazie ancora per il lavorone di trascrizione! :)

PdfWriter ha fatto un'altra vittima!!  ;) ;)

Se non riesci a leggere il Code39 allora anche quello ha qualche errore!! :hatecomputer:

Edit: l' i25 accetta solo numeri, con le lettere va in errore.  :hard:
Titolo: Re: stampare etichette
Inserito da: perseo - 08 Dicembre 2010, 02:12:17
Dex... il Code39 lo legge perfettamente!
Il problema è che per i miei ID (di 8 numeri) il Code39 genera un codice a barre troppo lungo per le dimensioni delle mie etichette.

Invece il code.i25, per l'utilizzo che ne faccio, è perfetto. Puoi inserire codici numerici di massimo 8 caratteri (e quindi mi casca a pennello).
Come hai giustamente evidenziato con le lettere va in errore.


Titolo: Re: stampare etichette
Inserito da: md9327 - 09 Dicembre 2010, 10:49:24
Riguardo alla "mano" ben venga tutto l'aiuto possibile.

Se avete suggerimenti su PdfWriter, o modifiche e aggiustamenti sul codice, ben venga veramente!

Al massimo che posso fare, è controllare che le modifiche non vadano ad impattare negativamente con il resto della libreria, ma a parte questo le posso inserire nei sorgenti ufficiali che distribuisco su sourceforge.net.

Inoltre, se gradito, fatemi avere i nomi di chi aiuta nel progetto, così da inserirlo nel ChangeLog...

P.S.: la libreria FPDF originale è un bel progetto. il mio è stato solo un contributo di traduzione,,,
Titolo: Re: stampare etichette
Inserito da: md9327 - 11 Dicembre 2010, 10:51:43
Ce l'ho fatta! Ho risolto sul formato code.i25!  :ok:

Ho confrontato il codice a barre generato sull'esempio in php nel sito fpdf.org... e quello generato da Gambas... Li ho stampati e confrontati... quello di gambas è l'esatto negativo di quello in php, infatti il mio lettore laser quest'ultimo lo riconosceva, mentre il codice a barre generato da gambas no.
(http://img213.imageshack.us/img213/6899/i25.png)
Nella figura ho usato il numero "12345678" in .i25. Il codice a barre superiore è generato in php, quello sotto era quello di gambas.

Quindi sono andato a vedere il codice della classe PdfWriter, e nonostante io non conosca il php mi pare che MD abbia fatta la traduzione esatta, ma tant'è che se cambiate la riga 2854 della classe PdfWriter da così:

Codice: gambas [Seleziona]
If (bar Mod 2 = 0) Then Me.Rect(xpos, ypos, lineWidth, height, "F")


a così:
Codice: gambas [Seleziona]
If (bar Mod 2 <> 0) Then Me.Rect(xpos, ypos, lineWidth, height, "F")


Il codice a barre generato è perfetto e non mi da più problemi di riconoscimento.

Credo che il codice di programmazione per generare EAN13 abbia problemi simili, perché anche in lì confrontando le stampe ci sono delle leggere discordanze tra le barre (quelle in mezzo).

PS. non è tardi... di più!!! E domattina sveglia alle 7... Però vado a dormire soddisfatto. Ce l'abbiamo fatta!  ;)

Oggi stavo facendo dei controlli sulla tua analisi, ma mi sono imbattuto in parecchi problemi, relativamente all'individuazione del codice da te segnalato.
Tenendo presente che, al momento, la versione ufficiale è la 0.0.4, che puoi trovare su sourceforge.net, le righe a cui fai riferimento non corrispondono affatto.

Comunque, analizzando il metodo i25() ho notato che la stampa avviene perfettamente uguale a quella php, senza alcuna modifica.

Come, però, detto nel mio post precedente, spero tu abbia lavorato con la versione ufficiale, altrimenti facciamo notte a capirci qualcosa, a meno che non mi indichi esattamente quale metodo/funzione hai analizzato.
Titolo: Re: stampare etichette
Inserito da: perseo - 11 Dicembre 2010, 17:35:52
Per scrupolo ho utilizzato sia la tua versione (quella in gambas2) sia quella riadattata dal duo Golia(Elia  ;D ) / milio (in gambas3).
La tua versione, la 0.0.4, l'avevo scaricata dai repo ufficiali di sourceforge, mentre l'altra, quella di g3 l'ho presa qui sul sito (nel post su PDF Writer di Golia).

Stesse identiche incongruenze. Però posso riscaricarli di nuovo e riprovare. Non vorrei aver sollevato un polverone per nulla...
Anzi, per evitare qualsiasi fonte di errore perché non alleghi la tua versione (sia di g2, che di g3 se la hai)? :)

[edit]
Intanto ho scaricato di nuovo la tua versione 0.0.4 e funziona perfettamente!

Sto cercando di capire cosa è successo... Perché, quella che avevo io non andava.
[/edit]

[edit2]
Anche la versione di g3 di Golia/milio... funziona perfettamente.

A questo punto mi chiedo cosa sia potuto succedere... Voglio approfondire e mi scuso per l'allarmismo suscitato!  :-[
[/edit2]

[edit3]
MD, ho ricontrollato ancora una volta...

Ho fatto anche un confronto dei testi con MELD, ed i cambiamenti tra quelli scaricati dai repo ed il codice che ho usato io sono proprio quelli del segno <> anziché l' =... Ho verificato anche un confronto con il codice di Golia/milio.

Poi sono tornato nella pagina php... dove c'è lo script di esempio. Ed ho rivisto il codice generato dalla versione ufficiale 0.0.4 appena scaricata... e (relativamente al codice i25) uno è il negativo dell'altro.
Infatti stampando i codici a barre i25 generati dalla tua versione e da quella di Golia/milio... il lettore non li rileva.
Mentre se stampo quello in php o quello con la mia modifica (che sono i negativi degli altri due) allora il lettore li legge.
Puoi allegare il pdf con il codice generato i25 sulla stringa "12345678" (che trovi a pag.20 del test) della tua versione? A me restituisce l'esatto negativo di quello generato in php...  :-\
[/edit3]

PS. prima ho scritto funziona perfettamente senza essere riandato a vedere il codice generato in php... Quando ho messo le immagini di confronto ho invertiti i disegni, il codice del php è quello sotto, mentre quello in gambas_vostra_versione è quello superiore (scusa ma erano le 2:30 di notte...  :-[ ). Quindi in realtà quello corretto è quello sotto.

Per capirci... questo è il link del php codice generato in php:
http://www.fpdf.org/en/script/ex67.pdf

(preso da sito ufficiale: http://www.fpdf.org/ )

PPS. perdonami tutti questi giri di parole e frasi, ma non riesco a spiegarmi meglio, E' davvero un difficile... :)