[C++ Qt Qml] QML to Bitmap

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
SuperStep
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2037
Iscrizione: lunedì 19 dicembre 2011, 16:26
Desktop: Unity
Distribuzione: Ubuntu 16.04 LTS x86_64
Sesso: Maschile
Località: Somma Vesuviana (NA)

[C++ Qt Qml] QML to Bitmap

Messaggio da SuperStep »

Salve,

Ho comprato una stampante termica per fare esperimenti (http://elecfreaks.com/store/download/da ... manual.pdf) ed il protocollo permette anche di stampare Bitmap (risoluzione 384 punti per riga)

Quello che volevo fare io e' creare un file Qml che sia di 384pixel, farci dentro "disegni" tramite QML, ed alla fine esportare la bitmap...

ho attualmente la versione 5.2 installata di qt, quindi le classi che potrebbero servirmi ci sono tuttte (QPixMap, QBitMap, ...)

in particolare ho trovato questo: http://doc.qt.io/qt-5/qquickimageprovider.html

ma non ho capito come fare per farlo da un file QML, dovrei anche utilizzare QMLApplicationEngine?
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Avatar utente
SuperStep
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2037
Iscrizione: lunedì 19 dicembre 2011, 16:26
Desktop: Unity
Distribuzione: Ubuntu 16.04 LTS x86_64
Sesso: Maschile
Località: Somma Vesuviana (NA)

Re: [C++ Qt Qml] QML to Bitmap

Messaggio da SuperStep »

Altrimenti qualcosa di alternativo?
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Avatar utente
SuperStep
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2037
Iscrizione: lunedì 19 dicembre 2011, 16:26
Desktop: Unity
Distribuzione: Ubuntu 16.04 LTS x86_64
Sesso: Maschile
Località: Somma Vesuviana (NA)

Re: [C++ Qt Qml] QML to Bitmap

Messaggio da SuperStep »

Nessuno puo' indicarmi un modo per creare delle Bitmap utilizzando C++?

Quello che devo fare e provare a comporre un immagine partendo da altre cose, faccio un esempio:

Se volessi scrivere "ciao" con un determinato font, e metterlo in una determinata posizione della bitmap come potrei fare?

e se invece volessi prendere un immagine e fare lo stesso?
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
domi4484
Prode Principiante
Messaggi: 39
Iscrizione: domenica 4 dicembre 2011, 20:39
Desktop: Cinnamon
Distribuzione: Mint 14 64bit

Re: [C++ Qt Qml] QML to Bitmap

Messaggio da domi4484 »

Ciao,

Per salvare un immagine puoi usare il metodo save di QPixmap

Codice: Seleziona tutto

QPixmap pixmap("immagine.png");
 pixmap.save("immagine.bmp", "BMP");
Per disegnare qualcosa come vuoi tu puoi usare QPainter:

Codice: Seleziona tutto

  // Pixmap 200x200 pixel
  QPixmap pixmap(200, 200);
  QPainter p(&pixmap);

  // Disegno lo sfondo bianco
  p.setBrush(QColor(255,255,255));
  p.drawRect(0, 0, 200, 200);
  
  // Disegno ciao al punto 20x20 pixels
  p.drawText(20, 20, "Ciao");
  p.end();

  pixmap.save("ciao.bmp");
In Qml non ho mai fatto niente del genere ma credo che cercherei di renderizzare il componente qml che contiene l'immagine in una QPixmap.

QQuickImageProvider credo serva piuttosto per fare l'inverso, fornire delle immagini da cpp a qml.
Avatar utente
SuperStep
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2037
Iscrizione: lunedì 19 dicembre 2011, 16:26
Desktop: Unity
Distribuzione: Ubuntu 16.04 LTS x86_64
Sesso: Maschile
Località: Somma Vesuviana (NA)

Re: [C++ Qt Qml] QML to Bitmap

Messaggio da SuperStep »

Perfetto @domi4484

comincio a lavorare su questo. Grazie :)
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 20 ospiti