<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://ldbglobe.fried-rice.net/blog/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>ldbGlobe - Tag - php</title>
  <link>http://ldbglobe.fried-rice.net/blog/</link>
  <atom:link href="http://ldbglobe.fried-rice.net/blog/feed/tag/php/rss2" rel="self" type="application/rss+xml"/>
  <description>Les vacances c'est troooooooooop biiieengue !</description>
  <language>fr</language>
  <pubDate>Tue, 13 Sep 2011 19:52:18 +0200</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Traitement des images en PHP</title>
    <link>http://ldbglobe.fried-rice.net/blog/post/2004/10/06/41-traitement-des-images-en-php</link>
    <guid isPermaLink="false">urn:md5:4062077adda2ce3a5f9526f34a59dbc7</guid>
    <pubDate>Wed, 06 Oct 2004 17:03:00 +0000</pubDate>
    <dc:creator>Mathieu Delestre</dc:creator>
        <category>Scripts</category>
        <category>image</category><category>php</category><category>traitement</category>    
    <description>    &lt;p&gt;&lt;strong&gt;&lt;em&gt;!!! Important&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;2009/07/27 - &lt;a href=&quot;http://ldbglobe.fried-rice.net/blog/post/2009/07/27/traitement-des-images-en-PHP&quot;&gt;Portage de la classe ImageFilter vers un ensemble de class plus souple à manipuler&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;!!! Important&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a href=&quot;http://ldbglobe.fried-rice.net/blog/post/2009/07/27/traitement-des-images-en-PHP&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;15/03/2005&lt;/em&gt;&lt;/strong&gt; V1.1a&lt;/p&gt;
&lt;p&gt;Nouvelle petite correction trouvé par &lt;a href=&quot;http://ber.free.fr/&quot; hreflang=&quot;fr&quot;&gt;TeddyBer&lt;/a&gt;. pas grand chose, mais ce qu’il faut pour éviter des notices superflue.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;14/03/2005&lt;/em&gt;&lt;/strong&gt; V1.1&lt;/p&gt;
&lt;p&gt;
Seconde étape de nettoyage avec la remise à jours des commentaires dans le code source de la classe, et au passage, la correction de quelques incohérences de traitements (ne portant pas vraiment à conséquance sauf dans le cas de certaine opérations pas vraiment courantes)&lt;/p&gt;
&lt;p&gt;
Bref, je vous encourage à mettre à jours vos librairie, mais si tout fonctionne et que les nouvelles fonctionnalités ne vous interressent pas ce n’est pas obligatoire.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;13/03/2005&lt;/em&gt;&lt;/strong&gt; V1.0&lt;/p&gt;
&lt;p&gt;
Un peu de ménage s’imposait ^^ du coup après une reprise des commentaires disséminé à droite et à gauche relative à cette classe, voila un post tout beau tout neuf ^^.&lt;/p&gt;
&lt;p&gt;
NB&amp;nbsp;: la classe est compatible GD 1 et 2 (un simple paramètre à changer dans le code source)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;06/10/2004&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;
Comme ces derniers temps je fait et refait régulièrement le même genre de tranche de code pour générer des miniatures d’image, ou quelques traitements divers (filtre N/B ou autres) j’ai réuni tout les morceau de code dont je disposais dans une classe unique et j’ai mis au propre l’ensemble.&lt;/p&gt;
&lt;p&gt;
Au final j’obtient une classe &lt;strong&gt;ImageFilter&lt;/strong&gt; dont &lt;a href=&quot;http://ldbglobe.fried-rice.net/_divers/data/class.ImageFilter/class.ImageFilter.source.php&quot;&gt;la source&lt;/a&gt; (et &lt;a href=&quot;http://ldbglobe.fried-rice.net/_divers/data/class.ImageFilter/01-ExempleDeBase.php&quot;&gt;une démo&lt;/a&gt;) sont dispo &lt;a href=&quot;http://ldbglobe.fried-rice.net/_divers/data/class.ImageFilter/&quot;&gt;par ici&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
En éspérant que ça servira à d’autre ^^&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Voici la liste des fonctions disponnibles :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;setColorsToWork($nb)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;clear()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;createImage($w,$h)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;loadImage($path)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;getImageSize($img=NULL)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;output($type='PNG',$JPG_Q=90)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;function crop($X,$Y,$WIDTH,$HEIGHT)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;resize($WIDTH,$HEIGHT,$MODE='force',$EXPAND=false)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;fill($x,$y,$r,$g,$b)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lightContrast($L=0,$C=0)&lt;/code&gt; //$C et L (0-100) &lt;strong&gt;Thks to TeddyBer&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;negative()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;colorize($whiteness, $decalR, $decalG, $decalB)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;grayscale($taux=1)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sepia()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mosaic($wSize, $hSize=0 )&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;stamp($img, $x, $y, $mode='normal' )&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;palettedToTrueColor()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;applyMatrix3x3($matrix) &lt;/code&gt; // &lt;em&gt;pas bon pour le CPU&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Blur($k=1)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Edge($k=1)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Sharpen($k=1)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;flip($flip='h') &lt;/code&gt; // &lt;em&gt;h,v&lt;/em&gt; &lt;strong&gt;Thks to ZeuBeuBeu&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rotation($angle=90) &lt;/code&gt; // &lt;em&gt;90,180,270&lt;/em&gt; &lt;strong&gt;Thks to ZeuBeuBeu&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;batchFilter(Array $commands)&lt;/code&gt; &lt;a href=&quot;http://ldbglobe.fried-rice.net/_divers/data/class.ImageFilter/03-FiltreCompose.php&quot;&gt;démo ici&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La métode &lt;strong&gt;Stamp&lt;/strong&gt; supporte 6 mode de fusion&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;normal = Pix1 &amp;lt;= Pix2&lt;/li&gt;
&lt;li&gt;multiply = Pix1 &amp;lt;= Pix1*Pix2/255 (si Pix2 = 255 = Blanc pas de changement)&lt;/li&gt;
&lt;li&gt;add = Pix1 &amp;lt;= Pix1+Pix2&lt;/li&gt;
&lt;li&gt;difference = Pix1 &amp;lt;= Abs(Pix1-Pix2)&lt;/li&gt;
&lt;li&gt;lighten = Pix1 &amp;lt;= max(Pix1,Pix2)&lt;/li&gt;
&lt;li&gt;darken = Pix1 &amp;lt;= min(Pix1,Pix2)&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>
