什么是图像魔术图像格式转换的文件路径


What is the filepath for Image Magick image format Conversion

我正在尝试使用image Magick PECL将。tif图像转换为jpeg。我写的函数在

下面
$images = new Imagick('$_FILE['img']');
  foreach($images as $i=>$image) {
    // Providing 0 forces thumbnail Image to maintain aspect ratio
    $image->thumbnailImage(768,0);
    $image->writeImage("uploads/page".$i.".jpg");
    echo "<img src='page$i.jpg' alt='images' ></img>";
  }
  $images->clear();

在这段代码的第一行如何使用post方法形式的动作文件路径到$images变量?

in form

<form action="<?php echo base_url().'contoller/change_method'?>" method="post" enctype="multipart/form-data">
    <input type="file" name="img">
</form>
在控制器

public function change_method()
{
    $images = new Imagick('$_FILE['img']');
    foreach($images as $i=>$image) 
    {
        // Providing 0 forces thumbnail Image to maintain aspect ratio
        $image->thumbnailImage(768,0);
        $image->writeImage("uploads/page".$i.".jpg");
        echo "<img src='page$i.jpg' alt='images' ></img>";
    }
    $images->clear();
}

因为Imagick将所有工作传递给ImageMagick,而ImageMagick也可以类似地将工作委托给其他进程,所以你应该使用realpath函数将路径转换为完整路径。

$realPath = realpath($_FILE['img']);
if ($realPath === false) {
    throw new 'Exception("File was not located at ".$_FILE['img']);
}
$imagick = new Imagick($realPath);

这会将路径转换为完整路径,并在图像位于错误位置时检测。