星期四, 10月 09, 2008

待在人群之中,讓自己有「活著」的感覺…

Freelanceswitch的一篇"10 Tips for Getting More Personal Interaction as a freelancer"讓我覺得自己似乎應該多找一些朋友出來碰碰面,才能讓自己有「活著」而不是「一個只會工作賺錢的機器」;更糟的是,錢還賺得不夠多呢!自從小瑜離開台灣,我開始覺得自己有些不知道該做什麼好的感覺,這感覺真的很奇怪,我想,這是「寂寞」吧!

星期三, 10月 08, 2008

沒有妳的日子

按照行程表上列載的項目內容,妳今天應該已經在稻城待上一天了,明天會去亞丁村…

算一算,已經過了五個沒有妳的日子。

這次妳去大陸會有將近半個月的時間只用簡訊對話,就算像陳媽說的,妳可以在大陸那邊去「話吧」打便宜的電話回台北,從妳那邊能得到的訊息還是比起妳在我身邊時要少多了;半個月的時間不算長,但我是多麼不願意讓妳一個人去旅行!

這些不能和妳在一起的日子,我的生命好像只有一半…

自從和妳在一起以後,好像就算什麼事情都不做,也都覺得很開心!…

今天晚上,我獨自一人吃晚餐,在附近的八方雲集吃「韓式辣味泡菜和招牌水餃各五個、加上一碗玉米濃湯」,一共75元…看著妳傳給我的簡訊,想著之前每天下班我們晚上要吃些什麼…嗯…我的答案都是同一個:能和妳在一起吃飯,怎麼樣都是幸福!

相形之下,這頓晚餐吃起來特別沒味道…好期待妳回來和妳一起「吃什麼都好」的幸福!

星期四, 9月 11, 2008

Google瀏覽器:Chrome


Google推出最新的Chrome瀏覽器已經有一小段時間了。我個人認為在Windows的介面下,Chrome的表現相當的棒!它提供了許多優異的功能,例如它會自動記住你最常使用的網頁、軟體開啟的速度比FireFox快很多、互動效果流暢、…

我個人使用Chrome到目前為止,認為它最棒的功能有兩項:第一項是智慧型的網址列,它不但是網址列,同時也是搜尋列;當你把一些字打在上面的時候,Google會推薦你網路上熱門的網址連結,同時也會自動列出你曾經瀏覽過的網頁,這功能真的是非常的實用而且方便!第二個是它的分頁功能,真的是比FF還要棒!除了自動開分頁到目前分頁標籤的右邊之外(FF是開到最右邊的分頁);當然,你也可以手動自己來調整位置,看你想把這個分頁標籤拉到哪邊;如果不小心拉出來的話,它就是一個新的、獨立的Chrome視窗了!等等,居然還可以把這分頁標籤給放回去!只能說:「珍妮佛,這真的是太神奇了!」

如果說,你發現Chrome沒有「首頁」按鈕很不方便的話,其實Chrome只是把它藏起來了!只要按一下Chrome右上方的「扳手」圖示,會出現一個下拉選單,這個時候按下「選項」,就會出現「Google瀏覽器 選項」視窗;在「首頁」分欄裡面,把「在工具列上顯示『首頁』按鈕」打勾!然後你就會發現網址列左邊多了一個房子的「首頁」按鈕。

另外,Chrome的「無痕式視窗」也是個相當特別的功能(按下「Ctrl+Shift+N」就可以新增一個無痕視窗)。這個功能主要在於讓你可以在操作瀏覽器的時候,不會留下任何的私人資料與記錄。

Google不但推出了Chrome瀏覽器,PicasaWeb也做了更新,最明顯的是多了一個「探索」功能。這個探索不是去搜尋Google的內容,而是去猜猜看照片的位置在地球的哪裡,猜中會有分數…小小的遊戲,也是可以讓你了解各地風情的啦!

星期四, 9月 04, 2008

AS3:呼叫外部XML的連結(Using links from external xml file in AS3)

前陣子做了個Flash的Banner,這個連結之前是做在Flash裡面,但現在我想用連結外部XML檔案的方式來達到連結的效果。好處是之後若要改連結的話,只要改XML檔案的內容即可,無需再開啟Flash、輸出成SWF檔、再上傳。

XML程式碼如下:
<links>
<title link="http://www.homepage.com/promotion.htm">
The Promotion</title>

</links>
AS3的程式碼如下:
import flash.net.URLRequest;
import flash.events.MouseEvent;

var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("my-xml-file.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);

var promotionLinkAttribute:XMLList;

function processXML(e:Event):void {
myXML = new XML(e.target.data);
promotionLinkAttribute = myXML.title[0].attribute("link");
}

senser.buttonMode=true;

senser.addEventListener(MouseEvent.MOUSE_OVER, hoverPromotionBanner);
senser.addEventListener(MouseEvent.MOUSE_OUT, visitedPromotionBanner);
senser.addEventListener(MouseEvent.CLICK, openPromotionPage);

function hoverPromotionBanner(e:MouseEvent):void{
MovieClip(getChildByName("senser")).gotoAndPlay("active");
this.gotoAndStop(currentFrame);
}
function visitedPromotionBanner(e:MouseEvent):void{
MovieClip(getChildByName("senser")).gotoAndPlay("visited");
this.play();
}
function openPromotionPage(e:MouseEvent):void {
var promotionLink:URLRequest = new
URLRequest(promotionLinkAttribute);
navigateToURL(promotionLink, "_self");
//trace(promotionLinkAttribute);
}

星期日, 8月 31, 2008

AS3:TweenMax

介紹一個Flash AS3很方便的Tween Class: TweenMAX。這是一隻Jack Doyle所撰寫的程式,是TweenLite的加強版本;可以讓你以程式碼控制的方式更快速的達到許多Flash動態的效果。

首先先到TweenMAX下載免費的Tween。

下載後,將"GS"資料夾放置在與.FLA相同的地方。

接著你就可以使用TweenMAX的功能了。程式碼範例如下:
import gs.*;
var myTween:TweenMax = new TweenMax(mc, 2, {x:500, y:200});
//then later, if you need to change the tween
//so that the "x" property tweens to 100 instead of 500...

myTween.setDestination("x", 100);
//even if the tween is in progress, the value will be updated

星期三, 8月 27, 2008

神魂顛倒與RiS合辦網聚

上星期天我參加了神魂顛倒RiS論壇的網聚,地點在台北市光復南路260巷28號的「味子」。在去參加這個活動之前,我到世貿參觀了機器人大展,因為有朋友在那邊參展,我順道參觀了他們公司的「作品」。參觀結束,等我到味子的時候,已經下午兩點四十分左右了…裡面的人超多的!而且講師已經開講了…沒想到加入這個網聚活動的人還真不少!居然沒位子可以坐著聽講師說明他準備的資料…我只好「罰站」在門口的地方聽講。

可能是我沒有很認真的去了解這個網聚的主題與內容,所以這個網聚跟我想像的很不一樣。

我以為來這邊可以和許多人有互動,進而多認識從事網路工作的同好;然而,事實上幾乎都是在聽兩位講師講演投影片。當然,講師不時也會出問題給大家,所以獎品可說是大放送,獎品內容大部份是小公仔、記事本之類的小東西。

我在他們的意見上填了兩個意見。

第一個意見很自私,就是希望每個人都有位子坐,雖然我比較晚來,但如果我站在其他人的前面把別人的視線擋住,這並不是件好事。

第二個意見,是在我看了講師滿頭大汗的在講解投影片內容時的一種感慨!為什麼講師分享知識給大家時,是這樣的一種情境?

這二個意見,說實在的,都是場地的問題。場地不夠理想,因此有些人得坐地上、有些人得一直站著、有些人得一直頭歪歪的…講師的汗會流成這樣,也是場地不理想的結果。我想,這可能是經費問題,所以沒辦法找出一個場地能像Adobe、數位時代或商業週刊等大公司一樣來舉辦活動。

回過頭來看,這只是個網聚而已!

到底這個網聚的目的是什麼?在我看來,我只是想去認識新朋友、透過網聚了解到底大家的「程度」在哪裡、有沒有機會互相分享經驗、…

我確實是認識了幾位新朋友,而且我還跟其中一位有聯絡,雖然他住在鶯歌比較遠。此外,雖然我看不出大家的程度在哪裡,但從講師的程度可以約略有個想法…互動經驗嘛…90%以上都是單向的。

關於網聚講授的內容:第一位講師長得很像名嘴陳輝文,專門在介紹FlexAIR;第二位講師「奶綠茶」專門在介紹PaperVision 3D,也就是Flash的3D;第三位是每次都壓軸的Atom,專門在紹介Flash Mobile

Flex的部份很吃資源,PV3D同樣也是,Flash Mobile(flash lite)會用的人更少!比較引人注目的可能是奶綠茶介紹的Flash 3D了,效果看起來還滿炫的!雖然PV3D已經出來很久了,但能把它這樣運用的人並不多!Flex在網路頻寬以及電腦效能還沒辦法大幅進步之前,跑起來可能會很吃力,可是它做出來的效果卻也不是一般網頁能比擬的;Flash Lite則是很有潛力,只是需要更多的人一起加入研究與開發,不然光靠Atom這樣跑團可能效果不大。

經過這次網聚的洗禮,我只能給Flash2u以及RiS的站長祝福,很希望這樣的網聚能一次比一次好,畢竟知識的累積並不容易!加油!!

星期六, 8月 23, 2008

無敵難吃的咖啡口味思樂冰!

今天下午台北下了一場大雨,直到晚上才停下來。我和小瑜去緣心豆花兩個人點一份豆花來吃,雖然覺得滿不錯吃的,但總覺得想再喝點什麼東西;於是,我們就到7-11逛了一下…好像夏天到現在,我都還沒吃到思樂冰呢!而且現在又推出新的咖啡口味!好吧,那我裝一杯來喝吧!

結完帳,剛離開7-11,我吸了一口咖啡口味的思樂冰,嗯嗯…我真的是選錯了!有夠難吃的!那味道很像沙士加上一些咖啡,這…能喝嗎?下次我再也不要買這東西了!還是原來的口味比較好吃!

用Camera Profile讓Lightroom的照片美豔動人!

Photoshop Lightroom 2.0的版本推出後,解決了一個之前非常讓人遺憾的問題…色彩。有時候你會發現Photoshop Lightroom的照片顏色似乎和我們想像的不大一樣,例如明明是深紅色的一朵花,怎麼看起來有點兒偏橘色?而且飽和度似乎也不夠,相機原廠軟體設定的色彩還比較好看…

Photoshop Lightroom的軟體工程人員看來也注意到了這個問題,Eric Chan(如果你注意Photoshop Lightroom一開始啟動時所顯示的開發人員清單裡,其中有一個就是他)在John Nack On Adobe發表了一篇文章:「The DNG Profile Editor: What's it all about?」針對這部份提出身為一名Adobe電腦科學家的看法。

如果你使用這些Profile檔的話,可以注意到「暖色(Warm Colors)」的部份,如紅色(Red)、橘色(Orange)、黃色(Yellow)等,有明顯的強化與進步;非常飽和的紅(Deep Saturated Red)顯示出來的就是紅,不會摻雜膚色(skin tone)。Mobile01的一篇文章:「覺得 Adobe Lightroom 2 的顏色不合你意嗎?」裡面有相當多使用這些Profile的照片讓你參考。

想要用這些功能嗎?先到Adobe LabsDNG Profiles下載Camera Profile吧!下載並安裝後,啟動Photoshop Lightroom 2.0,你就擁有讓色彩更美豔動人的能力了!

要使用Adobe Camera Profile,你可以在這裡看到面版所在位置的圖片。基本上,只能在「進階」模式(Develop)才能使用,所以…當我發現某一個Camera Profile的色彩很棒!或者和我相機的原始色彩很接近時,難道我要一張張圖片來套用嗎?

如果是的話,還真慘呢!還好…有方法。當你想把某一個Camera Profile做為預設色彩Profile時,只要按下Alt(在Mac按Option)鍵不放,Camera Calibration面版最底下的「Reset」按鈕會變成「Set Default...」,按下去再選擇「Update to Current Settings」,就會把這個被選定的Camera Profile變成預設的Profile了。

其它相關連結:
  1. 下載Camera Profile(Beta)與DNG Profile Editor
  2. DNG Profile FAQ
  3. DNG Profile Editor教學與相關文件
  4. Adobe Photoshop Lightroom 2 - 學習中心

星期一, 8月 11, 2008

Photoshop Lightroom 2.0 正式推出!


經過長時間Beta版的試煉,Adobe終於正式販售Photoshop Lightroom 2.0了!新版的功能包括了Local adjustment brush(局部區域調整筆刷)、64-bit processing support(支援64位元處理器)、Flexible print packages(彈性列印組件)、Multiple monitor support(支援多重螢幕)、Extensible architecture(擴充式架構)、Volume management(大容量的磁碟儲存管理);同時也強化了既有的功能:Improved organizational tools(強化分類工具)、Nondestructive photo editing(非破壞性相片編輯功能)、Streamlined Photoshop CS3 integration(與Photoshop CS3的緊密整合)、Batch processing(批次處理)、Output sharpening(銳利化輸出)。

想更進一步了解Photoshop Lightroom 2.0,可以到這裡參考。

星期六, 8月 09, 2008

將影像從RGB轉到CMYK模式

因為印刷輸出的需求,把RGB影像模式轉換成CMYK模式在Photoshop裡面似乎是件再簡單不過的事情,也就是直接「影像」>「模式」>「CMYK色彩」。但如果我們要求影像的品質的話,會發現影像從RGB轉換到CMYK模式之後會損失亮部色彩的質感,顏色沒那麼漂亮了,畢竟RGB與CMYK的色域不同,CMYK能顯示的色域沒辦法像RGB一樣的廣。

那麼,我們有辦法控制這個轉換的結果嗎?

這個答案在Photoshop裡。

用Photoshop開啟一張照片影像,開啟「色域警告」功能(「檢視」>「色域警告 Gamut Warning」),你會發現照片上多了一些「灰色區塊」,它是影像中CMYK無法呈現的色彩,也就是RGB轉到CMYK模式時主要會產生的色彩差異的地方,也是我們需要調整的區域。

透過「顏色範圍」(「選取」>「顏色範圍 Color Range」)功能視窗裡的「超出色域 Out of Gamut」(選取下拉選單裡最後的一個選項)來選取這個區塊,羽化選取區域(先擴張 Expand 選取範圍、再羽化 Feather 選取區域),再透過「色相/飽合度 Hue/Saturation」調整圖層將被羽化選取區域的彩度(Saturation)降到大部份灰色區域都消失、只留下一些雜點的灰色;然後再用「海綿工具(Sponge)」(去除飽和度 Desaturation,並將流量 Flow 設低,如10%)降低這些灰色雜點的彩度,直到所有的灰色區域都消失為止。

最後就是將影像平面化,並且把RGB轉換成CMYK模式以確保CMYK的色彩和RGB不會有太大的出入。

星期日, 7月 27, 2008

AS3:用URLLoader載入外部文字

想用ActionScript 3.0載入外部的文字檔案(例:context.txt)到動態文字區塊(例:myText),可以使用URLLoader配合URLRequest來達到!不過…這邊要注意的是,你得用EventListener去監聽這個「URL」是否已載入完成(Event.COMPLETE),否則你會連一個字都看不到的…:
var myLoader:URLLoader = new URLLoader();
var myRequest:URLRequest = new URLRequest("context.txt");
myLoader.load(myRequest);

myLoader.addEventListener(Event.COMPLETE, loadText);

function loadText(e:Event):void {
myText.text = myLoader.data;
}

星期六, 7月 26, 2008

好站推薦:Photoshop Disasters

做設計的人常常因為種種因素,只能把東西「做完」而沒辦法「做好」,所以只要稍加注意,你就會發現許多Photoshop特效下「不為人知」的一面!Photoshop Disasters不止告訴你「不為人知」的那一面,而且還把它放大給你看!告訴你「不為人知」在哪裡!這下子你用Photoshop處理照片或影像的時候可得小心了!別被拿來當做負面教材呀!

星期二, 7月 22, 2008

快速「確認」Photoshop的文字輸入

這句話講得真是奇怪,但我不知道該怎麼形容比較好!有時候你在Photoshop使用文字工具("T"),當你將文字輸入完畢後,你可能會用滑鼠按「打勾」的確認鈕,或是換成其它工具,例如黑色的選取箭頭("V")…可是,當你把所有的工具列都隱藏起來("Tab")、讓Photoshop的顯示範圍最大化的時候("F"),你使用了文字工具打幾個字…好,字打完了;結果你發現沒有任何可以讓你執行「確定文字輸入已完成」的方法,因為浮動工具列被隱藏起來了…沒辦法換其它的工具!不管你按了什麼 "V"、"M"、"Tab"、"Enter"、…都沒用,它都會把你按的東西加到文字框裡面!怎麼辦?

其實Photoshop藏了一個快速完成文字輸入的組合鍵,就是 "Ctrl"+"Enter"。當你完成文字輸入的動作後,按下這兩個按鍵就等於是告訴Photoshop「我已經把字打好了、快讓我用其它的工具吧!」小小的技巧,但有時候真的很重要!

星期二, 7月 15, 2008

下拉選單(Drop-Down Menu)被Flash擋住了…

今天遇到一個奇怪的問題,就是當我們用Dreamweaver的SPRY來做下拉選單(Drop Down Menu)功能的時候,如果底下有個Flash的話,會造成這個下拉選單被擋住!

被擋住會怎樣嗎?…很明顯的,會讓人很生氣!

我首先想到的是 z-index 屬性,它的數值愈大,愈不會被別的東西擋住;數值愈低,則代表這個元素在愈底層…不過,前提是它只能在設有 position 屬性的元素裡面才有作用。所以我在 ul 裡面加了一個 class="zTop" 的類別,在zTop加入底下的屬性:
position:static; z-index:999;
結果,發現…根本就沒有任何作用!難不成得在Flash裡面加上 position:static; z-index:-1; 這樣的屬性嗎?仍然是一個完全無效的結果…ap4a有一篇文章可以參考: Z-index Oddities: Menu dropdowns overlapped by positioned elements,但在目前的狀況下,似乎幫助不大。

所以這問題可能不在 z-index 的深度,而是在Flash本身的問題。webmasterworld.com的一篇文章有提到另一個解決的方法:mozilla - dropdown menu will does not overlap flash movie。這方法確實解決了這個問題!

請在Flash的Object標籤底下加入一個空白標籤,裡面寫進底下的參數:
<param name="wmode" value="transparent">
在 embed 標籤裡再加入底下的參數:
wmode="transparent"
沒想到這樣就解決我的問題了!棒!Adobe針對Flash Object與Embed標籤的屬性也有做詳細的說明。事實上,不一定只有將 wmode 的參數值設成 Transparent(透明) 才行,其實 Opaque(不透明) 也可以!所以只要設定透明度,不論是否透明,都能有效解決這個問題。(設成 window 則是肯定不行!因為我試過了~)

慾望城市:官方網站


最近在播放的電影:慾望城市,我覺得它的官方網站設計得相當不錯!純白的背景、灰階的紐約街景,襯托出四位女主角的身影!彩色的主體與黑白的背景對比,加上鑽石般閃亮的SEX AND THE CITY,可說是一整個白色時尚簡潔的高雅與貴氣!

這個網站整個都是Flash的,當你在畫面左右移動滑鼠的時候,畫面也會跟著移動;當你選取其它項目的時候,利用上下的兩個虛線開合,產生一種把頻道開啟的錯覺,這就是Flash的互動表現囉!

除了整個設計感讓人覺得很時尚之外,可能會有人很好奇那些紅色大大的、像鑽石一樣發亮的字要怎麼做?其實我也有一些好奇,但我懷疑那是「純手工」的…也就是一個一個排上去的,因為裡面的鑽石並不是排列得非常整齊,有一些地方還是有歪掉…不過,瑕不掩瑜,它的效果還是非常的棒!這個網站非常值得我們參考與借鏡!

星期一, 7月 14, 2008

CSS:簡單解決「飄浮(float)」的問題

當我們在Div裡面再放進不同的Div的時候,只要你有使用 "float" (float:Left;或float:Right;)這個屬性的話,常常會發現外面的Div立刻就會忘記自己裡面還有其它的小Div…所以會變成「外面的Div是外面的Div、裡面的Div是裡面的Div」,好像沒什麼關係似的!?

到底應該怎麼弄才能讓外面的Div想起來自己應該要隨著裡面的Div來調整高度呢?畢竟它們是有連帶關係的!不能因為裡面的Div會飄來飄去的就不予理會呀~!?

其實是有幾個解決的方法,例如W3C就建議用額外的標籤來解決這個問題:在裡面最後的一個Div底下,加上強制換行的 BR 標籤,並且在裡面加入 Style="clear:both" 屬性;如此一來,就可以解決這個問題了!

不過,這會讓我們的程式碼看起來有點兒多餘!有別的方法嗎?

有,用假類別(pseudo class) ":after" 屬性一樣能達到同樣的目的!不過…那很複雜!

目前最簡單也最直接的方法,是由英國的Paul O'Brien所發現!只要把外面的Div加上 "overflow:auto;" 屬性,外面的Div就會知道…原來裡面有其它的Div存在!真的是很神奇!

Alex Walker在SitePoint.com的Simple Clearing of Floats以及Peter-Paul Koch在QuirksMode.org的Clearing Floats都有更詳細的圖示與說明。