Afficher une image incluse dans in BLOB SQL sous PySide2
Résolu
JohnMacGyver
Messages postés
7
Statut
Membre
-
Jawadov11 -
Jawadov11 -
Bonjour tous le monde.
Je suis un nouveau membre, je débute sous python
et j'ai en projet d'afficher une image incluse dans une base SQLITE3
en format BLOB. Les images sont des Jpg incluse dans ce Blob.
J'aimerais savoir comment afficher cette image dans un formulaire Python.
J'utilise la bibliothèque PySide2.
Mais je ne connais la prog a faire pour passer de ce Blob a l'affichage écran.
Je ne trouve pas d'exemple dans ce sens.
Pouvez-vous m'aider ?
Merci d'avance...
Je suis un nouveau membre, je débute sous python
et j'ai en projet d'afficher une image incluse dans une base SQLITE3
en format BLOB. Les images sont des Jpg incluse dans ce Blob.
J'aimerais savoir comment afficher cette image dans un formulaire Python.
J'utilise la bibliothèque PySide2.
Mais je ne connais la prog a faire pour passer de ce Blob a l'affichage écran.
Je ne trouve pas d'exemple dans ce sens.
Pouvez-vous m'aider ?
Merci d'avance...
A voir également:
- Afficher une image incluse dans in BLOB SQL sous PySide2
- Légender une image - Guide
- Image iso - Guide
- Image de manchots sur une image de plage. - Forum Graphisme
- Dans le diaporama à télécharger, les diapositives s’enchaînent automatiquement. combien de temps la diapositive crayon met-elle à s’afficher ? combien de temps reste-t-elle affichée à l’écran ? ✓ - Forum Powerpoint
- Frédéric cherche à faire le buzz sur les réseaux sociaux. il a ajouté une image de manchots sur une image de plage. retrouvez l'image originale de la plage. que cachent les manchots ? ✓ - Forum Windows
4 réponses
Bonjour,
Fait est qu'enregistrer une image dans une bdd n'a jamais été une très bonne idée, il y a QImage.fromData qui permet de charger ton image.
https://doc.qt.io/qtforpython/PySide2/QtGui/QImage.html#PySide2.QtGui.PySide2.QtGui.QImage.fromData
Fait est qu'enregistrer une image dans une bdd n'a jamais été une très bonne idée, il y a QImage.fromData qui permet de charger ton image.
https://doc.qt.io/qtforpython/PySide2/QtGui/QImage.html#PySide2.QtGui.PySide2.QtGui.QImage.fromData
Bonjour Trifou.
J'ai regardé ton lien, mais ça ne m'aide pas.
c'est un lien qui donnes des dizaines d'instructions, sans me donner une piste.
Actuellement j'ai mon image dans un Tableau et j'ai un Qlabel
qui peux m'afficher l'image dans le tableau.
Le soucis c'est que comme je débute impossible pour moi d’écrire le code
qui va envoyer cette image dans le Qlabel.
J'ai réussi a afficher une image qui viens directement d'un fichier.jpg
import sys
from PySide2 import QtCore, QtGui, QtWidgets
app = QtWidgets.QApplication(sys.argv)
pixmap = QtGui.QPixmap('image.jpg')
label = QtWidgets.QLabel()
label.setPixmap(pixmap)
label.show()
app.exec_()
Ce petit code fonctionne
Mais comment faire quand ce Jpg est dans un tableau ???
J'ai regardé ton lien, mais ça ne m'aide pas.
c'est un lien qui donnes des dizaines d'instructions, sans me donner une piste.
Actuellement j'ai mon image dans un Tableau et j'ai un Qlabel
qui peux m'afficher l'image dans le tableau.
Le soucis c'est que comme je débute impossible pour moi d’écrire le code
qui va envoyer cette image dans le Qlabel.
J'ai réussi a afficher une image qui viens directement d'un fichier.jpg
import sys
from PySide2 import QtCore, QtGui, QtWidgets
app = QtWidgets.QApplication(sys.argv)
pixmap = QtGui.QPixmap('image.jpg')
label = QtWidgets.QLabel()
label.setPixmap(pixmap)
label.show()
app.exec_()
Ce petit code fonctionne
Mais comment faire quand ce Jpg est dans un tableau ???
Bonjour,
Pourtant tout ce qu'il y a à faire, c'est d'utiliser
Je n'utilise pas pyside ni qt, mais j'ai quand même testé pour voir si ça fonctionne.
Avec un fichier image.jpg.
Petit script pour créer une simple table et l'insertion d'une image.
Ce script exécuté, alors il suffit de tester dans un autre script l'affichage en récupérant l'image dans la table.
Cela fonctionne très bien =)
Pourtant tout ce qu'il y a à faire, c'est d'utiliser
QtGui.QImage.fromDataet le fournir à
QtGui.QPixmap.fromImage.
Je n'utilise pas pyside ni qt, mais j'ai quand même testé pour voir si ça fonctionne.
Avec un fichier image.jpg.
Petit script pour créer une simple table et l'insertion d'une image.
import sqlite3 sql_create = """ CREATE TABLE test_image( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, image BLOB NOT NULL ) """ with sqlite3.connect('la_base.db') as con, open('image.jpg', 'rb') as f: cur = con.cursor() cur.execute(sql_create) con.commit() data = f.read() cur.execute('INSERT INTO test_image(image) VALUES(?)', (data,)) con.commit()
Ce script exécuté, alors il suffit de tester dans un autre script l'affichage en récupérant l'image dans la table.
from PySide2 import QtGui, QtWidgets import sqlite3 with sqlite3.connect('la_base.db') as con: cur = con.cursor() cur.execute('SELECT image FROM test_image') data = cur.fetchall() app = QtWidgets.QApplication() label = QtWidgets.QLabel() img = QtGui.QImage.fromData(data[0][0]) pixmap = QtGui.QPixmap.fromImage(img) label.setPixmap(pixmap) label.show() app.exec_()
Cela fonctionne très bien =)