Example #1
0
 def openFile(self, filepath=False):
     if not filepath:
         filefilter = "Image files (*.jpg *.png *.jpeg *.svg *.gif *.tiff *.ppm *.bmp);;JPEG Images (*.jpg *.jpeg);;PNG Images (*.png);;SVG Images (*.svg);;All Files (*)"
         filepath, sel_filter = QFileDialog.getOpenFileName(
             self, 'Open Image', self.filepath, filefilter)
         if filepath == '': return
     image_reader = QImageReader(filepath)
     if image_reader.format() == 'gif':  # For gif animations
         anim = QMovie(filepath)
         self.image.setAnimation(anim)
         self.adjustWindowSize(True)
         self.statusbar.showMessage(
             "Resolution : %ix%i" %
             (self.image.width(), self.image.height()))
         self.disableButtons(True)
     else:  # For static images
         image_reader.setAutoTransform(True)
         pm = QPixmap.fromImageReader(image_reader)
         if not pm.isNull():
             self.image.scale = self.getOptimumScale(pm)
             self.image.setImage(pm)
             self.adjustWindowSize()
             self.disableButtons(False)
         else:
             return
     self.filepath = filepath
     self.setWindowTitle(QFileInfo(filepath).fileName())
Example #2
0
def image_and_format_from_data(data):
    ' Create an image object from the specified data which should be a bytestring and also return the format of the image '
    ba = QByteArray(data)
    buf = QBuffer(ba)
    buf.open(QBuffer.ReadOnly)
    r = QImageReader(buf)
    fmt = bytes(r.format()).decode('utf-8')
    return r.read(), fmt