Fix thumbnail creation

CURA-9120
This commit is contained in:
Jaime van Kessel 2022-04-13 16:53:11 +02:00
parent 204eeaf272
commit 50954552d2
4 changed files with 7 additions and 7 deletions

View file

@ -21,7 +21,7 @@ class Snapshot:
def getImageBoundaries(image: QImage):
# Look at the resulting image to get a good crop.
# Get the pixels as byte array
pixel_array = image.bits().asarray(image.byteCount())
pixel_array = image.bits().asarray(image.sizeInBytes())
width, height = image.width(), image.height()
# Convert to numpy array, assume it's 32 bit (it should always be)
pixels = numpy.frombuffer(pixel_array, dtype=numpy.uint8).reshape([height, width, 4])
@ -98,7 +98,7 @@ class Snapshot:
try:
min_x, max_x, min_y, max_y = Snapshot.getImageBoundaries(pixel_output)
except (ValueError, AttributeError):
Logger.log("w", "Failed to crop the snapshot!")
Logger.logException("w", "Failed to crop the snapshot!")
return None
size = max((max_x - min_x) / render_width, (max_y - min_y) / render_height)
@ -120,7 +120,7 @@ class Snapshot:
# Scale it to the correct size
scaled_image = cropped_image.scaled(
width, height,
aspectRatioMode = QtCore.Qt.IgnoreAspectRatio,
transformMode = QtCore.Qt.SmoothTransformation)
aspectRatioMode = QtCore.Qt.AspectRatioMode.IgnoreAspectRatio,
transformMode = QtCore.Qt.TransformationMode.SmoothTransformation)
return scaled_image

View file

@ -157,7 +157,7 @@ class ThreeMFWriter(MeshWriter):
snapshot = self._createSnapshot()
if snapshot:
thumbnail_buffer = QBuffer()
thumbnail_buffer.open(QBuffer.ReadWrite)
thumbnail_buffer.open(QBuffer.OpenModeFlag.ReadWrite)
snapshot.save(thumbnail_buffer, "PNG")
thumbnail_file = zipfile.ZipInfo("Metadata/thumbnail.png")

View file

@ -22,7 +22,7 @@ class CreateThumbnail(Script):
Logger.log("d", "Encoding thumbnail image...")
try:
thumbnail_buffer = QBuffer()
thumbnail_buffer.open(QBuffer.ReadWrite)
thumbnail_buffer.open(QBuffer.OpenModeFlag.ReadWrite)
thumbnail_image = snapshot
thumbnail_image.save(thumbnail_buffer, "PNG")
base64_bytes = base64.b64encode(thumbnail_buffer.data())

View file

@ -83,7 +83,7 @@ class UFPWriter(MeshWriter):
thumbnail = archive.getStream("/Metadata/thumbnail.png")
thumbnail_buffer = QBuffer()
thumbnail_buffer.open(QBuffer.ReadWrite)
thumbnail_buffer.open(QBuffer.OpenModeFlag.ReadWrite)
snapshot.save(thumbnail_buffer, "PNG")
thumbnail.write(thumbnail_buffer.data())