2010年11月16日火曜日

bit.ly に icon 画像を保存してみた。

やり方:
まず、PHP が動くサーバーに次のような PHP スクリプトを用意する。(PHP が無ければ、適宜同内容で置き換える。)


<img src="<?php echo $_GET['d']; ?>" />


この PHP を仮に、http://kt3k.org/m.php というアドレスに置いたとする。
こうすると、d に data URI scheme に変換した画像文字列 A を入れれば、A に相当する画像が表示される。
具体的には、
http://kt3k.org/m.php?d=A
にアクセスすれば、A に相当する画像が表示される。
この時、
http://kt3k.org/m.php?d=A
に相当する文字列が、2048 Byte を超えていなければ、bit.ly で短縮する事が出来る。(=bit.ly に画像データを保存している。)

data URI は
http://www.kawa.net/works/js/data-scheme/base64.html
ここなんかで作成可能。

ブラウザに貼付けるときはこのままでいけるけど、
bit.ly で短縮するためには、さらに、urlencode する必要あり。
スクリプト書くのが面倒なときは、
http://urlencode.net/
ここなんかにコピペする。

たとえば、

のような画像を上の方法で URL に変換すると、


http://kt3k.org/m.php?d=data%3Aimage%2Fgif%3Bbase64%2CR0lGODlhKgAuAIYAAAEBAoSEhERERcTDtiUlKLmWkHJdWuPj5FxbUxMTE6Cgnu%2FCukI1NLi1pFRTTHR0dfPz85OSjjMzMyMdHNivqItxbAkJClVFQ9PT1GtqZhsbG7OztNnVvsvLzDMsK6qqrLq6vPz89dvb3AkHCIyLe0xMTCsrK%2Bvr7GRkYxgTFKamqUk9O3x8fZycnZx%2FetzdvwcHCE9APsLCxMSfmFxcXBYWGKOjpDs7PL27qlVVVHh2bvf3%2BJKSlDY2OeO4sZN3cw8PEVxLSGtrbB4eIc%2FP0L6%2BwP39%2FYuLiS0tMe%2Fv8ODcw%2F%2F%2F%2FwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEsALAAAAAAqAC4AAAj%2BAJdYAECQxZKDCBMqXHiQwIQUIwAwXAJgRIoJDm9M3JjwQpALDAgAscAQCAEGHkFq5DjRQIUfFQysIJCAoYcYLmEaiCGA5UIDLgrMKODCQEiGK4AKJWoUiE%2BEFyoUoOCDQoEKQTwwjDq16tULE1ayJBDkxwwfC3zM%2BBFko1m0atkSIKjBAQkcHJQoedEggwkAE7hStYp1o9TBXyfQLXHEiGPHA3SYsJCCgdKhRS9svMyUQQoAFgjkeEw6gAQLIwjgfBkzhgmOOVsTiBh6tOMQj00nAGAS5cejHH2DFEkQgOjHuB0LmUzQIsaHI3w%2Bh1gcgIYSyB%2FTmFu9%2BlOK3en%2BCsju2IGG8AS%2Fg%2B9uQcN40o5znEevvjqC4u7hK59MI3x9gv1BQBABDuhnxBFHnCdgf6AhZAFJG6GXgAQoQHDCgw%2BecOAR4UGIIYQMFccgABIIgQEGHz7YAQY2zNefBTUJhGGExSVAwA1HdHCAEaDB8CAARpyAgQiTDQTjQR%2FSCAAMGtzAAwYQGEjaARgI8GOKD2400IARYCClfkKiQBCWIC6UgAUwJHCEhl%2FqB8EGZ56J5UQSmEBAjm1%2BeYQJp5E5EQ145inlEQ6QmeVEeEZJmggfqAACm%2FodIaehG3WgHwYfrCjDB17C10EHIxl6KEM5WioCBiuKQGUHKkD66RH%2BBIiaJEMlsNACCJ%2BeAMGuFn4qAoIICjCprBMRIMADnB6gK68QKNuBDEXwsJ2ssy40xA0PgHBAlIo6ZqGQH6AgQQ3UzsjQjQHIsKwR3HorZAslaBBquRM1GUAHbLZr4a4Y8CBsueYupAESQhShK7vsnnDCAQzLcMQNw1I7UQLu2SACtwyfKsKpIAQAMcCjCiwBCxtgsPDGCrUgxA0E1HDmSEBEHLC1ApCcqggTlSABARq4nEACQ5A050ZCZDokzhv1YGfPNWgAYoocGY0ySxIM4XINsTpoAcwcKXvC1BzdWAINOZQAogA0sBAADxwpfADYG2mAwgM8HGEQQg8c8QFMCCC0fTLSLLWQqQwbJORoB3AnpKrbiU8kgwgKAy6DDEcDrpCyFr5t%2BUYmZ47QiSdunpDXX4vOEAakm87Swl9%2FpyrDb6sn%2B%2BWwq35QQAA7

となって、
ちゃんと bit.ly に保存できる。

http://bit.ly/bnoWjm