diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index ad3dce197789e625157b2aaac2a2c6d139bd8813..8eaae74d3c30a0e9cecef833fa78be0e0fca6c6d 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -1393,8 +1393,8 @@
 			}
 			urlSpec.x *= window.devicePixelRatio;
 			urlSpec.y *= window.devicePixelRatio;
-			urlSpec.x = Math.floor(urlSpec.x);
-			urlSpec.y = Math.floor(urlSpec.y);
+			urlSpec.x = Math.ceil(urlSpec.x);
+			urlSpec.y = Math.ceil(urlSpec.y);
 			urlSpec.forceIcon = 0;
 			return OC.generateUrl('/core/preview.png?') + $.param(urlSpec);
 		},
diff --git a/apps/files_sharing/js/public.js b/apps/files_sharing/js/public.js
index 4908968a9376fb0002ac811af3a9f4a8fb004265..6a6095317af96fea840cd588cadbbc5b740c9595 100644
--- a/apps/files_sharing/js/public.js
+++ b/apps/files_sharing/js/public.js
@@ -90,8 +90,8 @@ OCA.Sharing.PublicApp = {
 		// dynamically load image previews
 		var token = $('#sharingToken').val();
 		var bottomMargin = 350;
-		var previewWidth = Math.floor($(window).width() * window.devicePixelRatio);
-		var previewHeight = Math.floor(($(window).height() - bottomMargin) * window.devicePixelRatio);
+		var previewWidth = Math.ceil($(window).width() * window.devicePixelRatio);
+		var previewHeight = Math.ceil(($(window).height() - bottomMargin) * window.devicePixelRatio);
 		previewHeight = Math.max(200, previewHeight);
 		var params = {
 			x: previewWidth,
@@ -168,8 +168,8 @@ OCA.Sharing.PublicApp = {
 				}
 				urlSpec.x *= window.devicePixelRatio;
 				urlSpec.y *= window.devicePixelRatio;
-				urlSpec.x = Math.floor(urlSpec.x);
-				urlSpec.y = Math.floor(urlSpec.y);
+				urlSpec.x = Math.ceil(urlSpec.x);
+				urlSpec.y = Math.ceil(urlSpec.y);
 				urlSpec.t = $('#dirToken').val();
 				return OC.generateUrl('/apps/files_sharing/ajax/publicpreview.php?') + $.param(urlSpec);
 			};