Skip to content

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Positional Cropping for Wordpress Timthumb Alternative
if ( $crop ) {
$cmp_x = $orig_width / $dest_width;
$cmp_y = $orig_height / $dest_height;
// Calculate x or y coordinate, and width or height of source
if ( $cmp_x > $cmp_y ) {
$src_w = round( $orig_width / $cmp_x * $cmp_y );
$src_x = round( ( $orig_width - ( $orig_width / $cmp_x * $cmp_y ) ) / 2 );
}
else if ( $cmp_y > $cmp_x ) {
$src_h = round( $orig_height / $cmp_y * $cmp_x );
$src_y = round( ( $orig_height - ( $orig_height / $cmp_y * $cmp_x ) ) / 2 );
}
// positional cropping!
if( strpos($crop,',') > 0 ) {
$crop = explode(',',$crop);
$src_x = $crop[0];
$src_y = $crop[1];
}elseif( $crop !== true ) {
if (strpos ($crop, 't') !== false) $src_y = 0;
if (strpos ($crop, 'b') !== false) $src_y = $orig_height - $src_h;
if (strpos ($crop, 'l') !== false) $src_x = 0;
if (strpos ($crop, 'r') !== false) $src_x = $orig_width - $src_w;
}
}
@MatthewRuddy

Awesome! Going to give this a try tomorrow. Sorry I haven't been merging requests, been crazy busy!

@doitmax

You should consider to add the cropping direction to the file name too, to ensure that it is updated if the cropping direction has changed on the image.

-> image-300x200.jpg

to

-> image-300x200-tl.jpg

Otherwise the image is not recreated.

Cheers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.