0

写真をディスクに保存する機能があります。

public function uploadToDiskMulty($folderPath, $filename)
{
    // create the transfer adapter
    // note that setDestiation is deprecated, instead use the Rename filter
    $adapter = new Zend_File_Transfer_Adapter_Http();
    $adapter->addFilter('Rename', array(
            'target'    => $filename,
            'overwrite' => true
    ));

    // try to receive one file
    if ($adapter->receive($folderPath)) {
        $message = "success";
    } else {
        $message = "fail";
    }

    return $message;
 }

次に、画像をトリミングする機能があります

public function uploadCroppedImage($image, $x, $y, $w, $h)
{
    $targ_w = 200;
    $targ_h = 300;
    $jpeg_quality = 90;


    $img_r = imagecreatefromstring(file_get_contents($image));
    $dst_r = ImageCreateTrueColor( $targ_w, $targ_h );

    imagecopyresampled($dst_r, $img_r, 0, 0, $x, $y, $targ_w, $targ_h, $w, $h);
}

the$image = http://test.com/test_folder/example.jpg

the$folderPath = /var/www/media/test_folder/

そしてその$filename = example.jpg

私の問題は、uploadToDiskMulty関数を実行できるように、トリミングされた画像パスが必要なことです。

imagecopyresampledtrueまたはfalseを返します。

何か案は?

ありがとう

4

1 に答える 1

0

imagejpeg()、または必要なタイプと同等のものを使用して出力できます。

imagejpeg($dst_r, 'somepath/someimg.jpg');
于 2012-04-16T20:39:31.770 に答える