diff --git a/src/components/OpenSeadragonViewer.js b/src/components/OpenSeadragonViewer.js
index fd6e66cabad2a467182fa063df5c5e24962f5a8c..487f5ca0fdd2f477b0064e3a78bc901264cec87f 100644
--- a/src/components/OpenSeadragonViewer.js
+++ b/src/components/OpenSeadragonViewer.js
@@ -56,19 +56,14 @@ export class OpenSeadragonViewer extends Component {
    * React lifecycle event
    */
   componentDidMount() {
-    const { viewer } = this.props;
+    const { osdConfig, viewer } = this.props;
     if (!this.ref.current) {
       return;
     }
 
     this.viewer = new OpenSeadragon({
-      alwaysBlend: false,
-      blendTime: 0.1,
       id: this.ref.current.id,
-      preserveImageSizeOnResize: true,
-      preserveViewport: true,
-      showNavigationControl: false,
-
+      ...osdConfig,
     });
 
     this.osdCanvasOverlay = new OpenSeadragonCanvasOverlay(this.viewer);
@@ -327,6 +322,7 @@ OpenSeadragonViewer.defaultProps = {
   children: null,
   highlightedAnnotations: [],
   label: null,
+  osdConfig: {},
   palette: {},
   searchAnnotations: [],
   selectedAnnotations: [],
@@ -341,6 +337,7 @@ OpenSeadragonViewer.propTypes = {
   classes: PropTypes.objectOf(PropTypes.string).isRequired,
   highlightedAnnotations: PropTypes.arrayOf(PropTypes.object),
   label: PropTypes.string,
+  osdConfig: PropTypes.object, // eslint-disable-line react/forbid-prop-types
   palette: PropTypes.object, // eslint-disable-line react/forbid-prop-types
   searchAnnotations: PropTypes.arrayOf(PropTypes.object),
   selectedAnnotations: PropTypes.arrayOf(PropTypes.object),
diff --git a/src/config/settings.js b/src/config/settings.js
index 900a661a6eaa2ab5a4c90b956c3a0c14a6eb4f8c..3fff7bd08d919d5882359f29081f18a3f6f6587d 100644
--- a/src/config/settings.js
+++ b/src/config/settings.js
@@ -268,5 +268,12 @@ export default {
   galleryView: {
     height: 120, // height of gallery view thumbnails
     width: null, // width of gallery view thumbnails (or null, to auto-calculate an aspect-ratio appropriate size)
+  },
+  osdConfig: { // Default config used for OpenSeadragon
+    alwaysBlend: false,
+    blendTime: 0.1,
+    preserveImageSizeOnResize: true,
+    preserveViewport: true,
+    showNavigationControl: false,
   }
 };
diff --git a/src/containers/OpenSeadragonViewer.js b/src/containers/OpenSeadragonViewer.js
index 17af4641e975df48593615bbdc32dd5ee0f95ba9..196d195ff265744171e0a320f346f3eac430c165 100644
--- a/src/containers/OpenSeadragonViewer.js
+++ b/src/containers/OpenSeadragonViewer.js
@@ -34,6 +34,7 @@ const mapStateToProps = (state, { companionWindowId, windowId }) => ({
     canvasId: (getCurrentCanvas(state, { windowId }) || {}).id,
     windowId,
   }),
+  osdConfig: state.config.osdConfig,
   palette: getTheme(state).palette,
   searchAnnotations: getSearchAnnotationsForWindow(
     state,