Monday, October 4, 2010

Image resizer script



image_type = $image_info[2];
if( $this->image_type == IMAGETYPE_JPEG ) {
$this->image = imagecreatefromjpeg($filename);
} elseif( $this->image_type == IMAGETYPE_GIF ) {
$this->image = imagecreatefromgif($filename);
} elseif( $this->image_type == IMAGETYPE_PNG ) {
$this->image = imagecreatefrompng($filename);
}
}
function save($filename, $image_type=IMAGETYPE_JPEG, $compression=75,
$permissions=null) {
if( $image_type == IMAGETYPE_JPEG ) {
imagejpeg($this->image,$filename,$compression);
} elseif( $image_type == IMAGETYPE_GIF ) {
imagegif($this->image,$filename);
} elseif( $image_type == IMAGETYPE_PNG ) {
imagepng($this->image,$filename);
}
if( $permissions != null) {
chmod($filename,$permissions);
}
}
function output($image_type=IMAGETYPE_JPEG) {
if( $image_type == IMAGETYPE_JPEG ) {
imagejpeg($this->image);
} elseif( $image_type == IMAGETYPE_GIF ) {
imagegif($this->image);
} elseif( $image_type == IMAGETYPE_PNG ) {
imagepng($this->image);
}
}
function getWidth() {
return imagesx($this->image);
}
function getHeight() {
return imagesy($this->image);
}
function resizeToHeight($height) {
$ratio = $height / $this->getHeight();
$width = $this->getWidth() * $ratio;
$this->resize($width,$height);
}
function resizeToWidth($width) {
$ratio = $width / $this->getWidth();
$height = $this->getheight() * $ratio;
$this->resize($width,$height);
}
function scale($scale) {
$width = $this->getWidth() * $scale/100;
$height = $this->getheight() * $scale/100;
$this->resize($width,$height);
}
function resize($width,$height) {
$new_image = imagecreatetruecolor($width, $height);
imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height,
$this->getWidth(), $this->getHeight());
$this->image = $new_image;
}
}
?>



The first example below will load a file named picture.jpg resize it to 250
pixels wide and 400 pixels high and resave it as picture2.jpg

load('picture.jpg');
$image->resize(250,400);
$image->save('picture2.jpg');
?>

If you want to resize to a specifed width but keep the dimensions ratio the
same then the script can work out the required height for you, just use the
resizeToWidth function.

load('picture.jpg');
$image->resizeToWidth(250);
$image->save('picture2.jpg');
?>

You may wish to scale an image to a specified percentage like the following
which will resize the image to 50% of its original width and height

load('picture.jpg');
$image->scale(50);
$image->save('picture2.jpg');
?>

You can of course do more than one thing at once. The following example
will create two new images with heights of 200 pixels and 500 pixels

load('picture.jpg');
$image->resizeToHeight(500);
$image->save('picture2.jpg');
$image->resizeToHeight(200);
$image->save('picture3.jpg');
?>

The output function lets you output the image straight to the browser
without having to save the file. Its useful for on the fly thumbnail
generation

load('picture.jpg');
$image->resizeToWidth(150);
$image->output();
?>

The following example will resize and save
an image which has been uploaded via a form




load($_FILES['uploaded_image']['tmp_name']);
$image->resizeToWidth(150);
$image->output();
} else {
?>

Thursday, September 30, 2010

Password strength meter

Here is a algorithm of password strength meter like gmail having strength meter

working as the follow:
We have many cases to care about to know a password strength , so we will present a The cases we have are :

* If the password matches the username then BadPassword
* If the password is less than 4 characters then TooShortPassword
* Score += password length * 4
* Score -= repeated characters in the password ( 1 char repetition )
* Score -= repeated characters in the password ( 2 char repetition )
* Score -= repeated characters in the password ( 3 char repetition )
* Score -= repeated characters in the password ( 4 char repetition )
* If the password has 3 numbers then score += 5
* If the password has 2 special characters then score += 5
* If the password has upper and lower character then score += 10
* If the password has numbers and characters then score += 15
* If the password has numbers and special characters then score += 15
* If the password has special characters and characters then score += 15
* If the password is only characters then score -= 10
* If the password is only numbers then score -= 10

* If score > 100 then score = 100

Now according to score we are going to decide the password strength

* If 0 < score < 34 then BadPassword
* If 34 < score < 68 then GoodPassword
* If 68 < score < 100 then StrongPassword