You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
284 lines
7.3 KiB
284 lines
7.3 KiB
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | ThinkPHP [ WE CAN DO IT JUST THINK IT ]
|
|
// +----------------------------------------------------------------------
|
|
// | Copyright (c) 2006-2015 http://thinkphp.cn All rights reserved.
|
|
// +----------------------------------------------------------------------
|
|
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
|
|
// +----------------------------------------------------------------------
|
|
// | Author: yunwuxin <448901948@qq.com>
|
|
// +----------------------------------------------------------------------
|
|
namespace tests;
|
|
|
|
use think\Image;
|
|
|
|
class ThumbTest extends TestCase
|
|
{
|
|
public function testJpeg()
|
|
{
|
|
$pathname = TEST_PATH . 'tmp/thumb.jpg';
|
|
|
|
//1
|
|
$image = Image::open($this->getJpeg());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_CENTER)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//2
|
|
$image = Image::open($this->getJpeg());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_SCALING)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(150, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//3
|
|
$image = Image::open($this->getJpeg());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_FILLED)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//4
|
|
$image = Image::open($this->getJpeg());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_NORTHWEST)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//5
|
|
$image = Image::open($this->getJpeg());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_SOUTHEAST)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//6
|
|
$image = Image::open($this->getJpeg());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_FIXED)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
}
|
|
|
|
|
|
public function testPng()
|
|
{
|
|
$pathname = TEST_PATH . 'tmp/thumb.png';
|
|
|
|
//1
|
|
$image = Image::open($this->getPng());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_CENTER)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//2
|
|
$image = Image::open($this->getPng());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_SCALING)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(150, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//3
|
|
$image = Image::open($this->getPng());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_FILLED)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//4
|
|
$image = Image::open($this->getPng());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_NORTHWEST)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//5
|
|
$image = Image::open($this->getPng());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_SOUTHEAST)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//6
|
|
$image = Image::open($this->getPng());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_FIXED)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
}
|
|
|
|
public function testGif()
|
|
{
|
|
$pathname = TEST_PATH . 'tmp/thumb.gif';
|
|
|
|
//1
|
|
$image = Image::open($this->getGif());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_CENTER)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//2
|
|
$image = Image::open($this->getGif());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_SCALING)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(113, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//3
|
|
$image = Image::open($this->getGif());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_FILLED)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//4
|
|
$image = Image::open($this->getGif());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_NORTHWEST)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//5
|
|
$image = Image::open($this->getGif());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_SOUTHEAST)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
|
|
//6
|
|
$image = Image::open($this->getGif());
|
|
|
|
$image->thumb(200, 200, Image::THUMB_FIXED)->save($pathname);
|
|
|
|
$this->assertEquals(200, $image->width());
|
|
$this->assertEquals(200, $image->height());
|
|
|
|
$file = new \SplFileInfo($pathname);
|
|
|
|
$this->assertTrue($file->isFile());
|
|
|
|
@unlink($pathname);
|
|
}
|
|
} |