GORAGOD.com

freelance, web developer, web designer, hosting, domain name

ถามเรื่อง วิธีแสดงภาพบนเว็ป ด้วย นามสกุล .tif หรือ .tiff ครับ



พอมีวิธี ที่สามารถ จะแสดงรูป ของ .tif ไหมครับ เผอิญ ที่บริษัท บังคับ ให้ใช้รูป file นี้ล่ะครับ

เพราะเหมือน search หา บทความ แล้ว บอกว่า php ไม่สามารถแสดงได้ครับ



วิธีที่ผมคิดคือ copy File ต้นฉบับ เป็น .tif แล้ว แปลงนามสกุล เป็น .jpg แล้วค่อยเอามาใช้ครับ พอใช้เสร็จแล้วค่อยลบทิ้ง

แต่

.

..

...



จะแปลง file ยังไง ด้วย php จะทำยังไง ครับ



เผอิญ ลอง search code จาก ต่างประเทศ ยังไม่เข้าใจครับ แล้วไป run แล้ว ไม่เกิดการเปลี่ยนแปลง













<?php


$exec = "convert /path/to/file.tiff /path/to/file.jpg";


exec($exec, $yaks);


//to view any errors >> // print_r($yaks);


?>



ใครพอมีวิธีไหมครับ

ขอบคุณครับ
11 พ.ย. 2553 5 4,376

ปกติแล้ว php รองรับไฟล์รูปภาพแค่ bmp gif jpg และ png เท่านั้น ครับ การนำไฟล์ชนิดอื่นมาใช้เช่นไฟล์ tif จำเป็นต้องใช้ตัวแปลงไฟล์ภายนอกครับ



ยกตัวอย่างโค้ดที่ให้มา convert.exe คือ โปรแกรมที่ใช้แปลงครับ



และ exec() คือคำสั่งที่ PHP เรียกใช้โปรแกรมภายนอกมาทำงาน



มีสิ่งที่ต้องพิจารณานิดหน่อยสำหรับกรณีนี้ คือ



1.Server อนุญาติให้ใช้คำสั่ง exec() หรือไม่ ดูได้จาก pnpinfo() ครับ

2.Server เป็นชนิดใด Windows หรือ Linux ซึ่งจำเป็นต้องหาโปรแกรม convert มาติดตั้งเพื่อใช้ในการแปลงไฟล์

3.โปรแกรม convert (อาจใช้ในชื่ออื่นก็ได้) สามารถทำงานด้วยคำสั่ง command line ได้หรือไม่ ซึ่งถ้าไม่ได้ โปรแกรมนั้นก็ใช้ไม่ได้ครับ (โปรแกรมที่ทำงานแบบ command line ได้ เช่น โปรแกรมต่างๆ ของ DOS ในสมัยก่อน)
#1





ขอบคุณ พี่admin ใจดี มากๆ ครับ



1.Server อนุญาติให้ใช้คำสั่ง exec() หรือไม่ ดูได้จาก pnpinfo() ครับ

 ตอบ  ผมไม่ทราบวิธี ตรวจสอบเลยครับ  เพราะไม่เคยใช่ function นี้มาก่อนครับ

2.Server เป็นชนิดใด Windows หรือ Linux ซึ่งจำเป็นต้องหาโปรแกรม convert มาติดตั้งเพื่อใช้ในการแปลงไฟล์

ตอบ เป็น windows ครับ

3.โปรแกรม convert (อาจใช้ในชื่ออื่นก็ได้) สามารถทำงานด้วยคำสั่ง command line ได้หรือไม่ ซึ่งถ้าไม่ได้ โปรแกรมนั้นก็ใช้ไม่ได้ครับ (โปรแกรมที่ทำงานแบบ command line ได้ เช่น โปรแกรมต่างๆ ของ DOS ในสมัยก่อน)





ผมคิดว่า ใน command line  ของ windowes โดยตรงน่าจะเปลี่ยนได้ครับ

เพราะ ลอง เอา file.tif  คลิกขวา และ แก้เป็น file.jpg แล้ว ข้อมูลไม่หายไปครับ

แต่ ไม่รู้จะเขียน สั่งให้เปลี่ยนยังไงครับ





----------------------

ตอนนี้ ลอง ศึกษา Image magick เผื่อน่าจะไปใช้แก้ปัญหาได้ครับ

ขอบคุณอีกครั้งครับ
#2

ถ้าเป็น Server ตัวเอง การเปิดใช้ คำสั่ง exec คงไม่ยากละครับ โดยเฉพาะ windows ซึ่งปกติแล้ว ถ้า Image Magick สามารถใช้งานได้ก้แสดง คำถามทั้งหมดของผมสามารถใช้งานได้ครับ



ที่เหลือก็แค่เขียนคำสั่งเพื่อเรียกใช้เท่านั้น ครับ
#3

ขอบคุณ พี่ admin มากครับ



ตอนนี้ download ImageMagick-6.6.5-8-Q16-windows-dll.exe  และphp_imagick_dyn-Q16.dll แล้วครับ

จากนั้น ติดตั้งไว้ที่ImageMagick-6.6.5-8-Q16-windows-dll.exe ไว้ที่ C:



อ้างอิงจาก : http://samphan.mayavadee.com/?p=109

และ ก็เอาfile  php_imagick_dyn-Q16.dll ไว้ใน directory “ext” ของ PHP   และ rename เป็นphp_imagick.dll


  • แล้วเปิดไฟล์ php.ini แล้วเพิ่ม  extension=php_imagick.dll


  • แล้วทำการ Restart ตัว Apache Services


  • เขียนไฟล์ PHP <?php phpinfo(); ?> 


  • ปรากฏ ว่ามันขึ้น


  •    


  •  PhP Startup : Unable to load dynamic library '\xampp\php\ext\php_imagick.dll' - The specified module could not be found    


  •  


  • ผมล่ะปวดหัว กับ เรื่องนี้จริงๆเลยครับ crying


  •  


  •  

  • #4

    ลองหาข้อมูลเพิ่มเติมดูนะครับ ดูเหมือนว่าจะต้องทำอะไรพิ่มเติมอีกมากกว่านั้น



    XAMPP สามารถใช้งานได้แน่นอนครับ (ผมเคยใช้ แต่เป็นที่น่าเสียดายว่าผมไม้ได้บันทึกขั้นตอนไว้) แต่เท่าที่จำได้ วิธีทำที่ใช้งานได้ เป็นภาษาอังกฤษครับ
    #5
    ความคิดเห็น
    ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 2M
    ^