PHPackages                             uginroot/image-resize - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. uginroot/image-resize

ActiveLibrary[Image &amp; Media](/categories/media)

uginroot/image-resize
=====================

Image resizing in php

v1.0.6(6y ago)2531MITPHPPHP &gt;=7.1CI failing

Since Jul 22Pushed 6y agoCompare

[ Source](https://github.com/uginroot/image-resize)[ Packagist](https://packagist.org/packages/uginroot/image-resize)[ RSS](/packages/uginroot-image-resize/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (7)Dependencies (1)Versions (8)Used By (1)

Install
=======

[](#install)

```
composer require uginroot/image-resize:^1.0
```

Create
======

[](#create)

#### createFromString

[](#createfromstring)

```
$image = ImageResize::createFromString(file_get_content($path));
```

#### createFromPath

[](#createfrompath)

```
$image = ImageResize::createFromPath($path);
```

#### \_\_constructor

[](#__constructor)

```
$content = file_get_content($path);
$resource = imagecreatefromstring($content);
$image = new ImageCreate($resource, $content);
$image = new ImageCreate($resource); // $image->resetOrientation() not working
```

Save
====

[](#save)

### formats

[](#formats)

```
ImageCreate::FORMAT_JPEG;
ImageCreate::FORMAT_PNG;
ImageCreate::FORMAT_WEBP;
```

#### save

[](#save-1)

```
$image->save($path);
// save(string $path [, int $format = ImageCreate::FORMAT_JPEG [, bool $owerwrite = false [, int $mode = 0666]]])
```

#### Optimize image

[](#optimize-image)

See this package [link](https://github.com/uginroot/image-resize-optimizer)

#### getContent

[](#getcontent)

```
echo $image->getContent();
// getContent([int $format = ImageCreate::FORMAT_JPEG]);
```

#### print

[](#print)

```
$image->print();
// $image->print([int $format = ImageCreate::FORMAT_JPEG]);
```

#### \_\_toString

[](#__tostring)

```
(string)$image === $image->getContent(ImageCreate::FORMAT_JPEG); // true
```

#### copyResource

[](#copyresource)

```
$image->copyResource();
```

Info
====

[](#info)

#### getWidth

[](#getwidth)

```
$image->getWidth();
```

#### getHeight

[](#getheight)

```
$image->getHeight();
```

resetOrientation
================

[](#resetorientation)

Rotate photo if the set exif orientation tag

```
$image->resetOrientation();
```

Change image
============

[](#change-image)

### scale

[](#scale)

```
$image->scale(50);
// scale(int|float 50)
```

original(600x300)result(300x150)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/scale.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/scale.jpg)### resize

[](#resize)

```
$image->resize(100, 100);
// resize(int $width, int $heihht [, bool $increase = true])
```

original(600x300)result(100x100)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resize.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resize.jpg)### resizeToHeight

[](#resizetoheight)

```
$image->resizeToHeight(100);
// resizeToHeight(int $height [, bool $increase = true])
```

original(600x300)result(100x200)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToHeight.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToHeight.jpg)### resizeToWidth

[](#resizetowidth)

```
$image->resizeToWidth(100);
// resizeToWidth(int $width [, bool $increase = true])
```

original(600x300)result(100x50)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToWidth.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToWidth.jpg)### resizeToLongSide

[](#resizetolongside)

```
$image->resizeToLongSide(100);
// resizeToLongSide(int $side [, $increase = true])
```

original(600x300)result(100x50)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToLongSide.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToLongSide.jpg)### resizeToShortSide

[](#resizetoshortside)

```
$image->resizeToShortSide(100);
// resizeToShortSide(int $side [, $increase = true])
```

original(600x300)result(100x200)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToShortSide.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToShortSide.jpg)### resizeToBestFit

[](#resizetobestfit)

```
$image->resizeToBestFit(100, 100);
// resizeToBestFit(int $width, int $height [, $increase = true])
```

original(600x300)result(100x50)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToBestFit.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToBestFit.jpg)### resizeToWorstFit

[](#resizetoworstfit)

```
$image->resizeToWorstFit(100, 100);
// resizeToWorstFit(int $width, int $height [, $increase = true])
```

original(600x300)result(100x200)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToWorstFit.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeToWorstFit.jpg)### crop

[](#crop)

```
$image->crop(0, 0, 100, 100);
// crop(int $x, int $y, int $width, int $height)
```

original(600x300)result(100x100)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/crop.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/crop.jpg)### positions

[](#positions)

```
ImageResize::POSITION_CENTER;
ImageResize::POSITION_TOP;
ImageResize::POSITION_RIGHT;
ImageResize::POSITION_BOTTOM;
ImageResize::POSITION_LEFT;
ImageResize::POSITION_TOP_LEFT;
ImageResize::POSITION_TOP_RIGHT;
ImageResize::POSITION_BOTTOM_LEFT;
ImageResize::POSITION_BOTTOM_RIGHT;
```

### cropPosition

[](#cropposition)

```
$image->cropPosition(100, 100);
// cropPosition(int $width, int $height [, int $position = ImageResize::POSITION_CENTER])
```

original(600x300)result(100x100)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/cropPosition.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/cropPosition.jpg)### resizeCover

[](#resizecover)

```
$image->resizeCover(100, 100);
// resizeCover(int $width, int $height [, int $position = ImageResize::POSITION_CENTER])
```

original(600x300)result(100x100)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeCover.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeCover.jpg)### resizeContain

[](#resizecontain)

```
$image->resizeContain(100, 100);
// resizeContain(int $width, int $height [, int $position = ImageResize::POSITION_CENTER [, int $color = 0x000000]])
```

original(600x300)result(100x100)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeContain.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/resizeContain.jpg)### sides

[](#sides)

```
ImageResize::SIDE_TOP;
ImageResize::SIDE_RIGHT;
ImageResize::SIDE_BOTTOM;
ImageResize::SIDE_LEFT;
ImageResize::SIDE_ALL;
```

### cropEdge

[](#cropedge)

```
$image->cropEdge(50, ImageResize::SIDE_ALL);
// cropEdge(int $cutLength [, int $side = ImageResize::SIDE_ALL])
```

original(600x300)result(500x200)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/cropEdge.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/cropEdge.jpg)### addBorder

[](#addborder)

```
$image->addBorder(10);
// addBorder(int $borderWidth [, int $side = ImageResize::SIDE_ALL [, int $color = 0x000000]])
```

original(600x300)result(620x220)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/addBorder.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/addBorder.jpg)Watermark
=========

[](#watermark)

Fits:

```
ImageResize::FIT_CANCEL; // cancel if wathermark size grate then $image
ImageResize::FIT_RESIZE; // resize wathermak
ImageResize::FIT_AS_IS; // crop if watermark out of bounds
```

```
$watermark = ImageResize::createFromPath($path);
$image->setWatermark($watermark);
// setWatermark(ImageResize $watermark [, int $position = ImageResize::POSITION_BOTTOM_RIGHT [, int $padding = 16 [, int $fit = ImageResize::FIT_AS_IS]]]);
```

original(600x300)result(600x300)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/setWatermark.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/setWatermark.jpg)### change

[](#change)

```
$image->change(function(&$resource){
    $resource = imagerotate($resource, 90, 0x000000);
});
// change(callable(&$resource) $callback)
```

original(600x300)result(300x600)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/horizontal.jpg)[![](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/change.jpg)](https://raw.githubusercontent.com/uginroot/image-resize/master/docs/result/change.jpg)

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Total

7

Last Release

2467d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/c76c2491b71e1ee1d93f2dbaa614c09360ea520872f4522211805df136e3306b?d=identicon)[uginroot](/maintainers/uginroot)

---

Top Contributors

[![uginroot](https://avatars.githubusercontent.com/u/2391460?v=4)](https://github.com/uginroot "uginroot (30 commits)")

---

Tags

cropimagephpresetoreintationresizewatwrmarkphpimageresizewatermarkcroporientation

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/uginroot-image-resize/health.svg)

```
[![Health](https://phpackages.com/badges/uginroot-image-resize/health.svg)](https://phpackages.com/packages/uginroot-image-resize)
```

###  Alternatives

[sybio/image-workshop

Powerful PHP class using GD library to work easily with images including layer notion (like Photoshop or GIMP)

860918.1k11](/packages/sybio-image-workshop)[jbzoo/image

A PHP class that simplifies working with images

171126.9k3](/packages/jbzoo-image)[stefangabos/zebra_image

A single-file, lightweight PHP library designed for efficient image manipulation featuring methods for modifying images and applying filters

141110.4k6](/packages/stefangabos-zebra-image)[bodom78/kohana-imagefly

Create resized / cropped images directly through url parameters.

5517.0k](/packages/bodom78-kohana-imagefly)[somehow-digital/typo3-media-processing

Media Processing

101.1k](/packages/somehow-digital-typo3-media-processing)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
