<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8559483286713095246</id><updated>2011-04-21T21:31:44.495-07:00</updated><category term='半角'/><category term='Halfshape'/><category term='code syntax highlighter blogger'/><category term='delicious'/><category term='全角'/><category term='Zend Filter'/><category term='Zend Framework'/><category term='php imagecolorat'/><category term='php rand'/><category term='转换'/><category term='Fullshape'/><category term='random string'/><category term='cod highlight blogger'/><category term='decode captcha'/><title type='text'>Most3</title><subtitle type='html'>Easy to get, easy to lose</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://most3.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://most3.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Most3</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8559483286713095246.post-4805302908936010880</id><published>2007-05-29T04:11:00.000-07:00</published><updated>2007-05-29T18:41:31.170-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='delicious'/><category scheme='http://www.blogger.com/atom/ns#' term='decode captcha'/><category scheme='http://www.blogger.com/atom/ns#' term='php imagecolorat'/><title type='text'>how to decode del.icio.us's captcha</title><content type='html'>This is a uncompleted script, maybe you can help me to finish it.&lt;br /&gt;&lt;br /&gt;I try to decode the &lt;a href="http://del.icio.us"&gt;del.icio.us's&lt;/a&gt; captcha with the next php script.&lt;br /&gt;&lt;textarea name="code3" class="php"&gt;&lt;br /&gt;&lt;?php&lt;br /&gt;/* @author tiekil@gmail.com */&lt;br /&gt;class Code {&lt;br /&gt;    protected $_srcFile;&lt;br /&gt;    public function __construct($file) {&lt;br /&gt;        $this-&gt;_srcFile = $file;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public function filter() {&lt;br /&gt;        $size = getimagesize($this-&gt;_srcFile);&lt;br /&gt;        $im   = imagecreatefrompng($this-&gt;_srcFile);&lt;br /&gt;        imagejpeg($im, $this-&gt;_srcFile . '.jpg', 100); //convert the png to jpeg&lt;br /&gt;        $im   = imagecreatefromjpeg($this-&gt;_srcFile . '.jpg');&lt;br /&gt;        for($x=0;$x&lt;$size[0];$x++) {&lt;br /&gt;            for($y=0;$y&lt;$size[1];$y++) {&lt;br /&gt;                $rgb = imagecolorat($im,$x,$y);&lt;br /&gt;                $r = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                if ($r &gt; 100) { // set the light color to white&lt;br /&gt;                    $rgb =  imagecolorallocate($im, 255, 255, 255);&lt;br /&gt;                } else { //javascript:void(0)&lt;br /&gt;Publish Post set the dark color to black&lt;br /&gt;                    $rgb =  imagecolorallocate($im, 0, 0, 0);&lt;br /&gt;                }&lt;br /&gt;                imagesetpixel($im, $x, $y, $rgb);&lt;br /&gt;&lt;br /&gt;                # remove the "Z" block&lt;br /&gt;                // x-1, y-1 black&lt;br /&gt;                $rgb = imagecolorat($im,$x-1,$y-1);&lt;br /&gt;                $r1  = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                // x-1, y white&lt;br /&gt;                $rgb = @imagecolorat($im,$x-1,$y);&lt;br /&gt;                $r2  = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                // x, y-1 white&lt;br /&gt;                $rgb = @imagecolorat($im,$x,$y-1);&lt;br /&gt;                $r3  = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                if (($r3 == 255) &amp;&amp; ($r2 == 255) &amp;&amp; ($r1 == 0)) {&lt;br /&gt;                    $rgb = imagecolorallocate($im, 255, 255, 255);&lt;br /&gt;                    if ($rgb) {&lt;br /&gt;                    imagesetpixel($im, $x-1, $y-1, $rgb);&lt;br /&gt;                    }&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;        # remove others&lt;br /&gt;        for($x=0;$x&lt;$size[0];$x++) {&lt;br /&gt;            for($y=0;$y&lt;$size[1];$y++) {&lt;br /&gt;                $rgb = imagecolorat($im,$x,$y);&lt;br /&gt;                $r = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                $rgb = imagecolorat($im,$x-1,$y);&lt;br /&gt;                $r2 = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                $rgb = imagecolorat($im,$x+1,$y);&lt;br /&gt;                $r3 = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                $rgb = imagecolorat($im,$x,$y-1);&lt;br /&gt;                $r4 = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                $rgb = imagecolorat($im,$x,$y+1);&lt;br /&gt;                $r5 = ($rgb &gt;&gt; 16) &amp; 0xFF;&lt;br /&gt;                # clean dot&lt;br /&gt;                if (($r == 0) &amp;&amp; ($r2 == 255) &amp;&amp; ($r3 == 255) &amp;&amp; ($r4 == 255) &lt;br /&gt;                    &amp;&amp; ($r5 == 255)) {&lt;br /&gt;                    $rgb = imagecolorallocate($im, 255,255,255);&lt;br /&gt;                    imagesetpixel($im, $x, $y, $rgb);&lt;br /&gt;                }&lt;br /&gt;                # clean bottom border&lt;br /&gt;                if (($y == $size[1]-1) &amp;&amp; ($r == 0) &amp;&amp; ($r2 == 255) &amp;&amp; ($r3 == 255)&lt;br /&gt;                     &amp;&amp; ($r4 == 255)) {&lt;br /&gt;                    $rgb = imagecolorallocate($im, 255,255,255);&lt;br /&gt;                    imagesetpixel($im, $x, $y, $rgb);&lt;br /&gt;                }&lt;br /&gt;                # clean right border&lt;br /&gt;                if (($x == $size[0]-1) &amp;&amp; ($r == 0) &amp;&amp; ($r2 == 255) &amp;&amp; ($r4 == 255) &lt;br /&gt;                    &amp;&amp; ($r5 == 255)) {&lt;br /&gt;                    $rgb = imagecolorallocate($im, 255,255,255);&lt;br /&gt;                    imagesetpixel($im, $x, $y, $rgb);&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;        imagejpeg($im, $this-&gt;_srcFile . '.new.jpg',100);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;# demo&lt;br /&gt;$code = new Code('1986312480.png');&lt;br /&gt;$code-&gt;filter();&lt;br /&gt;?&gt;&lt;br /&gt;&lt;/textarea&gt;&lt;br /&gt;before:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pdrxVWjLyLI/RlwMQOXuHyI/AAAAAAAAABA/SHXTM7-d4uc/s1600-h/1986312480.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_pdrxVWjLyLI/RlwMQOXuHyI/AAAAAAAAABA/SHXTM7-d4uc/s320/1986312480.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5069940753387364130" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;after:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pdrxVWjLyLI/RlwMgOXuHzI/AAAAAAAAABI/kjdcTsmIeH4/s1600-h/1986312480.png.new.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_pdrxVWjLyLI/RlwMgOXuHzI/AAAAAAAAABI/kjdcTsmIeH4/s320/1986312480.png.new.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5069941028265271090" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8559483286713095246-4805302908936010880?l=most3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://most3.blogspot.com/feeds/4805302908936010880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8559483286713095246&amp;postID=4805302908936010880' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/4805302908936010880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/4805302908936010880'/><link rel='alternate' type='text/html' href='http://most3.blogspot.com/2007/05/how-to-decode-deiciouss-captcha.html' title='how to decode del.icio.us&apos;s captcha'/><author><name>Most3</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pdrxVWjLyLI/RlwMQOXuHyI/AAAAAAAAABA/SHXTM7-d4uc/s72-c/1986312480.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8559483286713095246.post-6014002660327539572</id><published>2007-05-27T18:20:00.000-07:00</published><updated>2007-05-27T18:52:03.309-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Zend Framework'/><category scheme='http://www.blogger.com/atom/ns#' term='Fullshape'/><category scheme='http://www.blogger.com/atom/ns#' term='全角'/><category scheme='http://www.blogger.com/atom/ns#' term='半角'/><category scheme='http://www.blogger.com/atom/ns#' term='Zend Filter'/><category scheme='http://www.blogger.com/atom/ns#' term='Halfshape'/><category scheme='http://www.blogger.com/atom/ns#' term='转换'/><title type='text'>a Zend Filter for FullShape to HalfShape</title><content type='html'>Some Chinese PHP Programers  maybe need such a Zend filter to help them finish the string converting of Fullshape(全角) to HalfShape(半角), so see the next code:&lt;br /&gt;&lt;textarea name="code1" class="php"&gt;&lt;br /&gt;&lt;?php&lt;br /&gt;/**&lt;br /&gt; * @see Zend_Filter_Interface&lt;br /&gt; */&lt;br /&gt;require_once 'Zend/Filter/Interface.php';&lt;br /&gt;class Zend_Filter_FullshapeToHalfshape implements Zend_Filter_Interface&lt;br /&gt;{&lt;br /&gt;    /**&lt;br /&gt;     * Defined by Zend_Filter_Interface&lt;br /&gt;     *&lt;br /&gt;     * Returns the string $value, removing all but alphabetic and digit characters&lt;br /&gt;     *&lt;br /&gt;     * @param  string $value&lt;br /&gt;     * @return string&lt;br /&gt;     */&lt;br /&gt;    public function filter($value)&lt;br /&gt;    {&lt;br /&gt;        $patterns = array('/０/','/１/','/２/','/３/','/４/','/５/','/６/','/７/',&lt;br /&gt;        '/８/','/９/','/ａ/','/ｂ/','/ｃ/','/ｄ/','/ｅ/','/ｆ/','/ｇ/','/ｈ/','/ｉ/',&lt;br /&gt;        '/ｊ/','/ｋ/','/ｌ/','/ｍ/','/ｎ/','/ｏ/','/ｐ/','/ｑ/','/ｒ/','/ｓ/','/ｔ/',&lt;br /&gt;        '/ｕ/','/ｖ/','/ｗ/','/ｘ/','/ｙ/','/ｚ/','/Ａ/','/Ｂ/','/Ｃ/','/Ｄ/','/Ｅ/',&lt;br /&gt;        '/Ｆ/','/Ｇ/','/Ｈ/','/Ｉ/','/Ｊ/','/Ｋ/','/Ｌ/','/Ｍ/','/Ｎ/','/Ｏ/','/Ｐ/',&lt;br /&gt;        '/Ｑ/','/Ｒ/','/Ｓ/','/Ｔ/','/Ｕ/','/Ｖ/','/Ｗ/','/Ｘ/','/Ｙ/','/Ｚ/','/·/',&lt;br /&gt;        '/～/','/！/','/＠/','/＃/','/％/','/……/','/＆/','/×/','/（/','/）/','/－/',&lt;br /&gt;        '/——/','/＝/','/＋/','/【/','/｛/','/】/','/｝/','/＼/','/｜/','/；/','/：/',&lt;br /&gt;        '/‘/','/’/','/“/','/”/','/，/','/《/','/。/','/》/','/、/','/？/');&lt;br /&gt;        $replacements = array('0','1','2','3','4','5','6','7','8','9','a','b','c',&lt;br /&gt;        'd','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u',&lt;br /&gt;        'v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M',&lt;br /&gt;        'N','O','P','Q','R','S','T','U','V','W','X','Y','Z','.','~','!','@','#',&lt;br /&gt;        '%','......','&amp;','*','(',')','-','_','=','+','[','{',']','}','\\','|',';',&lt;br /&gt;        ':','\'','\'','\"','\"',',','&lt;','.','&gt;',',','?');&lt;br /&gt;        return preg_replace($patterns, $replacements, (string) $value);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;?&gt;&lt;br /&gt;&lt;/textarea&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8559483286713095246-6014002660327539572?l=most3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://most3.blogspot.com/feeds/6014002660327539572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8559483286713095246&amp;postID=6014002660327539572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/6014002660327539572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/6014002660327539572'/><link rel='alternate' type='text/html' href='http://most3.blogspot.com/2007/05/zend-filter-for-fullshape-to-halfshape.html' title='a Zend Filter for FullShape to HalfShape'/><author><name>Most3</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8559483286713095246.post-8780173218137377415</id><published>2007-05-26T08:56:00.000-07:00</published><updated>2007-05-26T09:53:48.940-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='code syntax highlighter blogger'/><category scheme='http://www.blogger.com/atom/ns#' term='cod highlight blogger'/><title type='text'>How to use code highlighter in blogger?</title><content type='html'>Because the blogger will auto replace "&lt;span style="font-weight: bold;"&gt;\n&lt;/span&gt;" to "&lt;span style="font-weight: bold;"&gt;&amp;lt;br /&amp;gt;&lt;/span&gt;", so maybe you will found your  &lt;a href="http://www.dreamprojections.com/syntaxhighlighter/"&gt;Code Syntax Highlighter&lt;/a&gt; should not work again, but it is easy to resolve this problem.&lt;br /&gt;&lt;br /&gt;find the javascript file named "shCore.js", at the last few lines, you will found&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;highlighter.Highlight(element[propertyName]);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;you need insert the next line before it:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;element[propertyName] = element[propertyName].replace(/&amp;lt;br \/&amp;gt;/g,"\n");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;it will reformat the data in your textarea before transform it to the highlighter.    &lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8559483286713095246-8780173218137377415?l=most3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://most3.blogspot.com/feeds/8780173218137377415/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8559483286713095246&amp;postID=8780173218137377415' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/8780173218137377415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/8780173218137377415'/><link rel='alternate' type='text/html' href='http://most3.blogspot.com/2007/05/how-to-use-code-highlight-in-blogger.html' title='How to use code highlighter in blogger?'/><author><name>Most3</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8559483286713095246.post-396601691314284905</id><published>2007-05-26T07:59:00.000-07:00</published><updated>2007-05-26T08:55:33.688-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php rand'/><category scheme='http://www.blogger.com/atom/ns#' term='random string'/><title type='text'>PHP Random String Function</title><content type='html'>&lt;textarea name="code" class="php" rows="15" cols="60"&gt;&lt;br /&gt;&lt;?php&lt;br /&gt;/**&lt;br /&gt; * @version  $Id: iString.php 25 2007-05-24 16:12:11Z  $&lt;br /&gt; *&lt;br /&gt; */&lt;br /&gt;class iString {&lt;br /&gt;    protected $_digits = '0123456789';&lt;br /&gt;    protected $_lowercaseAlphas = 'abcdefghijklmnopqrstuvwxyz';&lt;br /&gt;    protected $_uppercaseAlphas = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';&lt;br /&gt;    protected $_characters;&lt;br /&gt;&lt;br /&gt;    public function getRandom($minLength = 4, $maxLength = 4, $hasDigit = true,&lt;br /&gt;                       $hasLowercaseAlpha = false, $hasUppercaseAlpha = false) {&lt;br /&gt;        $stringLength = rand($minLength, $maxLength);&lt;br /&gt;        if ($hasDigit) $this-&gt;_characters = $this-&gt;_digits;&lt;br /&gt;        if ($hasLowercaseAlpha) $this-&gt;_characters .= $this-&gt;_lowercaseAlphas;&lt;br /&gt;        if ($hasUppercaseAlpha) $this-&gt;_characters .= $this-&gt;_uppercaseAlphas;&lt;br /&gt;        $charactersLength = strlen($this-&gt;_characters);&lt;br /&gt;        $string = '';&lt;br /&gt;        for($i=0;$i&lt;$stringLength;$i++) {&lt;br /&gt;            $pos = rand(0, $charactersLength-1);&lt;br /&gt;            $string .= substr($this-&gt;_characters, $pos, 1);&lt;br /&gt;        }&lt;br /&gt;        return $string;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    /**&lt;br /&gt;     * encrypt a string&lt;br /&gt;     *&lt;br /&gt;     * @param string $string&lt;br /&gt;     * @return string&lt;br /&gt;     */&lt;br /&gt;    public function encrypt( $string ) {&lt;br /&gt;        return md5(md5($string));&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;?&gt;&lt;br /&gt;&lt;/textarea&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8559483286713095246-396601691314284905?l=most3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://most3.blogspot.com/feeds/396601691314284905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8559483286713095246&amp;postID=396601691314284905' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/396601691314284905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8559483286713095246/posts/default/396601691314284905'/><link rel='alternate' type='text/html' href='http://most3.blogspot.com/2007/05/php-random-string-function.html' title='PHP Random String Function'/><author><name>Most3</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
