diff --git a/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.html b/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.html
index 0f5cac96c..eee1238b5 100644
--- a/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.html
+++ b/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.html
@@ -52,12 +52,6 @@
| {{>inputCheckbox key='showAnnotations'}} |
- {{#if showQuality}}
-
- | Image quality (%) |
- {{>inputNumber key='quality' min="1" max="100"}} |
-
- {{/if}}
diff --git a/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.js b/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.js
index 6ab2d0571..73ef9769f 100644
--- a/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.js
+++ b/Packages/ohif-viewerbase/client/components/viewer/downloadDialog/downloadDialog.js
@@ -31,10 +31,6 @@ Template.imageDownloadDialog.onCreated(() => {
type: Boolean,
label: 'Show Annotations',
defaultValue: true
- },
- quality: {
- type: Number,
- defaultValue: 100
}
});
@@ -86,8 +82,7 @@ Template.imageDownloadDialog.onRendered(() => {
const formData = instance.form.value();
const image = instance.viewportPreview;
const type = 'image/' + formData.type;
- const quality = formData.type === 'png' ? 1 : formData.quality / 100;
- const dataUrl = instance.downloadCanvas.toDataURL(type, quality);
+ const dataUrl = instance.downloadCanvas.toDataURL(type, 1);
image.src = dataUrl;
const $element = $(enabledElement.element);
@@ -105,21 +100,12 @@ Template.imageDownloadDialog.onRendered(() => {
});
};
- // TODO: Add quality parameter to cornerstoneTools' saveAs method
instance.downloadImage = () => {
const formData = instance.form.value();
- const link = document.createElement('a');
- link.download = `${formData.name}.${formData.type}`;
- link.href = instance.viewportPreview.src;
+ const filename = `${formData.name}.${formData.type}`;
+ const mimetype = `image/${formData.type}`;
- // Create a 'fake' click event to trigger the download
- if (document.createEvent) {
- const event = document.createEvent('MouseEvents');
- event.initMouseEvent('click', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
- link.dispatchEvent(event);
- } else if (link.fireEvent) {
- link.fireEvent('onclick');
- }
+ cornerstoneTools.saveAs(instance.viewportElement, filename, mimetype);
};
instance.autorun(() => {
@@ -160,6 +146,12 @@ Template.imageDownloadDialog.onRendered(() => {
});
});
+Template.imageDownloadDialog.onDestroyed(() => {
+ const instance = Template.instance();
+
+ cornerstone.disable(instance.viewportElement);
+});
+
Template.imageDownloadDialog.events({
'click .js-keep-aspect'(event, instance) {
const currentState = instance.keepAspect.get();
@@ -171,10 +163,6 @@ Template.imageDownloadDialog.events({
instance.changeObserver.changed();
},
- 'input [data-key=quality]'(event, instance) {
- instance.changeObserver.changed();
- },
-
'input [data-key=width]'(event, instance) {
const { viewportElement, downloadCanvas } = instance;
const formData = instance.form.value();
@@ -209,12 +197,5 @@ Template.imageDownloadDialog.events({
Template.imageDownloadDialog.helpers({
keepAspect() {
return Template.instance().keepAspect.get();
- },
-
- showQuality() {
- const instance = Template.instance();
- instance.changeObserver.depend();
- if (!instance.form) return true;
- return instance.form.item('type').value() === 'jpeg';
}
});