Re: crop an image

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Does anyone have some insight here? I am trying to crop an image. The crop seems to almost work, but I get black bars on the image. Has anyone had any experience with cropping images using the GD library?

Thanks.

Chris

On Nov 2, 2007, at 5:41 PM, Chris Bruce wrote:

What was the solution here? I am trying to crop but am getting a black bar the same height as the crop at top. For this image I want to crop 40 pixels off of the top:

$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($jpegpath);
imagecopyresampled($image_p, $image, 0, 0, 0, 40, 765, 810, 665, 1000)
imagejpeg($image_p, $destImage, 75);

How do I merely crop x pixels from an image without having black bars? I have tried the x coordinate too with the same result.

Thanks,

Chris

On Oct 31, 2007, at 8:58 AM, Merlin wrote:

Merlin schrieb:
Hi everybody,
I am still strugling with the crop problem.
It looks like it is not possible with PHP to do an imagecopyresampled
and and imagecopy on the same image.
Here is what I try to do:
1: Resize image to 80px width and correct ratio
2: Crop from that image a 80x60 part
Both work for themselfes, but not together.
Does anybody see the problem?
$outputImg = ImageCreateTrueColor($maxX, $dstY);
imagecopyresampled($outputImg, $inputImg, $posX, $posY,0,0, $picX, $picY, $srcX, $srcY);
$outputImg = ImageCreateTrueColor(80, 60);
imagecopy($outputImg, $inputImg, 0,0 , 0, 250, $picX, $picY); If I leave the second imagecreate away, the image will be copied into the bigger size and is not 80x60.
Thank you for any help.
Merlin
David Christopher Zentgraf schrieb:
Copying half a pixel? I dare say that's where the problem is.

Chrs,
Dav

On 31 Oct 2007, at 19:34, Merlin wrote:

Hi there,

I do have a small problem with the proportions of image copy

The image is originally vertical in 100px width and 141px height.
Now I want to crop it to 80 px width and 60px height. There should be no black area and the proportions should be OK. That means that I have to copy only part of the image. In this case it would be 40.5px from above (141-60 / 2 ) and until 100.5 (40.5+60).
This would crop the middle part of the image.

Now with imagecoyresampled I can set the starting point of 40.5px, but not the ending point. The image will have a black bottom.

Here is the code I am using:
imagecopyresampled($outputImg, $inputImg, 0,0, 0 , 40.5, 80, 60, $srcX, $srcY);

Thank you for any hint. Maybe somebody has a good idea on how to crop that image.

Best regards,

Merlin

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

got it, sorrry for the confusion. I mixed up the lables.

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux