// // SImgU -- simple image utilities // Copyright (c) 2006 Mackley F. Pexton. All rights reserved. // rotate = function(img,angle,maxwidth,maxheight) { var m = SImgU.get(img); m.angle += angle; m.render(maxwidth,maxheight); } magnify = function(img,factor,maxwidth,maxheight) { var m = SImgU.get(img); m.magnification *= factor; m.render(maxwidth,maxheight); } // SImgU control object SImgU.ServerProg = 'simgu.php'; // location of server-side helper program function SImgU(img) { this.img = SImgU.ref(img); this.origSrc = img.src; this.angle = 0; this.magnification = 1.0; } SImgU.get = function(img) { // Return control object for image (stored in image object). img = SImgU.ref(img); if (! img.SImgU) { img.SImgU = new SImgU(img); } return img.SImgU; } SImgU.ref = function(e) { return (typeof e == "string") ? document.getElementById(e) : e; } SImgU.prototype.render = function(maxwidth,maxheight) { // Render image by replacing it's src attribute var url = SImgU.ServerProg + '?src=' + encodeURI(this.origSrc); if (this.angle) { url += '&rotate=' + this.angle; } if (this.magnification) { url += '&magnify=' + this.magnification; } if (maxwidth) { url += '&maxwidth=' + maxwidth; } if (maxheight) { url += '&maxheight=' + maxheight; } this.img.src = url; }