<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="https://wackowiki.org/test/theme/default/css/wacko.css" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
<channel>
<title>SQLite Testing - Recent comments</title>
<link>https://wackowiki.org/test/</link>
<description>Recent comments to the SQLite Testing</description>
<language>en</language>
<lastBuildDate>Thu, 11 Jun 2026 02:46:29 +0200</lastBuildDate>
<image>
<title>SQLite Testing - Recent comments</title>
<link>https://wackowiki.org/test/</link>
<url>https://wackowiki.org/test/image/wacko_logo.png</url>
<width>108</width>
<height>50</height>
</image>
<item>
<title>GD and ImageMagick from WikiAdmin</title>
<link>https://wackowiki.org/test/Comment7</link>
<guid>https://wackowiki.org/test/Comment7</guid>
<pubDate>Thu, 11 Jun 2026 00:46:29 +0200</pubDate>
<dc:creator>WikiAdmin</dc:creator>
<description><![CDATA[<strong>GD</strong> and <strong>ImageMagick</strong> are the two primary libraries for server-side image manipulation in PHP, each serving different architectural needs.<br>
<br>
<strong>GD</strong> is a lightweight, procedural library <strong>pre-installed</strong> on most PHP environments. It is <strong>faster for simple operations</strong> like resizing, cropping, and generating thumbnails, with <strong>lower memory overhead</strong>. However, it supports a <strong>limited range of formats</strong> (JPEG, PNG, GIF, WebP, AVIF) and offers <strong>basic quality</strong> for complex scaling, often requiring manual aspect ratio calculations.<br>
<br>
<strong>ImageMagick</strong> is an external binary extension that provides an <strong>object-oriented API</strong> and supports <strong>over 100 image formats</strong>, including TIFF, PDF, and SVG. It delivers <strong>superior image quality</strong> with advanced anti-aliasing and filters (e.g., Lanczos), making it ideal for <strong>complex overlays, artistic effects, and high-resolution photography</strong>. While it has a <strong>slower startup time</strong> and can be more resource-intensive, it handles large files better by offloading to disk and simplifies code through its intuitive class structure.<br>
<br>
<strong>Recommendation:</strong> Use <strong>GD</strong> for simple, high-speed tasks like user avatars or basic thumbnails where dependency minimization is key. Use <strong>ImageMagick</strong> for professional-grade image processing, format conversion, or when advanced filters and extensive format support are required.
]]></description>
</item>
<item>
<title>Example Analysis and Fixes for PHPThumb Library from WikiAdmin</title>
<link>https://wackowiki.org/test/Comment6</link>
<guid>https://wackowiki.org/test/Comment6</guid>
<pubDate>Thu, 11 Jun 2026 00:33:03 +0200</pubDate>
<dc:creator>WikiAdmin</dc:creator>
<description><![CDATA[<h2 id="h7f815-1" class="heading"> Issues Found <a class="self-link" href="#h7f815-1"></a></h2>
<br>
<table class="usertable">
	<tr>
		<th> File </th>
		<th> Issue </th>
	</tr>
	<tr>
		<td> All files </td>
		<td> Wrong relative paths to resources (<code>../tests/resources/</code> should be <code>../../resources/</code>) </td>
	</tr>
	<tr>
		<td> <code>image_filter.php</code> </td>
		<td> Wrong argument format for <code>IMG_FILTER_COLORIZE</code> </td>
	</tr>
	<tr>
		<td> <code>remote_image_resize.php</code> </td>
		<td> Invalid GitHub URL (points to HTML page, not raw image) </td>
	</tr>
	<tr>
		<td> <code>crop_basic_fromstring.php</code> </td>
		<td> Missing autoloader, wrong file path </td>
	</tr>
	<tr>
		<td> <code>rotate_basic.php</code> </td>
		<td> Comment mentions non-existent <code>rotate()</code> method </td>
	</tr>
	<tr>
		<td> <code>save_differentformat.php</code> </td>
		<td> Saves to current directory without verification </td>
	</tr>
	<tr>
		<td> All </td>
		<td> Missing Imagick examples </td>
	</tr>
</table>
<h2 id="h7f815-2" class="heading"> Fixed Examples <a class="self-link" href="#h7f815-2"></a></h2>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-Ib84mPy">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-Ib84mPy" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Basic Crop
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates basic cropping functionality
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::crop()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Load the test image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Crop starting at x=100, y=100 with width=300 and height=200</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">crop</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-oe9AShV">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-oe9AShV" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Crop from String
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates loading an image from a string (e.g., database BLOB)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::getImageAsString()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Load image file into string (simulating database retrieval)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">fileData</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">file_get_contents</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">fileData</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Could not read image file</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create thumbnail from string data</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">fileData</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">crop</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Get the processed image as string for storage</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageAsString</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getImageAsString</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">DOCTYPE</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">html</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">html</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">head</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">title</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Crop</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">from</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">String</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Example</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">title</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">style</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">body</span><span class="token"> </span><span class="token">{</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">font</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">family</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Arial</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">sans</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">serif</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">padding</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">20</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">px</span><span class="token">;</span><span class="token"> </span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">image</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">container</span><span class="token"> </span><span class="token">{</span><span class="token"> 
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">border</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">px</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">solid</span><span class="token"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">#</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">e4e4e4; </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">padding</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">10</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">px</span><span class="token">;</span><span class="token"> 
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">display</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">inline</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">block</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">margin</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">10</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">px</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">style</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">head</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">body</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">h2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Processed</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Image</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Data</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">h2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">p</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strong</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Note</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strong</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Raw</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">image</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">data</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">shown</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">as</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">gibberish</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">below</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">p</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">div</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">image-container</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">div</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">style</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">overflow: auto; width: 500px; height: 400px;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">htmlentities</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageAsString</span><span class="token">)</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">div</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">div</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">h2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Image</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Preview</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">h2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">div</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">image-container</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">img</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">src</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">data:image/jpeg;base64,&lt;?php echo base64_encode(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageAsString</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">); ?&gt;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">alt</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Cropped image</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">div</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">p</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Image</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">data</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">length</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strlen</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageAsString</span><span class="token">)</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">bytes</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">p</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">body</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">html</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-h7uaBzs">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-h7uaBzs" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Crop from Center
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates center-based cropping
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::cropFromCenter()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Crop 200x100 from center</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">cropFromCenter</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-53IOoWp">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-53IOoWp" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Crop with Padding
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates padding an image to specific dimensions
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::pad()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Pad to 1024x350 with olive green color [192, 212, 45]</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">pad</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1024</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">350</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">192</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">212</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">45</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-yu382Pk">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-yu382Pk" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Image Filters
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates various GD image filters
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> https://www.php.net/manual/en/function.imagefilter.php
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::imageFilter()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Apply colorize filter: red=160, green=20, blue=20</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> The filter applies a color overlay to the image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">imageFilter</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">IMG_FILTER_COLORIZE</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">160</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">20</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">20</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-94R4x9K">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-94R4x9K" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Reflection Effect
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates the reflection plugin
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\Plugins\Reflection
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">[</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">percent</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">40</span><span class="token">,</span><span class="token">        </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 40% of original included in reflection</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">reflection</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">40</span><span class="token">,</span><span class="token">    </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 40% of original height for reflection</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">white</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">80</span><span class="token">,</span><span class="token">         </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 80% white (20% transparent at bottom)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">border</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token">      </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Add border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">            </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">borderColor</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">#a4a4a4</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Gray border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">        </span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">250</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">250</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-pD90tg0">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-pD90tg0" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Remote Image Resize
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates loading and resizing a remote image
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::resize()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Use a reliable remote image URL (raw content, not HTML page)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://raw.githubusercontent.com/PHPThumb/PHPThumb/master/examples/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-mbsmMPT">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-mbsmMPT" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Adaptive Resize
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates adaptive resizing (resize to fit, then crop excess from center)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::adaptiveResize()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to fit within 175x175, cropping excess from center</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">175</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">175</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-FfrP95P">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-FfrP95P" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Adaptive Resize with Quadrant
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates adaptive resizing with specific crop quadrant
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Quadrants: T (top), B (bottom), L (left), R (right), C (center)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * +---+---+---+
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * |   | T |   |
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * +---+---+---+
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * | L | C | R |
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * +---+---+---+
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * |   | B |   |
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * +---+---+---+
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::adaptiveResizeQuadrant()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to 300x300, cropping to center quadrant</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResizeQuadrant</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">C</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-j5ea5PK">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-j5ea5PK" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Adaptive Resize with Quadrant (Left)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates adaptive resizing cropping to the left
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::adaptiveResizeQuadrant()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to 300x300, keeping the left portion</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResizeQuadrant</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">L</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-djPna44">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-djPna44" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Basic Resize
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates basic proportional resizing
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::resize()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to fit within 100x100 (proportional)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-YEC502e">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-YEC502e" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Resize by Percentage
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates resizing by percentage
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::resizePercent()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to 50% of original size</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resizePercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-cRVh7xP">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-cRVh7xP" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Rotation by Degrees
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates rotation by specific degrees
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::rotateImageNDegrees()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Rotate 180 degrees</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImageNDegrees</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">180</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-MDkjH9j">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-MDkjH9j" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Basic Rotation
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates 90-degree rotation
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::rotateImage()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Rotate 90 degrees clockwise</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Alternative: rotate 90 degrees counter-clockwise</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $thumb-&gt;rotateImage(&#039;CCW&#039;);</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-TZ8HKHA">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-TZ8HKHA" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Save in Different Format
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates saving to a different format
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\GD::save()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Save as PNG</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Note: The directory must be writable</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/output/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Ensure output directory exists</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">dirname</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">is_dir</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">mkdir</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0755</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Image saved to: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\n</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Display the saved file</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-4RecDV7">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-4RecDV7" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Trim Borders
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates trimming single-color borders
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\Plugins\Trim
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">[</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Trim white borders from all sides</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">TBLR</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-XLSW2M9">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-XLSW2M9" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Watermark
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates adding a watermark to an image
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\Plugins\Watermark
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create watermark image (20% of original size)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resizePercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">20</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create main image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">[</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Position watermark in center with 50% opacity</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-JDOC45D">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-JDOC45D" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Watermark Positions
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates different watermark positions
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create small watermark</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resizePercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">15</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create main image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Apply watermark positioned at bottom-right with full opacity</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">right-bottom</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">80</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-87FH699">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-87FH699" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Imagick Basic Resize
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates basic resizing using ImageMagick
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\Imagick::resize()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Use Imagick for potentially better quality</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to fit within 100x100 (proportional)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-IAcb48F">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-IAcb48F" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Imagick Adaptive Resize
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates adaptive resizing using ImageMagick
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\Imagick::adaptiveResize()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to fit within 175x175, cropping excess from center</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">175</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">175</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-67XWv7R">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-67XWv7R" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Imagick Save Formats
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates saving in different formats using ImageMagick
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * ImageMagick supports many formats including: AVIF, BMP, GIF, HEIC, JPEG, PNG, TIFF, WEBP
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@see</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> \PHPThumb\Imagick::save()
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Ensure output directory exists</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/output</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">is_dir</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">mkdir</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0755</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Save in different formats</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">formats</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">WEBP</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPEG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">foreach</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">formats</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">as</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">format</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">extension</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strtolower</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">format</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">format</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPEG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">extension</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputDir</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/test.</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">extension</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">format</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Saved: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">{</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">}</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\n</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Display the last saved image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-gV6i0vt">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-gV6i0vt" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Chained Operations
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates chaining multiple operations
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Chain multiple operations</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">)</span><span class="token">           </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Resize to fit 400x300</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">           </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Rotate 90 degrees clockwise</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">cropFromCenter</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">         </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Crop 200x200 from center</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">pad</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">240</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">240</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">240</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Pad to 300x300 with light gray</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-7n04L73">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-7n04L73" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Quality Settings
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates adjusting output quality
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Set JPEG quality to 75 (lower = smaller file, lower quality)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">  </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Allow upscaling</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">800</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Save with low quality</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/output/low_quality.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Low quality saved to: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">{</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">}</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\n</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Now create high quality version</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">95</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">800</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/output/high_quality.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb2</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath2</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">High quality saved to: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">{</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath2</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">}</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\n</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Compare file sizes</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">size1</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">filesize</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">size2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">filesize</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputPath2</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Low quality: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">number_format</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">size1</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff"> bytes</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\n</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">echo</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">High quality: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">number_format</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">size2</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff"> bytes</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\n</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-B4JO260">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-B4JO260" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb Library Example File - Preserve Transparency
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Demonstrates preserving alpha transparency for PNG/GIF
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">require_once</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Test with PNG (supports alpha transparency)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveAlpha</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">alphaMaskColor</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">  </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> White background for transparent areas</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<h2 id="h7f815-3" class="heading"> Summary of Fixes <a class="self-link" href="#h7f815-3"></a></h2>
<br>
<table class="usertable">
	<tr>
		<th> Issue </th>
		<th> Fix Applied </th>
	</tr>
	<tr>
		<td> Wrong resource paths </td>
		<td> Changed <code>../tests/resources/</code> to <code>../../resources/</code> </td>
	</tr>
	<tr>
		<td> Missing autoloader </td>
		<td> Added <code>require_once <span class="underline">DIR</span> . '/../vendor/autoload.php'</code> </td>
	</tr>
	<tr>
		<td> Invalid remote URL </td>
		<td> Changed to raw GitHub URL </td>
	</tr>
	<tr>
		<td> Wrong filter args </td>
		<td> Corrected <code>imageFilter()</code> argument order </td>
	</tr>
	<tr>
		<td> Non-writable directories </td>
		<td> Added <code>mkdir()</code> for output directories </td>
	</tr>
	<tr>
		<td> Missing Imagick examples </td>
		<td> Added ImageMagick-specific examples </td>
	</tr>
	<tr>
		<td> No output directory </td>
		<td> Created <code>output/</code> directory before saving </td>
	</tr>
	<tr>
		<td> Documentation errors </td>
		<td> Fixed method name references </td>
	</tr>
</table>
<h2 id="h7f815-4" class="heading"> File Structure <a class="self-link" href="#h7f815-4"></a></h2>
<br>


	<pre class="code">
phpthumb/
├── Examples/
│   ├── crop_basic.php
│   ├── crop_basic_fromstring.php
│   ├── crop_fromcenter.php
│   ├── crop_pad.php
│   ├── image_filter.php
│   ├── reflection.php
│   ├── remote_image_resize.php
│   ├── resize_adaptive.php
│   ├── resize_adaptive_quadrant.php
│   ├── resize_adaptive_quadrant_left.php
│   ├── resize_basic.php
│   ├── resize_percentage.php
│   ├── rotate_advanced.php
│   ├── rotate_basic.php
│   ├── save_differentformat.php
│   ├── trim.php
│   ├── watermark.php
│   ├── watermark_positions.php
│   ├── imagick_basic.php
│   ├── imagick_adaptive.php
│   ├── imagick_save_formats.php
│   ├── chained_operations.php
│   ├── quality_settings.php
│   └── preserve_transparency.php
├── resources/
│   ├── test.avif
│   ├── test.bmp
│   ├── test.gif
│   ├── test.heic
│   ├── test.jpg
│   ├── test.png
│   ├── test.tiff
│   └── test.webp
└── output/  (created by examples)	</pre>


]]></description>
</item>
<item>
<title>Plugin Analysis and Fixes for PHPThumb Library from WikiAdmin</title>
<link>https://wackowiki.org/test/Comment5</link>
<guid>https://wackowiki.org/test/Comment5</guid>
<pubDate>Thu, 11 Jun 2026 00:16:00 +0200</pubDate>
<dc:creator>WikiAdmin</dc:creator>
<description><![CDATA[Let me analyze each plugin to identify compatibility issues and fix them.<br>
<h2 id="h37-1" class="heading"> Issues Found <a class="self-link" href="#h37-1"></a></h2>
<h3 id="h37-2" class="heading"> Reflection.php <a class="self-link" href="#h37-2"></a></h3>
<ol type="1"><li> Constructor parameters lack type hints
</li>
<li> Inefficient <code>imageFlipVertical()</code> using nested loops
</li>
<li> Doesn't properly handle the plugin interface execution flow
</li>
<li> Missing PHPDoc for parameters</li></ol>

<h3 id="h37-3" class="heading"> Trim.php <a class="self-link" href="#h37-3"></a></h3>
<ol type="1"><li> <code>rgb2int()</code> method has confusing parameter documentation
</li>
<li> Doesn't use <code>setWorkingImage()</code> properly
</li>
<li> Missing proper array type hints</li></ol>

<h3 id="h37-4" class="heading"> Watermark.php <a class="self-link" href="#h37-4"></a></h3>
<ol type="1"><li> <strong>Critical</strong>: Only works with GD, doesn't support Imagick
</li>
<li> Takes <code>GD</code> instance in constructor, making it GD-specific
</li>
<li> GD-specific <code>imagecreatetruecolor</code>, <code>imagecopy</code>, <code>imagecopymerge</code> used</li></ol>

<h2 id="h37-5" class="heading"> Fixed Plugins <a class="self-link" href="#h37-5"></a></h2>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-3OZ1QA0">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-3OZ1QA0" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Plugins</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * GD Reflection Lib Plugin Definition File
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * This file contains the plugin definition for the GD Reflection Lib for PHP Thumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb : PHP Thumb Library &lt;https://github.com/PHPThumb/PHPThumb&gt;
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Copyright (c) 2009, Ian Selby
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Licensed under the MIT License
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@author</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Ian Selby &lt;ianrselby@gmail.com&gt;
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@copyright</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copyright (c) 2009 Ian Selby
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@license</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> http://www.opensource.org/licenses/mit-license.php The MIT License
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@version</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 3.0
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@package</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> PhpThumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@subpackage</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Plugins
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Reflection</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Reflection percentage (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">percent</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Reflection height percentage (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> White transparency for reflection gradient (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">white</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Whether to add a border
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Border color in hex format
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $percent How much of the original image to include in reflection (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $reflection Height of the reflection as a percentage of the original (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $white White transparency for the gradient (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $border Whether to add a border
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $border_color Hex color for the border (e.g., &#039;#FFFFFF&#039;)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__construct</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">percent</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">white</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">80</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">#FFFFFF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">percent</span><span class="token">      </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">percent</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token">   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">white</span><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">white</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border</span><span class="token">       </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Executes the reflection effect on the image
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">             </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOptions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">              </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">             </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection_height</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">intval</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">*</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">         </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection_height</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflected_part</span><span class="token">     </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">*</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">percent</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create the reflection image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecreatetruecolor</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Failed to create reflection image</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagealphablending</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_to_paint</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorallocatealpha</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_to_paint</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagedestroy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Failed to allocate color for reflection</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagefilledrectangle</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_to_paint</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Get the current image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copy the portion to be reflected</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopyresampled</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">intval</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflected_part</span><span class="token">)</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection_height</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">intval</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflected_part</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Flip the reflection vertically</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">imageFlipVertical</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copy the original image on top</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagealphablending</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Apply gradient fade to reflection</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection_height</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">i</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection_height</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">*</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">white</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">intval</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_to_paint</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorallocatealpha</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagefilledrectangle</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">i</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">i</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_to_paint</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Add border if requested</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">hex2rgb</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorallocate</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Top border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imageline</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Bottom border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imageline</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Left border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imageline</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Right border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imageline</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_color</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Preserve alpha for PNG images</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_transparent</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorallocatealpha</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">alphaMaskColor</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">alphaMaskColor</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">alphaMaskColor</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagefill</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color_transparent</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagesavealpha</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Update the PHPThumb instance</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOldImage</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setCurrentDimensions</span><span class="token">(</span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Flips the image vertically using imageflip (efficient GD function)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">imageFlipVertical</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">image</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">function_exists</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">imageflip</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imageflip</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">IMG_FLIP_VERTICAL</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">else</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Fallback for older GD versions using efficient row copying</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x_i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagesx</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y_i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagesy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create temp image for flipping</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tmp</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecreatetruecolor</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x_i</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y_i</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tmp</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y_i</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tmp</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y_i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x_i</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copy back</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y_i</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tmp</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y_i</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x_i</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagedestroy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tmp</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Converts a hex color to RGB array or string
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $hex Color in hex format (#FFFFFF or FFFFFF)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $as_string Return as &quot;R G B&quot; string instead of array
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@return</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">|</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> RGB values
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">hex2rgb</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">as_string</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token">|</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Strip leading #</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ltrim</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">#</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Handle &amp;H prefix (VB-style)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">str_starts_with</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&amp;H</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">substr</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Ensure we have 6 characters</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strlen</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">3</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">hexdec</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">substr</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">)</span><span class="token">)</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">hexdec</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">substr</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">)</span><span class="token">)</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">hexdec</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">substr</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">hex</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">4</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">)</span><span class="token">)</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">as_string</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">implode</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-03InYFn">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-03InYFn" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Plugins</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * GD Trim Lib Plugin Definition File
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * This file contains the plugin definition for the GD Trim Lib for PHP Thumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb : PHP Thumb Library &lt;https://github.com/PHPThumb/PHPThumb&gt;
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Copyright (c) 2016, Oleg Sherbakov
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Licensed under the MIT License
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@author</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Oleg Sherbakov &lt;holdmann@yandex.ru&gt;
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@copyright</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copyright (c) 2016
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@license</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> http://www.opensource.org/licenses/mit-license.php The MIT License
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@version</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 1.0
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@package</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> PhpThumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@subpackage</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Plugins
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Trim</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">,</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> int&gt; RGB color values [R, G, B]
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&gt;</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Sides to trim (T, B, L, R)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Trim constructor
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">,</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> int&gt; $color RGB color to trim as array [R, G, B] (0-255 each)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $sides Sides to trim: &#039;T&#039; (top), &#039;B&#039; (bottom), &#039;L&#039; (left), &#039;R&#039; (right)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@throws</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> If color or sides are invalid
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__construct</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">TBLR</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">validateColor</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Color must be an array of RGB color model parts [R, G, B] where each value is 0-255</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">validateSides</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Sides must be a string containing any combination of T, B, L, and R</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">str_split</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Validates whether RGB color array is valid
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">,</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> int|float&gt; $colors Color array to validate
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@return</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> True if valid, false otherwise
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">validateColor</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">colors</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">count</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">colors</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">3</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">foreach</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">colors</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">as</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">is_numeric</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">||</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">||</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Validates whether sides string is valid
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $sides_string Sides string to validate
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@return</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> True if valid, false otherwise
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">validateSides</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides_string</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">str_split</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides_string</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">count</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">||</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">count</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">4</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">valid_sides</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">T</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">B</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">L</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">R</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">foreach</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">as</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">side</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">in_array</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">side</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">valid_sides</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Converts RGB array to 24-bit integer color value
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">,</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> int|float&gt; $rgb RGB array [R, G, B]
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@return</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 24-bit color value
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rgbToInt</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token">(</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token">)</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">16</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">|</span><span class="token"> </span><span class="token">(</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token">)</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">8</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">|</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token">)</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">rgb</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Executes the trim operation
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_top</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_bottom</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_left</span><span class="token">   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_right</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">target_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rgbToInt</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">       </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Detect top border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">in_array</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">T</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_top</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_top</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorat</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_top</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Handle alpha transparency for comparison</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">24</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0x7F</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">continue</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0xFFFFFF</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">target_color</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Only break if we found a non-matching pixel</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Detect bottom border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">in_array</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">B</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_bottom</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_bottom</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_bottom</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorat</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">24</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0x7F</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">continue</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0xFFFFFF</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">target_color</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Detect left border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">in_array</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">L</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_left</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_left</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorat</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_left</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">24</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0x7F</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">continue</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0xFFFFFF</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">target_color</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Detect right border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">in_array</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">R</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">sides</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_right</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_right</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_right</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">for</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">++</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecolorat</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">24</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0x7F</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">alpha</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">continue</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pixel_color</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0xFFFFFF</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">target_color</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">						</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">					</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">break</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Calculate new dimensions</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_width</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_left</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_right</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_top</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_bottom</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Ensure we have something to show</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">||</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Trim operation would result in empty image</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create new trimmed image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecreatetruecolor</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Failed to create trimmed image</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Preserve transparency</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagealphablending</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagesavealpha</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_image</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copy the trimmed portion</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_left</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">border_top</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Update PHPThumb</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOldImage</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setCurrentDimensions</span><span class="token">(</span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_width</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-sNpq04e">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-sNpq04e" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Plugins</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Watermark Lib Plugin Definition File
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * This file contains the plugin definition for the Watermark Lib for PHP Thumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * PhpThumb : PHP Thumb Library &lt;https://github.com/PHPThumb/PHPThumb&gt;
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Copyright (c) 2016, Oleg Sherbakov
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Licensed under the MIT License
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@author</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Oleg Sherbakov &lt;holdmann@yandex.ru&gt;
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@copyright</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Copyright (c) 2016
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@license</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> http://www.opensource.org/licenses/mit-license.php The MIT License
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@version</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 1.0
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@package</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> PhpThumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@subpackage</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Plugins
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Watermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">|</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> The watermark image instance
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Position for the watermark
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Opacity of the watermark (0-100)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> X-axis offset
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_x</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@var</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Y-axis offset
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_y</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Watermark constructor
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">|</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $wm Watermark image as \PHPThumb\GD or \PHPThumb\Imagick instance
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $position Position: combinations of left/west/right/east for X
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *                         and top/north/upper/bottom/south/lower for Y
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $opacity Opacity of the watermark in percent (0 = transparent, 100 = opaque)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $offset_x Horizontal offset (can be negative)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> $offset_y Vertical offset (can be negative)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@throws</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> If watermark is not GD or Imagick instance
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__construct</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">|</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">instanceof</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;&amp;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">instanceof</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Watermark must be an instance of \PHPThumb\GD or \PHPThumb\Imagick</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">max</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">min</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_x</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_y</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Executes the watermark operation
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">instanceof</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">executeGD</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">instanceof</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">executeImagick</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">throw</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Unsupported PHPThumb instance type</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Execute watermark for GD-based PHPThumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">executeGD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">[</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">calculatePosition</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getWorkingImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getWorkingImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">||</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">null</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">imageCopyMergeAlpha</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">else</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_image</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setWorkingImage</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Execute watermark for Imagick-based PHPThumb
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">executeImagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">[</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">calculatePosition</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getWorkingImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Set opacity for the watermark</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setImageOpacity</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">opacity</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Composite the watermark onto the working image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">compositeImage</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">COMPOSITE_DEFAULT</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setWorkingImage</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">working_image</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Calculate watermark position based on current dimensions and position string
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">,</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> int&gt; $current_dimensions Current image dimensions
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@param</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">,</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> int&gt; $watermark_dimensions Watermark dimensions
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">@return</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&gt;</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> [x, y] position coordinates
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">calculatePosition</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_x</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">offset_y</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Horizontal position</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">preg_match</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">&#039;/</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">(right|east)</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">/i&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">elseif</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">preg_match</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">&#039;/</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">(left|west)</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">/i&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">intval</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Vertical position</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">preg_match</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">&#039;/</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">(bottom|lower|south)</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">/i&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">elseif</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">preg_match</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">&#039;/</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">(upper|top|north)</span><span class="token" style="color: #032f62;font-weight: bold;;--phiki-dark-color: #dbedff;--phiki-dark-font-weight: bold">\b</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">/i&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">position</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">+=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">intval</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">/</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark_position_y</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Copy image with alpha blending (for GD)
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 *
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Based on: http://www.php.net/manual/en/function.imagecopymerge.php#92787
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">imageCopyMergeAlpha</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_im</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_im</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_x</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_y</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_x</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_y</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_w</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_h</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pct</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">cut</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecreatetruecolor</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_w</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_h</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">cut</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">cut</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_im</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_y</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_w</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_h</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">cut</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_im</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_y</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_w</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_h</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagecopymerge</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_im</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">cut</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dst_y</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_x</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_y</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_w</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">src_h</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pct</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">imagedestroy</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">cut</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<h2 id="h37-6" class="heading"> Plugin Tests <a class="self-link" href="#h37-6"></a></h2>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-8DT2Sdp">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-8DT2Sdp" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ReflectionPluginTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testExecuteReturnsPHPThumb</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testReflectionIncreasesHeight</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertGreaterThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testCustomParameters</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">#FF0000</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertGreaterThan</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testReflectionWithSmallPercent</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">25</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertGreaterThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testReflectionWithHighReflection</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertGreaterThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">*</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">.</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">5</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_height</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-4g18UJP">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-4g18UJP" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TrimPluginTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testExecuteReturnsPHPThumb</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimReducesDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">T</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Only top was trimmed, so height should be reduced</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testInvalidColorThrowsException</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">256</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testInvalidColorTooFewElementsThrowsException</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testInvalidSidesThrowsException</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">XYZ</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testEmptySidesThrowsException</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimTopOnly</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">T</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimBottomOnly</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">B</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimLeftOnly</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">L</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimRightOnly</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_width</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">R</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimAllSides</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">TBLR</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testTrimWithBlackColor</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">TBLR</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-lpZg9PA">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-lpZg9PA" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">WatermarkPluginTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickThumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickWatermark</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickThumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickWatermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testExecuteWithGDReturnsPHPThumb</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testExecuteWithImagickReturnsPHPThumb</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickWatermark</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testInvalidWatermarkTypeThrowsException</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">not a thumbnail object</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkCenterPosition</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkLeftPosition</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">left</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkRightPosition</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">right</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkTopPosition</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">top</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkBottomPosition</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">bottom</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkWithOffset</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">10</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">20</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkWithOpacity</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkOpacityCappedAt100</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkOpacityCappedAt0</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">10</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkCombinedPositionLeftTop</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">left-top</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkCombinedPositionRightBottom</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">right-bottom</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWatermarkPreservesImageDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdWatermark</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gdThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testImagickWatermarkPreservesImageDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickWatermark</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickThumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imagickThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">original_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">new_dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<h2 id="h37-7" class="heading">Summary of Changes<a class="self-link" href="#h37-7"></a></h2>
<br>
<table class="usertable">
	<tr>
		<th> Plugin </th>
		<th> Issue </th>
		<th> Fix </th>
	</tr>
	<tr>
		<td> Reflection </td>
		<td> Missing type hints </td>
		<td> Added proper typed parameters with PHPDoc </td>
	</tr>
	<tr>
		<td> Reflection </td>
		<td> Inefficient flip </td>
		<td> Added <code>imageflip()</code> fallback with efficient row copying </td>
	</tr>
	<tr>
		<td> Reflection </td>
		<td> Missing imports </td>
		<td> Added proper <code>use</code> statements </td>
	</tr>
	<tr>
		<td> Trim </td>
		<td> Confusing docblock </td>
		<td> Improved parameter documentation </td>
	</tr>
	<tr>
		<td> Trim </td>
		<td> Inefficient color conversion </td>
		<td> Changed <code>hexdec(sprintf())</code> to bitwise operations </td>
	</tr>
	<tr>
		<td> Trim </td>
		<td> Alpha handling </td>
		<td> Added alpha channel handling in border detection </td>
	</tr>
	<tr>
		<td> Watermark </td>
		<td> GD-only support </td>
		<td> Added Imagick support with instanceof checks </td>
	</tr>
	<tr>
		<td> Watermark </td>
		<td> Missing type union </td>
		<td> Added <code>GD|Imagick</code> type hint </td>
	</tr>
	<tr>
		<td> All </td>
		<td> Missing RuntimeException </td>
		<td> Added proper exception imports </td>
	</tr>
</table>
<h2 id="h37-8" class="heading"> Usage Examples <a class="self-link" href="#h37-8"></a></h2>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-b42QJYm">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-b42QJYm" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Using Reflection Plugin with GD</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">image.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Reflection</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">percent</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token">        </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 50% of original image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">reflection</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token">     </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 50% reflection height</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">white</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">80</span><span class="token">,</span><span class="token">          </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 80% white gradient</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">border</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token">       </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Add border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">    </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">borderColor</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">#FFF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> White border</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reflection</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Using Trim Plugin</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">image.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">trim</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Trim</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">TBLR</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Trim white borders</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">trim</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Using Watermark Plugin with GD</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">image.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GD</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">watermark.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">right-bottom</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">70</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Using Watermark Plugin with Imagick</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">image.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">watermark.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Plugins</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Watermark</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">watermark</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wm</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span></code></pre>	</div>
</div>


]]></description>
</item>
<item>
<title>ImageMagick Tests for PHP Thumb Library from WikiAdmin</title>
<link>https://wackowiki.org/test/Comment4</link>
<guid>https://wackowiki.org/test/Comment4</guid>
<pubDate>Wed, 10 Jun 2026 22:59:09 +0200</pubDate>
<dc:creator>WikiAdmin</dc:creator>
<description><![CDATA[<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-80jt0W8">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-80jt0W8" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">avif</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">bmp</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gif</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">heic</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">jpg</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">png</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tiff</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">webp</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">avif</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.avif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">bmp</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.bmp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gif</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">heic</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.heic</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">jpg</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">png</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tiff</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.tiff</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">webp</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.webp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testLoadFileTypes</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">AVIF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">	</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">avif</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">BMP</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">bmp</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">GIF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gif</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">HEIC</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">	</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">heic</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">jpg</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">png</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">TIFF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">	</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tiff</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">WEBP</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">	</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">webp</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * This test might seem pointless but it runs the __destruct and gets us to
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * 100% code coverage.
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testImageDestroy</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">testImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unset</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">testImage</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">isset</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">testImage</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * This test first resize a webp image and then save it in a temp file.
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * Load the image file and test if the resulting image have a width of 200 px.
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWebp</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">webp</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_resize.webp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">fwrite</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">fopen</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">w</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">webp</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getImageAsString</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">testing</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">testing</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-X4TmxDY">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-X4TmxDY" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickLoadTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testLoadFile</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">avifQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">webpQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">correctPermissions</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveAlpha</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">alphaMaskColor</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">										</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">										</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">										</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">255</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveTransparency</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">transparencyMaskColor</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">										</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">										</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">										</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">interlace</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">null</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOptions</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFileName</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetFormat</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setFormat</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetFilename</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setFilename</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">mytest.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">mytest.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFilename</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testLoadExternalImage</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gravatarThumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://en.gravatar.com/userimage/1132703/2ccbcfbea4a1b3b8d955c1e7746b882b.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">gravatarThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getIsRemoteImage</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testNonexistentFile</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">madeupThumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">nosuchimage.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testIsRemoteImage</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">remoteThumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://example.com/image.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertTrue</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">remoteThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getIsRemoteImage</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">localThumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFalse</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">localThumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getIsRemoteImage</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testGettersAndSetters</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setMaxWidth</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setMaxHeight</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setPercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getMaxWidth</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getMaxHeight</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getPercent</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setNewDimensions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">250</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">188</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">250</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">188</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getNewDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-72B8xOh">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-72B8xOh" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickOperationsTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * @dataProvider resizeProvider
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testResize</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">maxWidth</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">maxHeight</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">maxWidth</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">maxHeight</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">static</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resizeProvider</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resize by width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resize by height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">267</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resize both</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">      </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">no resize</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * @dataProvider adaptiveResizeProvider
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testAdaptiveResize</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">static</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResizeProvider</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">square resize</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">landscape resize</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">     </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">portrait resize</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">      </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width only</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">           </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">225</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height only</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">          </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testAdaptiveResizeInvalidArguments</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * @dataProvider adaptiveResizeQuadrantProvider
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testAdaptiveResizeQuadrant</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">quadrant</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResizeQuadrant</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">width</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">height</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">quadrant</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">expected</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">static</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResizeQuadrantProvider</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">center quadrant</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">C</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">left quadrant</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">L</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">right quadrant</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">R</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">top quadrant</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">T</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">bottom quadrant</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">B</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">]</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testAdaptiveResizePercent</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">adaptiveResizePercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">25</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testResizePercent</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resizePercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">250</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">188</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testCrop</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">crop</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testCropFromCenter</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">cropFromCenter</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testCropFromCenterWithHeight</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">cropFromCenter</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testRotateImageCW</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testRotateImageCCW</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CCW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testRotateImageNDegrees</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImageNDegrees</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">180</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPad</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">pad</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPadNoResize</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pad</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">pad</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">pad</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPadWithColor</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">pad</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">0</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetOptions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">          </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">       </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveAlpha</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">     </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">getOptions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOptions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertTrue</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">getOptions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">getOptions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFalse</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">getOptions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveAlpha</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testResizeUp</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testResizeUpDisabled</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">600</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Should not exceed original dimensions</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-0u8pWL9">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-0u8pWL9" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickOutputTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSaveJpeg</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_output.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFileExists</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSavePng</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_output.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFileExists</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSaveWebp</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_output.webp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">WEBP</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFileExists</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSaveGif</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_output.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">GIF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFileExists</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSaveInvalidFormat</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">output.xyz</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">XYZ</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSaveUnwritableDirectory</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">RuntimeException</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/nonexistent/directory/output.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testGetImageAsString</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageData</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getImageAsString</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotEmpty</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageData</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertIsString</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">imageData</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSaveWithQuality</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_output_quality.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPEG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFileExists</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> File size should be smaller with lower quality</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">originalSize</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">filesize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">savedSize</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">filesize</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertLessThan</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">originalSize</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">savedSize</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSavePreservesFormat</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_preserve.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reloaded</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reloaded</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-0S27M1c">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-0S27M1c" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">InvalidArgumentException</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickAdvancedTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 * @dataProvider formatConversionProvider
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">	 </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testFormatConversion</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">string</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputFormat</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/imagick_convert.</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strtolower</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputFormat</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">save</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputFormat</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertFileExists</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reloaded</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">outputFormat</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">reloaded</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">unlink</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tempFile</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">static</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">formatConversionProvider</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">to JPEG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPEG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">to PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">to GIF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">GIF</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">to WEBP</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">WEBP</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testChainedOperations</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">400</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">crop</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testMultipleRotations</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">rotateImage</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">CW</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> After 4 90-degree rotations, should be back to original orientation</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testOldImageGetter</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">oldImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotNull</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">oldImage</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testWorkingImageAfterResize</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Working image is used internally during operations</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> After resize, old_image contains the result</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotNull</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">current</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">originalImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOldImage</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newImage</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">replacedImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOldImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">originalImage</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">replacedImage</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetWorkingImage</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.gif</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setWorkingImage</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newImage</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">workingImage</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getWorkingImage</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotNull</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">workingImage</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertArrayHasKey</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertArrayHasKey</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">500</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">375</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">dimensions</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setCurrentDimensions</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testNewDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">200</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getNewDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertArrayHasKey</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertArrayHasKey</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetNewDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">150</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setNewDimensions</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">newDimensions</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getNewDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testMaxWidthSetter</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setMaxWidth</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getMaxWidth</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testMaxHeightSetter</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setMaxHeight</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">300</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getMaxHeight</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPercentSetter</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setPercent</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">75</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getPercent</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testGetFilename</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFilename</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetFilename</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setFilename</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_filename.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">new_filename.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFilename</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testGetFormat</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">PNG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testSetFormat</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setFormat</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">JPG</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getFormat</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertInstanceOf</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testGetOptions</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOptions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertIsArray</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertArrayHasKey</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">resizeUp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertArrayHasKey</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">jpegQuality</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPreserveAlphaOption</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveAlpha</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOptions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertTrue</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">preserveAlpha</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testInterlaceOption</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setOptions</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">interlace</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getOptions</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertTrue</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">interlace</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-N1xSl13">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-N1xSl13" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickPluginTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">protected</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">setUp</span><span class="token">(</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">void</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPluginsAreProcessedOnShow</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Create a mock plugin that should be called</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">mockPlugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">static</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">bool</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wasCalled</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">false</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wasCalled</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Store original and enable output buffering</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">originalCalled</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">mockPlugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wasCalled</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">mockPlugin</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Capture output</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ob_start</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">output</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ob_get_clean</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertTrue</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">mockPlugin</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">wasCalled</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotEmpty</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">output</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testMultiplePluginsExecuted</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">callOrder</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token">[</span><span class="token">]</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin1</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">callOrder</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">private</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">private</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__construct</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">[</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin2</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">callOrder</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">private</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">private</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__construct</span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">array</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">order</span><span class="token">[</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">number</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">[</span><span class="token">]</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">[</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin1</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin2</span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ob_start</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ob_end_clean</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token">[</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">2</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">callOrder</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testPluginCanModifyImage</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">implements</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PluginInterface</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">execute</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">)</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">return</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phpthumb</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">__DIR__</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">/../../resources/test.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token">]</span><span class="token">,</span><span class="token"> </span><span class="token">[</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">plugin</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ob_start</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">show</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">true</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">ob_end_clean</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">50</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">XML</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-oDr7I9f">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-oDr7I9f" class="phiki language-xml github-light phiki-themes github-dark" data-language="xml" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token">&lt;?</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">xml</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0"> version</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">1.0</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0"> encoding</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">UTF-8</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">?&gt;</span><span class="token">
</span></span><span class="line"><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">phpunit</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">xmlns</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">:</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">xsi</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">http://www.w3.org/2001/XMLSchema-instance</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">xsi</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">:</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">noNamespaceSchemaLocation</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://schema.phpunit.de/10.3/phpunit.xsd</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">bootstrap</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">vendor/autoload.php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">colors</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">true</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">cacheDirectory</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">.phpunit.cache</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">executionOrder</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">depends,defects</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">requireCoverageMetadata</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">false</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">beStrictAboutCoverageMetadata</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">false</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">beStrictAboutOutputDuringTests</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">true</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">failOnRisky</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">true</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">
</span></span><span class="line"><span class="token">         </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">failOnWarning</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">true</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">testsuites</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">testsuite</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">name</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">default</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">            </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">directory</span><span class="token">&gt;</span><span class="token">tests</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">directory</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">testsuite</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">testsuites</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">source</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">include</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">            </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">directory</span><span class="token">&gt;</span><span class="token">src</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">directory</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">include</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">exclude</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">            </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">directory</span><span class="token">&gt;</span><span class="token">src/Tests</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">directory</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">exclude</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">source</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">groups</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">exclude</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">            </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">group</span><span class="token">&gt;</span><span class="token">slow</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">group</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">        </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">exclude</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">groups</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">extensions</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">    </span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">extensions</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">phpunit</span><span class="token">&gt;</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-xuSSA4f">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-xuSSA4f" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">namespace</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">PHPThumb</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">\</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">Tests</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPThumb</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">PHPUnit</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Framework</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">TestCase</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">ImagickRemoteImageTest</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">extends</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">TestCase</span><span class="token">
</span></span><span class="line"><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testRemoteImageLoad</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Skip if no network available</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">getenv</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">RUN_NETWORK_TESTS</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">markTestSkipped</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Network tests are disabled</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://www.php.net/images/logos/php-logo.svg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertTrue</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getIsRemoteImage</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertNotEmpty</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testRemoteImageResize</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Skip if no network available</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">getenv</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">RUN_NETWORK_TESTS</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">markTestSkipped</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Network tests are disabled</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://www.php.net/images/logos/php-logo.svg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">resize</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">width</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">self</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">assertSame</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">100</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">thumb</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getCurrentDimensions</span><span class="token">(</span><span class="token">)</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">height</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">public</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">function</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">testInvalidRemoteUrl</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">$</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">this</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">expectException</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Exception</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">class</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> This should throw an exception for invalid remote image</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Imagick</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">https://invalid-domain-that-does-not-exist-12345.com/image.jpg</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<h2 id="h36-1" class="heading"> Test Resources <a class="self-link" href="#h36-1"></a></h2>
<br>
You may need to add these test resource files to your <code>./resources/</code> directory:<br>
<ul><li> <code>test.avif</code> - AVIF format test image
</li>
<li> <code>test.bmp</code> - BMP format test image  
</li>
<li> <code>test.heic</code> - HEIC format test image
</li>
<li> <code>test.tiff</code> - TIFF format test image</li></ul>

<h2 id="h36-2" class="heading"> Running the Tests <a class="self-link" href="#h36-2"></a></h2>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">BASH</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-B26L8Rz">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-B26L8Rz" class="phiki language-shellscript github-light phiki-themes github-dark" data-language="shellscript" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">#</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Run all Imagick tests
</span></span><span class="line"><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">./vendor/bin/phpunit</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">-testsuite=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Imagick</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">tests/ImagickTest.php</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">#</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Run specific test file
</span></span><span class="line"><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">./vendor/bin/phpunit</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">tests/ImagickTest.php</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">#</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Run with coverage
</span></span><span class="line"><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">./vendor/bin/phpunit</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">-</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">-coverage-html</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">coverage</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">tests/ImagickTest.php</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">#</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Run all tests including network tests
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">RUN_NETWORK_TESTS</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">1</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">./vendor/bin/phpunit</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<h2 id="h36-3" class="heading"> Test Categories <a class="self-link" href="#h36-3"></a></h2>
<br>
<table class="usertable">
	<tr>
		<th> Test File </th>
		<th> Purpose </th>
	</tr>
	<tr>
		<td> <code>ImagickTest.php</code> </td>
		<td> Basic functionality, file type loading </td>
	</tr>
	<tr>
		<td> <code>ImagickLoadTest.php</code> </td>
		<td> File/remote image loading, getters/setters </td>
	</tr>
	<tr>
		<td> <code>ImagickOperationsTest.php</code> </td>
		<td> Resize, crop, rotate, pad operations </td>
	</tr>
	<tr>
		<td> <code>ImagickOutputTest.php</code> </td>
		<td> Save, getImageAsString, format conversion </td>
	</tr>
	<tr>
		<td> <code>ImagickAdvancedTest.php</code> </td>
		<td> Chained operations, dimension management </td>
	</tr>
	<tr>
		<td> <code>ImagickPluginTest.php</code> </td>
		<td> Plugin execution during show() </td>
	</tr>
	<tr>
		<td> <code>ImagickRemoteImageTest.php</code> </td>
		<td> Remote URL image handling (optional) </td>
	</tr>
</table>
]]></description>
</item>
<item>
<title>Phiki Implementation from WikiAdmin</title>
<link>https://wackowiki.org/test/Comment3</link>
<guid>https://wackowiki.org/test/Comment3</guid>
<pubDate>Thu, 28 May 2026 08:16:23 +0200</pubDate>
<dc:creator>WikiAdmin</dc:creator>
<description><![CDATA[

<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">PHP</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-ZwyJ6Z5">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-ZwyJ6Z5" class="phiki language-php github-light phiki-themes github-dark" data-language="php" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&lt;</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">php</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/**</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> * Phiki Syntax Highlighter Formatter for WackoWiki
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> </span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">*/</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Phiki</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Phiki</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Phiki</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">use</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Phiki</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Theme</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Theme</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strtolower</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">trim</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">_default</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">??</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">text</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 1. Static common aliases (fast lookup)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">grammar</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">match</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">apache</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">htaccess</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Apache</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">c++</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">cpp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">            </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Cpp</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">csharp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">cs</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">c#</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">    </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Csharp</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">cmake</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                 </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">CMake</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">css</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Css</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">dart</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Dart</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">diff</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Diff</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">docker</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">dockerfile</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Docker</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">go</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">golang</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">          </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Go</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">html</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Html</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">http</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Http</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">ini</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Ini</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">java</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Java</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">javascript</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">js</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">      </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Javascript</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">json</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Json</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">kotlin</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">kt</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">          </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Kotlin</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">latex</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">tex</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">          </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Latex</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">lua</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Lua</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">makefile</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">              </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Makefile</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">markdown</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">md</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">        </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Markdown</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">nginx</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                 </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Nginx</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">perl</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Perl</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">php</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Php</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">powershell</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">ps</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">      </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Powershell</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">python</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Python</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">r</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                     </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">R</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">regex</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">regexp</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">       </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Regex</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">ruby</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">rb</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">            </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Ruby</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">rust</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">rs</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">            </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Rust</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">scala</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                 </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Scala</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">bash</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">sh</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">shell</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Shellscript</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">sql</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Sql</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">swift</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                 </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Swift</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">text</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">txt</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">           </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Txt</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">toml</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Toml</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">typescript</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">ts</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">      </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Typescript</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">xml</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">                   </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Xml</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">yaml</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">yml</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">           </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Yaml</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">default</span><span class="token">                 </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">null</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">line_numbers</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">isset</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">numbers</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">start_line</span><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">max</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">,</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">int</span><span class="token">)</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">options</span><span class="token">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">start</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">]</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">??</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">try</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phiki</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">new</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Phiki</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> 2. Try dynamic alias registration if not in static map</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">grammar</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">===</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">null</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">try</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">//</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d"> Test if grammar exists by attempting a small highlight (cheap test)</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phiki</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">codeToHtml</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">// test</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token">,</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Theme</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GithubDark</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">#</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">$phiki-&gt;alias($lang_input, $lang_input);</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">grammar</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">catch</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Throwable</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">e</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">grammar</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Grammar</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Txt</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">phiki</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">codeToHtml</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">code</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">text</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">grammar</span><span class="token">:</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">grammar</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">theme</span><span class="token">:</span><span class="token"> </span><span class="token">[</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">light</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Theme</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GithubLight</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">dark</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">  </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=&gt;</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Theme</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">GithubDark</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">]</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">if</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">line_numbers</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">withGutter</span><span class="token">(</span><span class="token">)</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">startingLine</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">start_line</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">}</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">highlighted</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">result</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">toString</span><span class="token">(</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">token</span><span class="token">			</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">cb-</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Ut</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">random_token</span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">7</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tpl</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">token</span><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">token</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">highlighted</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">preg_replace</span><span class="token">(</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">&#039;/</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">&lt;pre(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">[</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">^&gt;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">]</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">*</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">)&gt;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #dbedff">/i&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&lt;pre id=&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">token</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;$1&gt;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">highlighted</span><span class="token">,</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">1</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tpl</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">language</span><span class="token">	</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">empty</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">&amp;&amp;</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">!==</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">text</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">?</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">strtoupper</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">lang_input</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">:</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tpl</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">text</span><span class="token">		</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">highlighted</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">catch</span><span class="token"> </span><span class="token">(</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">\</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Throwable</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">e</span><span class="token">)</span><span class="token"> </span><span class="token">{</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">tpl</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">text</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">=</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&lt;pre class=&quot;code-error&quot;&gt;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">Ut</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">::</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">html</span><span class="token">(</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">text</span><span class="token">)</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&lt;/pre&gt;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token" style="color: #005cc5;;--phiki-dark-color: #79b8ff">error_log</span><span class="token">(</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Phiki Formatter Error: </span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&#039;</span><span class="token"> </span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">.</span><span class="token"> </span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">$</span><span class="token" style="color: #24292e;;--phiki-dark-color: #e1e4e8">e</span><span class="token" style="color: #d73a49;;--phiki-dark-color: #f97583">-&gt;</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">getMessage</span><span class="token">(</span><span class="token">)</span><span class="token">)</span><span class="token">;</span><span class="token">
</span></span><span class="line"><span class="token">}</span><span class="token">
</span></span></code></pre>	</div>
</div>

<br>
<br>


<div class="hl-code">
	<div class="hl-header">
		<span class="hl-language">HTML</span>
		<button type="button" class="clipb hl-copy-btn" 
				title="copy to clipboard" 
				data-clipboard-target="#cb-QEPWbG6">
			<img src="https://wackowiki.org/test/theme/default/icon/spacer.png" 
				 class="ico-copy ico-sm" 
				 alt="Copy">
		</button>
	</div>
	<div class="hl-body">
<pre id="cb-QEPWbG6" class="phiki language-html github-light phiki-themes github-dark" data-language="html" style="background-color: #fff;color: #24292e;;--phiki-dark-background-color: #24292e;--phiki-dark-color: #e1e4e8"><code><span class="line"><span class="token">[ === main === ]
</span></span><span class="line"><span class="token">&lt;</span><span class="token" style="color: #b31d28;font-style: italic;;--phiki-dark-color: #fdaeb7;--phiki-dark-font-style: italic">ignore</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;!--</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">notypo</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">--&gt;</span><span class="token">
</span></span><span class="line"><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">div</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">class</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">hl-code</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">div</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">class</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">hl-header</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">span</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">class</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">hl-language</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">[ &#039; language &#039; ]</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">span</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">button</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">type</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">button</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">class</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">clipb hl-copy-btn</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> 
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">title</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">[ &#039; _t: SourceCopyToClipboard &#039; ]</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> 
</span></span><span class="line"><span class="token">				</span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">data-clipboard-target</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">#[ &#039; token &#039; ]</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">			</span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">img</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">src</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">[ &#039; db: theme_url &#039; ]icon/spacer.png</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> 
</span></span><span class="line"><span class="token">				 </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">class</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">ico-copy ico-sm</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token"> 
</span></span><span class="line"><span class="token">				 </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">alt</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">Copy</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">		</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">button</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">div</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">	</span><span class="token">&lt;</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">div</span><span class="token"> </span><span class="token" style="color: #6f42c1;;--phiki-dark-color: #b392f0">class</span><span class="token">=</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">hl-body</span><span class="token" style="color: #032f62;;--phiki-dark-color: #9ecbff">&quot;</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">		[ &#039; text | pre &#039; ]
</span></span><span class="line"><span class="token">	</span><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">div</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token">&lt;/</span><span class="token" style="color: #22863a;;--phiki-dark-color: #85e89d">div</span><span class="token">&gt;</span><span class="token">
</span></span><span class="line"><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">&lt;!--</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">/notypo</span><span class="token" style="color: #6a737d;;--phiki-dark-color: #6a737d">--&gt;</span><span class="token">
</span></span><span class="line"><span class="token">&lt;/</span><span class="token" style="color: #b31d28;font-style: italic;;--phiki-dark-color: #fdaeb7;--phiki-dark-font-style: italic">ignore</span><span class="token">&gt;</span><span class="token">
</span></span></code></pre>	</div>
</div>


]]></description>
</item>
<item>
<title>Kommentar 2 from EoNy</title>
<link>https://wackowiki.org/test/Comment2</link>
<guid>https://wackowiki.org/test/Comment2</guid>
<pubDate>Tue, 05 May 2026 16:20:43 +0200</pubDate>
<dc:creator>EoNy</dc:creator>
<description><![CDATA[
	<div class="wrapper type-default">
		<div class="wrapper-content">
TEST
		</div>
	</div>


]]></description>
</item>
<item>
<title>Issues to consider from WikiAdmin</title>
<link>https://wackowiki.org/test/Comment1</link>
<guid>https://wackowiki.org/test/Comment1</guid>
<pubDate>Mon, 24 Nov 2025 10:51:44 +0100</pubDate>
<dc:creator>WikiAdmin</dc:creator>
<description><![CDATA[<ol type="1"><li> For advanced search capabilities, MySQL or MariaDB are strongly recommended.
</li>
<li> The decision to use SQLite should ideally be made before creating the wiki, as migrating from SQLite to MySQL later is difficult.
</li>
<li> The database file is typically stored in a directory outside the web root.
<ol type="1"><li> <code>../data/db_name.sqlite</code>
</li></ol>
</li>
<li> To ensure optimal performance, the database should be configured in WAL (Write-Ahead Logging) mode.
<ol type="1"><li> <code>PRAGMA journal_mode=wal;</code>
</li></ol>
</li>
<li> For full text search functionality, SQLite must be compiled with the FTS5 module, which is commonly included in modern builds.
</li>
<li> Access control is handled through the file-system permissions of the database file.
</li>
<li> SQLite requires that index names be unique across the entire database, not just within a single table.
</li>
<li> The entire database is stored in a single file, which simplifies backup procedures. If the database is offline, a simple file copy suffices for backup.
</li>
<li> A SQLite database file should not be used for more than one wiki. The cache table could be inserted into an additional database file.</li></ol>

]]></description>
</item>
</channel>
</rss>