Skip to content
This repository has been archived by the owner on Nov 20, 2018. It is now read-only.

Commit

Permalink
docs(scaling & thumbnails): 3rd-party scaling doc updates (#1586)
Browse files Browse the repository at this point in the history
  • Loading branch information
rnicholus authored Jun 15, 2016
1 parent 07873ef commit 9152bba
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 14 deletions.
14 changes: 7 additions & 7 deletions docs/features/scaling.jmd
Original file line number Diff line number Diff line change
Expand Up @@ -161,20 +161,20 @@ the parent images will include a "qquuid" request parameter instead. If you are
### Using a third-party library to resize images

Fine Uploader's internal image resize code delegates to the `drawImage` method on the browser's native `CanvasRenderingContext2D` object.
This object is used to manipulate a `<canvas>` element, which represents a submitted image `File or `Blob`.
Most browsers use linear interpolation when resizing images. This leads to extreme aliasing and Moire patterns
This object is used to manipulate a `<canvas>` element, which represents a submitted image `File` or `Blob`.
Most browsers use linear interpolation when resizing images. This can lead to extreme aliasing and moire patterns
which is a deal breaker for anyone resizing images for art/photo galleries, albums, etc.
These kinds of artifacts are impossible to remove after the fact.

If speed is most important, and precise scaled image generation is _not_ paramount, you should continue to use Fine Uploader's
internal scaling implementation. However, if you want to generate the higher quality scaled images for upload, you should
internal scaling implementation. However, if you want to generate higher quality scaled images for upload, you should
instead use a third-party library to resize submitted image files, such as [pica] or [limby-resize]. As of version 5.10 of
Fine Uploader, it is extremely easy to integrate such a plug-in into this library. In fact, Fine Uploader will continue
to properly orient the submitted image file and then pass a properly sized `<canvas>` to the image scaling library of
your choice to receive the resized image file. The only caveat is that, due to issues with scaling larger images in
iOS, you will need to continue to use Fine Uploader's internal scaling algorithm for that particular OS, as other
third-party scaling libraries most likely do _not_ continue logic to handle this complex case. Luckily, that is easy
to account for as well.
your choice to receive the resized image file, along with the original full-sized image file drawn onto a `<canvas>` for reference.
The only caveat is that, due to issues with scaling larger images in iOS, you may need to continue to use
Fine Uploader's internal scaling algorithm for that particular OS, as other third-party scaling libraries
most likely do _not_ contain logic to handle this complex case. Luckily, that is easy to account for as well.

If you'd like to, for example, use pica to generate higher-quality scaled images, simply pull pica into your project,
and contribute a [`scaling.customResizer` function][customResizer], like so:
Expand Down
14 changes: 7 additions & 7 deletions docs/features/thumbnails.jmd
Original file line number Diff line number Diff line change
Expand Up @@ -130,19 +130,19 @@ images, ensure they are already oriented correctly.
#### Using a third-party library to resize images

Fine Uploader's internal image resize code delegates to the `drawImage` method on the browser's native `CanvasRenderingContext2D` object.
This object is used to manipulate a `<canvas>` element, which represents a submitted image `File or `Blob`.
Most browsers use linear interpolation when resizing images. This leads to extreme aliasing and Moire patterns
This object is used to manipulate a `<canvas>` element, which represents a submitted image `File` or `Blob`.
Most browsers use linear interpolation when resizing images. This can lead to extreme aliasing and moire patterns
which may result in lower quality displayed thumbnails.

If speed is most important, and precise scaled thumbnail generation is _not_ paramount, you should continue to use Fine Uploader's
internal scaling implementation. However, if you want to generate the higher quality thumbnail images for display, you should
internal scaling implementation. However, if you want to generate higher quality thumbnail images for display, you should
instead use a third-party library to resize submitted image files, such as [pica] or [limby-resize]. As of version 5.10 of
Fine Uploader, it is extremely easy to integrate such a plug-in into this library. In fact, Fine Uploader will continue
to properly orient the submitted image file and then pass a properly sized `<canvas>` to the image scaling library of
your choice to receive the resized image file. The only caveat is that, due to issues with scaling larger images in
iOS, you will need to continue to use Fine Uploader's internal scaling algorithm for that particular OS, as other
third-party scaling libraries most likely do _not_ continue logic to handle this complex case. Luckily, that is easy
to account for as well.
your choice to receive the resized image file, along with the original full-sized image file drawn onto a `<canvas>` for reference.
The only caveat is that, due to issues with scaling larger images in iOS, you will likely need to continue to use
Fine Uploader's internal scaling algorithm for that particular OS, as other third-party scaling libraries
most likely do _not_ contain logic to handle this complex case. Luckily, that is easy to account for as well.

If you'd like to, for example, use pica to generate higher-quality scaled images, simply pull pica into your project,
and contribute a [`thumbnails.customResizer` function][customResizer], like so:
Expand Down

0 comments on commit 9152bba

Please sign in to comment.