Italian Creare Un Box o linea con Stampante bluetooth

Star-Dust

Expert
Licensed User
ancora peggio, questa e' una 58mm
😁
Io ho lo stesso modello. Solo che sto finendo un lavoro, dopo dò un occhiata
 

Xfood

Expert
Licensed User
l'altra cosa che non capisco, e questo
B4X:
Dim bmp As Bitmap
bmp.InitializeResize(File.DirInternal, "Test22.png", 576,300, False) 'ignore 576
perche se modifico il numero 300 la stampa si allunga / dimuisce in verticale, ( e quindi corretto)
mentre se tocco il valore 576, la stampa / l'immagine viene stravolta, io pensavo che si allargasse / riducesse in orizontale
misteri....
 

Xfood

Expert
Licensed User
@Xfood, un pezzettino di codice? cosi magari vediamo come aiutarti....
si certo, infatti avevo postato un piccolo esempio,
in pratica ho creato un panel, panel1 dove dentro ci sono altri panel per scrivere / disegnare quello che mi serve,
poi faccio un snapshop del panel1 e creo un'immagine png,
a quel punto carico l'immagine e la mando in stampa
ecco il codice
B4X:
'============   NUOVO tEST DI PROVA   
    Printer1.Reset
    Dim m As Bitmap =  pnlMain.Snapshot
    m.Resize(200,100,True)
    
    
    Dim cv As Canvas
    cv.Initialize2(m)
    
    
    
    
    If File.Exists(File.DirInternal, "Test22.png") Then
        File.Delete(File.DirInternal, "Test22.png")
    End If
    Dim Out As OutputStream
    Out = File.OpenOutput(File.DirInternal, "Test22.png", False)
    cv.Bitmap.WriteToStream(Out, 100, "PNG")
    Out.Close
        
    Dim bmp As Bitmap
    bmp.InitializeResize(File.DirInternal, "Test22.png", 576,300, False) 'ignore 576

    Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
    
    myimage = Printer1.DitherImage2D(myimage, 100) '128
    
    myimage= Printer1.PackImage(myimage)
    Printer1.PrintImage(myimage)
 

Star-Dust

Expert
Licensed User
si certo, infatti avevo postato un piccolo esempio,
in pratica ho creato un panel, panel1 dove dentro ci sono altri panel per scrivere / disegnare quello che mi serve,
poi faccio un snapshop del panel1 e creo un'immagine png,
a quel punto carico l'immagine e la mando in stampa
ecco il codice
B4X:
'============   NUOVO tEST DI PROVA 
    Printer1.Reset
    Dim m As Bitmap =  pnlMain.Snapshot
    m.Resize(200,100,True)
  
  
    Dim cv As Canvas
    cv.Initialize2(m)
  
  
  
  
    If File.Exists(File.DirInternal, "Test22.png") Then
        File.Delete(File.DirInternal, "Test22.png")
    End If
    Dim Out As OutputStream
    Out = File.OpenOutput(File.DirInternal, "Test22.png", False)
    cv.Bitmap.WriteToStream(Out, 100, "PNG")
    Out.Close
      
    Dim bmp As Bitmap
    bmp.InitializeResize(File.DirInternal, "Test22.png", 576,300, False) 'ignore 576

    Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
  
    myimage = Printer1.DitherImage2D(myimage, 100) '128
  
    myimage= Printer1.PackImage(myimage)
    Printer1.PrintImage(myimage)
Magari sembrerebbe una domanda sciocca.... Ma prendi l'immagine del label , la salvi e la carichi di nuovo?
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
Prova al volo 'sta "robaccia" - peccato che io non abbia la stampante!
Penso (spero) che dovrai cambiare ben pochi o nessun valore.
 

Attachments

  • Ticket3.zip
    22.2 KB · Views: 30

LucaMs

Expert
Licensed User
Longtime User
Magari sembra una domanda scema. Ma prendi l'immagine del lalabel , la salvi e la carichi di nuovo?
Lo fa come "preview" (immagino), ricaricando il file che ha salvato (non utilissimo ma non sono stato ad eliminare quella parte)
 

LucaMs

Expert
Licensed User
Longtime User
Ma perché "ascolto" (si fa per dire) le porcate che stanno dicendo ad Agorà, mentre faccio queste cose? Per sprecare corrente?
(scusate, piccolo sfogo "politico")
 

Xfood

Expert
Licensed User
Magari sembra una domanda scema. Ma prendi l'immagine del lalabel , la salvi e la carichi di nuovo?
non ho capito,
in realta scrivo quello che mi serve, tipo Banco Macelleria, opure banco Salumeria,
scrivo il numero sempre nelle mie label contenute dal pannello master,
e poi faccio uno snapshot del pannello che contiene tutte le mie view

B4X:
 Dim m As Bitmap =  pnlMain.Snapshot
    m.Resize(200,100,True)
    
    ' con un cancas seleziono l'area per poi generare la bitmap
    Dim cv As Canvas
    cv.Initialize2(m)
    
    
    
    
    If File.Exists(File.DirInternal, "Test22.png") Then
        File.Delete(File.DirInternal, "Test22.png")
    End If
    Dim Out As OutputStream
    Out = File.OpenOutput(File.DirInternal, "Test22.png", False)
    cv.Bitmap.WriteToStream(Out, 100, "PNG")
    Out.Close
 

LucaMs

Expert
Licensed User
Longtime User
Dim m As Bitmap = pnlMain.Snapshot
m.Resize(200,100,True)
Qui è talmente evidente l'errore! Il pannello è quadrato, ma tu crei una Bitmap rettangolare! E' vero che mantieni le proporzioni col True, ma non mi convince affatto, ha davvero poco senso.
 

Xfood

Expert
Licensed User
Qui è talmente evidente l'errore! Il pannello è quadrato, ma tu crei una Bitmap rettangolare! E' vero che mantieni le proporzioni col True, ma non mi convince affatto, ha davvero poco senso.
non capisco ad ogni modo,
perche alla fine creo un file png, e poi lo ricarico per mandarlo in stampa, quindi quadrato oppure rettangolare, non capisco cosa centra...

Dim bmp As Bitmap
bmp.InitializeResize(File.DirInternal, "Test22.png", 576,300, False) 'ignore 576
 

Lello1964

Well-Known Member
Licensed User
Longtime User
non funziona il Test3 di Luca

1655364674197.jpg
 

Xfood

Expert
Licensed User
infatti se si cambio il valore 576

B4X:
bmp.InitializeResize(File.DirInternal, "Test22.png", 576,300, False) 'ignore 576

succede proprio quello, sembra un valore fisso....si puo modificare solo il valore 300 che allunga, o diminuisce l'immagine in verticale
 

Xfood

Expert
Licensed User
prova ad aggiungere il codice suggerito da @LucaMs
ma per adesso non posso provarlo....
ho visto il layout aggiustato da @LucaMs , grazie e magnifico
adeguato grafica secondo come era nel mio pensiero
e dulcis in fundo la è 😁 😁 😁
1655368312073.png

adesso sarebbe solo da provare
 

Attachments

  • Ticket4.zip
    25.8 KB · Views: 27
Top