上google 找 其實可以找到很多 免費的小圖示,不過大部分先會找到 non - commercial use 的 ,也就是非營利使用的, 要放在一些公開的地方可能不太好用,
不過其實在 關鍵字上多加了一個 commercial 就可以 幫助我們找到 可以用的資訊
我用的關鍵字是 "free icon commercial use"
以下是我找到的一個網站
http://esdev.net/2880-icons-for-free-and-commercial-use/
http://www.iconfinder.com/free_icons
ICON Finder: 可以搜尋
http://www.iconfinder.com/
個人使用的
http://www.freeiconsdownload.info/tw/
2011年4月25日 星期一
2011年4月21日 星期四
小心得 16位元字串轉2位元字串
標籤:
google api,
java
因為有需求所以查了一下 code 改寫出了一個function 來達成這個功能,不過載本機上可以執行,帶放在 google app engine 上 就會出現 "java.lang.NumberFormatException" 的錯誤,
估計是toBinaryString 或 parseInt 出錯
輸入像 '12AF' 的字串
就會轉出像 '0001001010101111' 的字串
CODE:
之後只好改成另一種簡單的寫法
估計是toBinaryString 或 parseInt 出錯
輸入像 '12AF' 的字串
就會轉出像 '0001001010101111' 的字串
CODE:
public static String GetHexString(String _str){
String _string = "";
char[] _c = _str.toCharArray();
for(int i=0; i < _c.length ; i++){
String _tempString = Integer.toBinaryString(
Integer.parseInt(String.valueOf(_c[i]), 16));
/// 0
for(int j=_tempString.length();j< 4 ;j++){
_tempString = "0"+_tempString;
}
_string += _tempString;
}
return _string;
}
之後只好改成另一種簡單的寫法
public static String GetHEXFormatString(String _str){
String _string = "";
for(int i =0 ; i <_str.length() ; i++ ){
String _tempStr = "";
char x = _str.charAt(i);
switch (x){
case '0':
_tempStr ="0000";
break;
case '1':
_tempStr ="0001";
break;
case '2':
_tempStr ="0010";
break;
case '3':
_tempStr ="0011";
break;
case '4':
_tempStr ="0100";
break;
case '5':
_tempStr ="0101";
break;
case '6':
_tempStr ="0110";
break;
case '7':
_tempStr ="0111";
break;
case '8':
_tempStr ="1000";
break;
case '9':
_tempStr ="1001";
break;
case 'A':
_tempStr ="1010";
break;
case 'B':
_tempStr ="1011";
break;
case 'C':
_tempStr ="1100";
break;
case 'D':
_tempStr ="1101";
break;
case 'E':
_tempStr ="1110";
break;
case 'F':
_tempStr ="1111";
break;
default:
_tempStr ="0000";
}
_string += _tempStr;
}
return _string;
}
轉貼 Javascript JSON
標籤:
其他,
知識,
javascript
在 javascript 中 若要 接收轉換JSON物件的話,保險起見可以 引用
json2.js
主要有兩個function
JSON.stringify: 將物件轉為JSON 的 string
JSON. parse: 將JSON string 轉成javascript 物件
參考
[1] JSON in JavaScript
[2] JavaScript Essence: 傳送與接收 JSON
json2.js
主要有兩個function
JSON.stringify: 將物件轉為JSON 的 string
JSON. parse: 將JSON string 轉成javascript 物件
參考
[1] JSON in JavaScript
[2] JavaScript Essence: 傳送與接收 JSON
2011年4月19日 星期二
轉貼 Google Map API 本地化
標籤:
google api,
google map api
Google Map API version 3 中,本地化有兩種功能
1. 顯示語言
只要將 language=XX 加入 scrpit 中, XX 表示語言代碼
如
語言代碼可以 到這裡查詢
2. 區域本地化,以設定的區域為優先搜尋
只要將 ®ion=00 加入 scrpit 中, 00 表示地區代碼
這方面設定資訊比較少,範例上都是兩碼, 地區代碼的話可以參考 List of Culture Codes
參考
Google Map API v3
1. 顯示語言
只要將 language=XX 加入 scrpit 中, XX 表示語言代碼
如
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=xx">
語言代碼可以 到這裡查詢
2. 區域本地化,以設定的區域為優先搜尋
只要將 ®ion=00 加入 scrpit 中, 00 表示地區代碼
這方面設定資訊比較少,範例上都是兩碼, 地區代碼的話可以參考 List of Culture Codes
參考
Google Map API v3
2011年4月14日 星期四
paypal IPN test
Paypal 線上付費有提供一個 IPN (Instant Payment Notification)的服務,簡單的說當交易完成之後,可以設定一個網址來處理客戶付費的訊息。
詳細步驟可以參考[1].
可以到 paypal 的網頁下載範例程式,支援包含ASP.Net(C#),ASP.Net(VB),JSP,PHP等語言
若要單純的試IPN,可以到 paypal 提供的 測試平台 sandbox, 利用 Test tool 來簡單的確認IPN ,步驟如下, (記得要將API 的url 從 https://www.paypal.com/cgi-bin/webscr 換成 https://www.sandbox.paypal.com/cgi-bin/webscr )
步驟1. 進入snadbox 網頁 選擇 Test tool
步驟2. 填入處理交易完成回報的URL
步驟3. 按下 Send IPN
--------------------------------
實際使用的步驟如下
步驟1. 登入後選擇我的 paypal
步驟2. 交易紀錄,即時付款通知紀錄
步驟3. 設定URL
參考[1]: IPNGuide.pdf
詳細步驟可以參考[1].
可以到 paypal 的網頁下載範例程式,支援包含ASP.Net(C#),ASP.Net(VB),JSP,PHP等語言
若要單純的試IPN,可以到 paypal 提供的 測試平台 sandbox, 利用 Test tool 來簡單的確認IPN ,步驟如下, (記得要將API 的url 從 https://www.paypal.com/cgi-bin/webscr 換成 https://www.sandbox.paypal.com/cgi-bin/webscr )
步驟1. 進入snadbox 網頁 選擇 Test tool
步驟2. 填入處理交易完成回報的URL
步驟3. 按下 Send IPN
--------------------------------
實際使用的步驟如下
步驟1. 登入後選擇我的 paypal
步驟2. 交易紀錄,即時付款通知紀錄
步驟3. 設定URL
參考[1]: IPNGuide.pdf
Google App engine 啟用SSL
標籤:
Eclipse,
google api
若要使用SSL 的服務在Google App Engine 的話 要在
\war\WEB-INF\appengine-generated.xml 加入以下的敘述
參考:
Configuring Secure URLs (SSL)
\war\WEB-INF\appengine-generated.xml 加入以下的敘述
<ssl-enabled>true</ssl-enabled>
參考:
Configuring Secure URLs (SSL)
2011年4月13日 星期三
轉貼 JQuery Plugin dynamic field
標籤:
jquery plugin
在網頁製作 動態的欄位 在 JQuery 中 找到兩個 plugin
1. jquery-dynamic-form
這個是 GPL2 授權的code
2. dynamicField - A jQuery Plugin
這個是 MIT 或 GPL 授權的code
1. jquery-dynamic-form
這個是 GPL2 授權的code
2. dynamicField - A jQuery Plugin
這個是 MIT 或 GPL 授權的code
2011年4月11日 星期一
2011年4月8日 星期五
使用 google ClientLocation 取得使用者IP的位置
標籤:
google api,
javascript
在引用 google api 後, 就可以使用以下的函數取得 所在 IP的 地理位置,
如範例
此外還有一種更精確的定位API
Geolocation [3] , 不過測試下 只有 FF 可以執行,CHROME 和 IE8 都支援有問題??
參考
[1] Gmap samples
[2] Google Map IP定位 - 自動載入使用者位置
[3] Google Maps JavaScript API 第 3 版
如範例
var _clientLocation= google.loader.ClientLocation;
/// 緯度
var lat = _clientLocation.latitude;
/// 經度
var lng = _clientLocation.longitude;
///城市名稱
var city = _clientLocation.address.city;
/// 國家
var country = _clientLocation.address.country
/// 國家簡碼
var countryCode = _clientLocation.address.country_code;
此外還有一種更精確的定位API
Geolocation [3] , 不過測試下 只有 FF 可以執行,CHROME 和 IE8 都支援有問題??
參考
[1] Gmap samples
[2] Google Map IP定位 - 自動載入使用者位置
[3] Google Maps JavaScript API 第 3 版
小心得 Google map api key
標籤:
google api
雖然是同一個domain name , 不過 Http 和 Https 的 網頁要使用不同的 google api key
不過
Google Map API V3 就不需要 Key 了
不過
Google Map API V3 就不需要 Key 了
2011年4月6日 星期三
JDO 日期 範圍搜尋
標籤:
google api,
java
JDO 在查詢日期範圍的方法,比 標準 SQL 麻煩一點 ,可以參考以下的語法,有兩種寫法
Declarative JDOQL 和 Single-String JDOQL, my_date_limit 就是要比較的日期
Declarative JDOQL :
Single-String JDOQL :
日期的宣告如下
/*
宣告 2011 年 4 月 1 號
*/
Date my_date_limit = new Date(111,3,1); /// 年(1900+)、月(0=1月)、日
參考
[1] Java Data Objects
[2] JavaTM 2 Platform, Standard Edition, v 1.4.2
API Specification - java.util.Date
Declarative JDOQL 和 Single-String JDOQL, my_date_limit 就是要比較的日期
Declarative JDOQL :
Query query = pm.newQuery(domain.Product.class,
"endDate > best_before_limit");
query.declareImports("import java.util.Date");
query.declareParameters("Date best_before_limit");
query.setOrdering("endDate descending");
Collection results = (Collection)query.execute(my_date_limit);
Single-String JDOQL :
Query query = pm.newQuery("SELECT FROM mydomain.Product " +
"WHERE endDate > best_before_limit " +
"PARAMETERS Date best_before_limit " +
"import java.util.Date ORDER BY endDate DESC");
List results = (List)query.execute(my_date_limit);
日期的宣告如下
/*
宣告 2011 年 4 月 1 號
*/
Date my_date_limit = new Date(111,3,1); /// 年(1900+)、月(0=1月)、日
參考
[1] Java Data Objects
[2] JavaTM 2 Platform, Standard Edition, v 1.4.2
API Specification - java.util.Date
2011年4月1日 星期五
小心得, 在 Goole Site 使用自己的Flash
標籤:
Flash
網頁嵌入Flash
標籤:
Flash
最近 研究了一下 在網頁 嵌入Falsh的方法
1. 預設(用CS5 匯出的預設選項)
會產生一個 FlashContent 的 div tag, 下面的例子使引用 FlashSample.swf, 寬 320 , 高 240
2. 使用 SWFObject
a. 要先下載 SWFObject
在 html 插入以下的code
b. 或使用 Google AJAX load
3. 直接 embed
目前使用起來 SWF Object 比較好,搭配 css 等其他設定 沒有出現干擾的現象
參考
[1] 使用 SWFObject 來做 Flash 的漸進增強
[2] SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块
[3] W3cSchools
1. 預設(用CS5 匯出的預設選項)
會產生一個 FlashContent 的 div tag, 下面的例子使引用 FlashSample.swf, 寬 320 , 高 240
<div id="flashContent">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="320" height="240" id="FalshTT" align="middle">
<param name="movie" value="FalshSample.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#333333" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="window" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="FalshSample.swf" width="320" height="240">
<param name="movie" value="FalshSample.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#333333" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="window" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflash">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="取得 Adobe Flash 播放程式" />
</a>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
</div>
2. 使用 SWFObject
a. 要先下載 SWFObject
在 html 插入以下的code
b. 或使用 Google AJAX load
<script type="text/javascript" src="swfobject.js"></script>
<div id="flashContent">
This text is replaced by the Flash movie.
</div>
<script type="text/javascript">
var so = new SWFObject("FlashSample.swf", "mymovie", "200", "300", "7", "#336699");
so.addParam("quality", "low");
so.addParam("wmode", "transparent");
so.addParam("salign", "t");
so.write("flashContent");
</script>
3. 直接 embed
<embed SRC="FlashSample.swf" width="320" height="240">
目前使用起來 SWF Object 比較好,搭配 css 等其他設定 沒有出現干擾的現象
參考
[1] 使用 SWFObject 來做 Flash 的漸進增強
[2] SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块
[3] W3cSchools
訂閱:
文章 (Atom)