<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DevBlog &#187; miniature</title>
	<atom:link href="http://www.devblog.fr/tag/miniature/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devblog.fr</link>
	<description>Blog dédié aux langages web. Scripts et ressources pour webmaster.</description>
	<lastBuildDate>Thu, 02 Sep 2010 10:42:44 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Créer une miniature en php</title>
		<link>http://www.devblog.fr/2010/01/12/creer-une-miniature-en-php/</link>
		<comments>http://www.devblog.fr/2010/01/12/creer-une-miniature-en-php/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 09:56:15 +0000</pubDate>
		<dc:creator>Virginie</dc:creator>
				<category><![CDATA[Non classé]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[miniature]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.devblog.fr/?p=208</guid>
		<description><![CDATA[But : créer une miniature à partir d&#8217;une image, avec une largeur et une hauteur maximum, sans agrandir l&#8217;image (pour ne pas avoir une miniature de mauvaise qualité) si elle est plus petite que la taille de la miniature souhaitée.
(Pour la méthode où on diminue l&#8217;image jusqu&#8217;à ce qu&#8217;elle rentre complètement dans nos dimensions et [...]]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste">But : créer une miniature à partir d&#8217;une image, avec une largeur et une hauteur maximum, sans agrandir l&#8217;image (pour ne pas avoir une miniature de mauvaise qualité) si elle est plus petite que la taille de la miniature souhaitée.<span id="more-208"></span></div>
<p>(Pour la méthode où on diminue l&#8217;image jusqu&#8217;à ce qu&#8217;elle rentre complètement dans nos dimensions et où on remplit les espaces vides avec une couleur de fonc, cf <a href="http://www.devblog.fr/2010/01/29/creer-une-miniature-en-php-sans-rogner/">créer une miniature sans rogner</a>)</p>
<div id="_mcePaste">
On a 5 cas possibles :</div>
<div><img class="alignnone size-full wp-image-209" title="miniature" src="http://www.devblog.fr/wp-content/uploads/2010/01/miniature.jpg" alt="" width="314" height="252" /></div>
<div id="_mcePaste">Cas n°1 : L&#8217;image est plus petite en hauteur et en largeur : on la recopie telle quelle, sans la redimentionner.</div>
<div id="_mcePaste">Cas n°2 : L&#8217;image dépasse en hauteur mais est trop petite en largeur : on coupe ce qui dépasse en hauteur</div>
<div id="_mcePaste">Cas n°3 : L&#8217;image dépasse en largeur mais est trop petite en hauteur : on coupe ce qui dépasse en largeur</div>
<div id="_mcePaste">Cas n°4 : L&#8217;image dépasse en largeur et en hauteur et est proportionnement trop grande en largeur : on redimentionne pour avoir la bonne hauteur et on coupe ce qui dépasse en largeur</div>
<div id="_mcePaste">Cas n°5 : L&#8217;image dépasse en largeur et en hauteur et est proportionnement trop grande en hauteur : on redimentionne pour avoir la bonne largeur et on coupe ce qui dépasse en hauteur</div>
<div></div>
<div>
<pre class="brush: php">

function creerMiniature($chemin,$H,$W)

{

$chemin2=substr($chemin,0,strrpos($chemin,&#039;.&#039;)).&#039;_mini.jpg&#039;;

$img_src_resource=imagecreatefromjpeg($chemin);

list( $w, $h ) = getimagesize($chemin);

//Cas n°1 : L&#039;image est plus petite en hauteur et en largeur : on la recopie telle quelle

if(($w&lt;=$W) and ($h&lt;=$H))

{

$img_dst_resource = imagecreatetruecolor($w, $h);

imagecopyresampled($img_dst_resource,$img_src_resource,0,0,0,0,$w,$h,$w,$h);

imagejpeg( $img_dst_resource, $chemin2,100);

}

//Cas n°2 : L&#039;image dépasse en hauteur mais est trop petite en largeur :

// On coupe ce qui dépasse en hauteur

if(($w&lt;=$W) and ($h&gt;$H))

{

$img_dst_resource = imagecreatetruecolor($w, $H);

imagecopyresampled($img_dst_resource,$img_src_resource,0,0,0,0,$w,$H,$w,$H);

imagejpeg( $img_dst_resource, $chemin2,100);

}

//Cas n°3 : L&#039;image dépasse en largeur mais est trop petite en hauteur :

// On coupe ce qui dépasse en largeur

if(($w&gt;$W) and ($h&lt;=$H))

{

$img_dst_resource = imagecreatetruecolor($W, $h);

imagecopyresampled($img_dst_resource,$img_src_resource,0,0,0,0,$W,$h,$W,$h);

imagejpeg( $img_dst_resource, $chemin2,100);

}

//Cas n°4 : L&#039;image dépasse en largeur et en hauteur et est proportionnement trop grande en largeur

// On redimentionne pour avoir la bonne hauteur et on coupe ce qui dépasse en largeur

if(($w&gt;$W) and ($h&gt;$H) and (($w/$h)&gt;($W/$H)))

{

$img_dst_resource = imagecreatetruecolor($W, $H);

imagecopyresampled($img_dst_resource,$img_src_resource,0,0,0,0,$W,$H,$W*$h/$H,$h);

imagejpeg( $img_dst_resource, $chemin2,100);

}

//Cas n°5 : L&#039;image dépasse en largeur et en hauteur et est proportionnement trop grande en hauteur

// On redimentionne pour avoir la bonne largeur et on coupe ce qui dépasse en hauteur

if(($w&gt;$W) and ($h&gt;$H) and (($w/$h)&lt;=($W/$H)))

{

$img_dst_resource = imagecreatetruecolor($W, $H);

imagecopyresampled($img_dst_resource,$img_src_resource,0,0,0,0,$W,$H,$w,$w*$H/$W);

imagejpeg( $img_dst_resource, $chemin2,100);

}

}
</pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.devblog.fr/2010/01/12/creer-une-miniature-en-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
