scalepix✜

a quadplay✜ tool

Drag a quadplay✜ font or sprite PNG file onto this page to rescale it using multiple methods. Then, drag the processed image you like best out to save it and improve small details by hand. For fonts, ensure that characters are separated by at least three pixels. For sprite sheets, ensure that sprites are at least three pixels from the edge and each other.


2X

MMPX
EPX
XBR
Nearest
HQX
Bilinear

½X

Nearest
Average

The "Scale2X/EPX" algorithm was independently invented by both Eric Johnston and Andrea Mazzoleni. It works with transparency and does a good job of retaining sharpness by only using colors from the original palette. The drawbacks are that it rounds all 90 degree corners, rounds the sharp points of triangles, is inconsistent on both 1:1 and 2:1 slope edges, creates disconnected line intersections, and doesn't work well at the tips of arrows.

The "MMPX" algorithm is by Morgan McGuire and Mara Gagiu. It was designed for magnifying small pixel art sprites and fonts for quadplay. It maintains the good properties of EPX and also maintains square corners, handles 2:1 and 1:2 as well as 1:1 slopes, and has special handling of sprite silhouettes against transparency.

The "hq2x" algorithm is by Maxim Stepin. It gives beautiful full-screen results, but alters the style of pixel art assets by introducing new shades and blurring pixel text and icon shapes, especially against transparency, where it darkens instead of blending.

The "Bilinear2X" implementation is shifted by half a pixel down and to the right. The "Unbiased2X" algorithm performs bilinear without the shift and then averages with the original image to retain some sharpness (the result is similar to a Lancosz filter without sharpening lobes).

The "xBR2X" algorithm is by Hyllian, configured here to not introduce new colors and to process transparency. The implementation here is by Josep del Rio and provided under the MIT license.

There are many other pixel-art scaling algorithms with varying properties.