昨天~ 寒流又來襲了~ 晚上約一約給它又跑去「輕井澤鍋物」~
不過實在有點誇張~ 我訂了晚上「8:15」分~ 結果去到那邊,一大堆人擠在櫃台前~
生意好到不行吧~ 服務生還請我們先在「外面」等... 的確~ 外面還是一大堆人在等位子~ 我也只好冷風颼颼地和學弟二個人在外面開講一下.. 而上圖就是人滿為患的證據~ 哈~
結果一直到「8:30」我們才得以進去大門裡~
不過有了前車之鑑(輕井澤鍋物 - 精燉麻辣豬肉燒鍋),這一次當然給它點「和風」來品嚐~ ^^v 讚啦~
blog.Ring.idv.tw
In Enjoy Life
昨天~ 寒流又來襲了~ 晚上約一約給它又跑去「輕井澤鍋物」~
不過實在有點誇張~ 我訂了晚上「8:15」分~ 結果去到那邊,一大堆人擠在櫃台前~
生意好到不行吧~ 服務生還請我們先在「外面」等... 的確~ 外面還是一大堆人在等位子~ 我也只好冷風颼颼地和學弟二個人在外面開講一下.. 而上圖就是人滿為患的證據~ 哈~
結果一直到「8:30」我們才得以進去大門裡~
不過有了前車之鑑(輕井澤鍋物 - 精燉麻辣豬肉燒鍋),這一次當然給它點「和風」來品嚐~ ^^v 讚啦~
2008-02-28 23:50:10 | Comments (5)
In PHP
最近剛好需要用到一個縮圖技巧~ 所以我Google了一下~ 想找到PHP製作縮圖的方式~
而Google出來的結果發現到~ 使用官方所採用的GD library、ImageMagick 兩者較常被使用~
這裡我就直接用官方所採用的GD library來做~ 不過「聽說」ImageMagick效率較好~ 有沒有人有相關的建議呢?分享一下唄~
PHP 縮圖製作(Image Thumbnail)
HTML - 上傳頁面
<form action="ImageHandler.php" method="post" enctype="multipart/form-data"> <input type="file" name="uploadfile"/> <input type="submit"/>
ImageHandler.php - 縮圖處理細節封裝在ImageResize.php
下述程式是以縮圖後的尺寸為「100」當基礎,所以寬度和高度的尺寸會自動地照比例縮圖~ 如果您想要客製化更多的功能~ 可以自行擴充或改寫ImageResize.php
<?php require_once 'ImageResize.php'; $ir = new ImageResize(); $ir->readImage($_FILES['uploadfile']['tmp_name']); $ir->thumbnailImage(100); $ir->writeImage($_FILES['uploadfile']['name']); $ir->destory(); ?>
ImageResize.php - 處理縮圖的ImageResize Class
<?php
/**
* Date: 2008/02/28
* Shen(http://blog.ring.idv.tw)
*/
class ImageResize
{
private $src_image;
private $src_width;
private $src_height;
private $dest_image;
private $dest_width;
private $dest_height;
function __construct(){}
public function readImage($imgpath)
{
$this->src_image = imagecreatefromjpeg($imgpath);
$size = getimagesize($imgpath);
$this->src_width = $size[0];
$this->src_height = $size[1];
}
public function thumbnailImage($size)
{
if($this->src_width > $this->src_height)
{
$this->dest_width = $size;
$this->dest_height = ($this->src_height/$this->src_width)*$size;
}else{
$this->dest_height = $size;
$this->dest_width = ($this->src_width/$this->src_height)*$size;
}
$this->dest_image = imagecreatetruecolor($this->dest_width,$this->dest_height);
imagecopyresampled($this->dest_image,$this->src_image,0,0,0,0,$this->dest_width,$this->dest_height,$this->src_width,$this->src_height);
}
public function writeImage($imgpath)
{
imagejpeg($this->dest_image,$imgpath,100);
}
public function destory()
{
imagedestroy($this->src_image);
imagedestroy($this->dest_image);
}
}
?>
參考資源
2008-02-28 21:54:37 | Comments (11)
In Open Source, ActionScript 3.0
剛剛找到一個AIR : SWF dump tool,它是用Tamarin project中的「abcdump.as」來寫成的Adobe AIR應用,不過感覺上似乎沒有「swfdump」來得強大~
從「利用swfdump反組譯ActionScript 3.0」的一文中~ 其實「swfdump.exe」還是利用「Java」程式去執行的~ 為何如此說?我們可以看一下「swfdump」(shell script)的內容:
..... java $VMARGS -jar "$FLEX_HOME/lib/swfdump.jar" "$@"
所以我將整個「swfdump」會用到的jar檔抓出來~ 並寫成一個批次檔來處理~ 這樣大家就不需要那麼麻煩還要抓原始檔然後再編譯等等的工作步驟了! ^^
批次檔內容
@java -jar "%~dp0swfdump.jar" %*
下載點:swfdump
下載後請直接解壓縮~ 然後將「c:\swfdump\bin」設定至「Path」的環境變數即可~
操作方式
swfdump -abc helloworld.swf
2008-02-26 14:38:39 | Add Comment
In Flex, Open Source, ActionScript 3.0
Open-Source Flex SDK project 提供了一個命令列的小工具,稱為:「swfdump」,我們可以用它來反組譯包含ActionScript 3.0的SWF檔案,不過要利用此工具之前~ 必須先做一些相關的處理。
swfdump建置步驟
Step 1. 請設置好你的Apache Ant,並設好「Path」環境變數。
Step 2. 確認你的「JAVA_HOME」環境變數已經指到你的JDK目錄夾位置。
Step 3. 請下載Flex SDK的原始碼,可參考「Flex 3 is Now Open Source !!」。
Step 4. 切換工作目錄至Flex SDK原始碼中的「trunk\modules\swfutils」,並輸入「ant」來編譯swfutils底下所有的Java程式並打包。
cd c:\flexsrc\trunk\modules\swfutils ant
Step 5. 切換至「trunk\bin」,然後進行反組譯「helloworld.swf」。
(這裡我們用Flash CS3開發一個含「trace("Hello World");」的測試檔案)
cd c:\flexsrc\trunk\bin swfdump -abc helloworld.swf
接著你就可以看到反組譯後的結果了~
…………………
01 02 01 0A 0B 0A function helloworld_fla:MainTimeline::helloworld_fla:frame1():
maxStack:2 localCount:1 initScopeDepth:10 maxScopeDepth:11
D0 getlocal0
30 pushscope
5D 04 findpropstrict :trace
2C 09 pushstring "Hello World"
4F 04 01 callpropvoid :trace (1)
47 returnvoid
0 Extras
0 Traits Entries
02 03 01 0A 0B 0F function helloworld_fla:MainTimeline::helloworld_fla:MainTimeline():
maxStack:3 localCount:1 initScopeDepth:10 maxScopeDepth:11
D0 getlocal0
30 pushscope
D0 getlocal0
49 00 constructsuper (0)
5D 05 findpropstrict :addFrameScript
24 00 pushbyte 0
60 03 getlex helloworld_fla:frame1
4F 05 02 callpropvoid :addFrameScript (2)
47 returnvoid
0 Extras
0 Traits Entries
…………………
Good luck! ^^
參考資源
2008-02-25 23:18:22 | Comments (2)
In Open Source, Flex
Adobe Open Source.包含了Adobe Flex SDK、BlazeDS、Tamarin等開放原始碼的計畫。
而我們可以取得最新的Flex SDK原始碼~
先安裝一下Subversion client:
Windows:http://subversion.tigris.org/files/documents/15/39559/svn-1.4.5-setup.exe
接著就直接給它抓下來:
mkdir flexsrc svn checkout http://opensource.adobe.com/svn/opensource/flex/sdk flexsrc
下載檔案很多~ 將近800MB~ 所以有點耐心放著讓它慢慢載...
相關資源
2008-02-25 21:55:02 | Add Comment