its very good bitcraft
the shader approach can be done like this if you can understand my bad coding
#constant swidth = 1024
#constant sheight = 76
img = getimage(0,0,swidth,sheight)
sprID=CreateSprite(img)
SetSpriteSize(sprID,swidth,sheight)
SetSpritePosition(sprID,0,0)
SetSpriteShader( sprID,pixelShader)
SetShaderConstantByName(pixelShader,"pixels",1024/10,768/10,0,0)
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
#define PROCESSING_TEXTURE_SHADER
varying mediump vec2 uvVarying;
uniform sampler2D texture0;
uniform vec2 pixels;
void main(void)
{
vec2 p = uvVarying;
p.x -= mod(p.x, 1.0 / pixels.x);
p.y -= mod(p.y, 1.0 / pixels.y);
vec3 col = texture2D(texture0, p).rgb;
gl_FragColor = vec4(col, 1.0);
}