แนะให้ทีค่ะ เกี่ยวกับการจำกัดขนาดของภาพไม่เกิน 2 Mb และความกว้าง ความสูงค่ะ
$filename = 'somefile.txt';
echo $filename . ': ' . filesize($filename) . ' bytes';
list($width, $height, $type, $attr) = getimagesize("img/flag.jpg");
Date :
2014-07-08 16:48:36
By :
Chaidhanan
imagecreatetruecolor ( int $width , int $height )
imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
Date :
2014-07-08 16:56:59
By :
Chaidhanan
This example will resample an image to half its original size.
Code (PHP)
<?php
// The file
$filename = 'test.jpg';
$percent = 0.5;
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width, $height) = getimagesize($filename);
$new_width = $width * $percent;
$new_height = $height * $percent;
// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
// Output
imagejpeg($image_p, null, 100);
?>
Date :
2014-07-08 16:58:19
By :
Chaidhanan
ขอบคุณค่ะพี่ Chaidhanan
แต่ยังงงอ่ะค่ะ แบบว่า ต้องปรับให้ไม่เกิน 2M และ ความกว้างตรงไหนคะ
Date :
2014-07-08 17:05:12
By :
because
สำหรับ ไซด์ 2 m แค่เช็ค ว่าเกินก็เด้งกลับไปให้เขา ทำใหม่ครับ
ส่วนการ resize ผมว่าไม่ต้องทำก็ได้ครับ ใช้ html เป็นตัวขยายเอง
<img src="imgfile.png" width=700 />
ความสูงมันก็จะ ปรับตามเปอรเซนต์ความกว้างเองครับ
เพราะ 2m มันไม่แมทกับ 700 ครับ 700 นี่ไฟล์มันใหญ่มากนะครับ
ลองเอา 700*300 = 2100000 / 8 = 237000 byte อันนี้แค่ 2สี ขาวดำ เท่านี้นครับ
แต่ถ้าใส่ 256 เข้าไป 2 m พอดี้พอดี แล้วถ้า 65535 แล้วถ้า truecolor 5555
เช็คน้ำหนักกภาพก็พอครับ ไม่ต้องเช็คไซด์กว้างยาว
ไซด์อาจะเวอร์ไปหน่อยนะครับ แต่ 700 ส่วนใหญ่เกิน 2m ครับ ยกเว้นภามนั้น สีน้อย 16สี
ก็อาจจะใช้ 1pixel ต่อ 4 บิตได้ ถ้าจำนวนสียิ่งมาก น้ำหนักก็ยิ่งมากครับ
Date :
2014-07-08 17:38:52
By :
Chaidhanan
Load balance : Server 02