ผมได้ปรับปรุงให้รองรับไฟล์ภาพขนาดสูงสุด 5M โดยไม่จำกัดความสูงความกว้าง รูปที่อัพโหลดเข้ามา โปรแกรมจะทำการย่อภาพตามเงื่อนไขนี้ครับ
1. หากมีขนาดเกิน 200k โปรแกรมจะทำการลดความละเอียดลง
2. หากมีขนาดความสูง หรือความกว้างเกิน 1000 pixel โปรแกรมก็จะทำการย่อลงให้ไม่เกิน 1000 pixel
นอกจากจะทำการย่อความละเอียด หรือความสูงความกว้างแล้ว โปรแกรมจะทำการการ Unsharp Mask เพื่อให้ภาพที่ย่อมีความคมชัดขึ้น
แต่หากภาพที่ส่งมามีการทำการ Unsharp Mask มาแล้ว จะทำให้ภาพแตกเป็นเม็ด เป็นเส้น วิธีแก้ไขคือ
1. หลีกเลี่ยงไม่ให้โปรแกรมทำการ unsharp mask ด้วยกันส่งภาพที่มีขนาดไม่เกิน 200k หรือ กว้างสูงไม่เกิน 1000px
2. หรือ ไม่ต้องทำการ unsharp mask ภาพมาก่อน ให้โปรแกรมทำการ unsharp mask ให้ แต่ภาพจะต้องเกิน 200k หรือ กว้างสูงเกิน 1000px โปรแกรมจึงจะทำให้ครับ
นอกจากนี้หากความเร็วในการอัพโหลดภาพไม่พอ อาจจะส่งภาพไม่ผ่าน เนื่องจากเซริฟเวอร์จะตัดการเชื่อมต่อที่นานเกินไป (ประมาณ 20 วินาที)
ยังไงลองทดสอบดูนะครับ
หมายเหตุ รูปด้านบน มีรูปต้นฉบับขนาด 4.8M, 4128px X 2322 px โปรแกรมทำการย่อเป็นขนาด 117k, 1,000px × 562px