タグ「Google」が付けられているもの

入力フォームをクリックする度に以下のようなバルーンが表示されるようになった。連続で入力したいときにこのバルーンが入力の邪魔をする...。正直ウザイしイラっとくる。

そんな時はGoogle IMEのプロパティを開いて「カーソル周辺に入力モードを表示する」のチェックを外せば解決です。

「コントロールパネル」-「地域と言語のオプション」を開き、「キーボードと言語」のタブにある「キーボードの変更」クリック

「Google日本語入力」を選んで「プロパティ」を押す

「入力補助」のタブにある「カーソル周辺に入力モードを表示する」のチェックを外して「OK」を押して再起動

Windows VISTAの場合ですが、これでウザいバルーンが表示されなくなります。

グーグルマップのAPIがV3になってから今まで必要だったAPIキーが不要になっているらしい。

 

地図を表示する機会があったので、会社の所在地でマーカー付のサンプルを作ってみた。

意外に簡単。

 

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>GoogleMapsApiV3で地図を表示</title>

<!--↓↓GoogleMapApiV3↓↓-->
<script type='text/javascript' src='http://www.google.com/jsapi'></script>
<script type='text/javascript'>google.load('jquery', '1.3.2');</script>
<script type='text/javascript' src='http://maps.google.com/maps/api/js?sensor=false&language=ja' charset='UTF-8'></script>
<script type="text/javascript">
	$(document).ready(function() {
	  var mapdiv = document.getElementById('map_canvas');
	  var geocoder = new google.maps.Geocoder();
	  var point = new google.maps.LatLng(34.057488,131.808716);
	  var myOptions = {
			  zoom: 12,
			  center: point,
			  mapTypeControl: true,
			  navigationControl: true,
			  navigationControlOptions: { style: google.maps.NavigationControlStyle.SMALL},
			  mapTypeId: google.maps.MapTypeId.ROADMAP,
			  scaleControl: true
	  };
	
	  var map = new google.maps.Map(mapdiv, myOptions);
	  var marker = new google.maps.Marker({
		  position: point,
		  map: map,
		  draggable: true
	  });
	});
</script>
<!--↑↑GoogleMapApiV3↑↑-->

</head>
    <body>
        <div id="map_canvas" style="width: 560px; height: 250px;"></div>
    </body>
</html>

 

こういうコードを簡単に作ってくれるサイトやフォームがあればいいのにね。

とりあえずソーシャルネットワークに参加してますが、どれか一つに絞れません。

すべてをまめに使いこなせないので、理想は1つ投稿したら全部に投稿されて欲しいです。

いまのところ使えそうなツールをまとめてみました。

※とりあえずのメモなので、設定方法は適当に検索してみてください。

 

TwitterからFacebookに投稿

Smart Tweets for Pages(Facebookのアプリ)

 

FacebookからTwitterに投稿

Twitter(Facebookのアプリ)

 

Google+からTwitterとFacebookに投稿

dlvr.it
フィードを読みこませてTwiter、Facebook、LinkedInに投稿するウェブサービス。ちなみにGoogle+のフィードはGoogle+のフィードを取得する方法を参照してください。

 

Twitterからmixiへ(相互連携)

mixi内で設定

 

その他ツール

Google+Facebook
IE,Firefox,Chromeのブラウザ拡張機能で、Google+の画面内でFacebookのニュースフィードが見れるスグレものです。

 

 

いまのところ、Google+に投稿 → dlvr.it → Facebook → Twitter→ mixiと連動しています。

できればFacebookを最初の投稿先にしたいのですが、ツールが見当たらないのが現状です。

CTR クリック率 広告クリック数÷広告表示回数
CPC クリック単価 1 回のクリックに対して広告主が支払う金額
RPM インプレッション収益 表示回数 1,000 回あたりの見積もり収益額


※上記リンクをクリックするとGoogleのヘルプページを開きます。

いかに広告をたくさん表示して、クリックをしてもらうかを考えると

以下のサイトが参考になりました。

IEでは印刷の設定で余白やヘッダーとフッターの設定ができますが、

クロームではできないのが現状。

 

しかし、

IE tab」という拡張機能を使えばとりあえずChromeでもIEと同じように

ヘッダーとフッターを印刷しないようにできる方法はあるようです。

 

方法

  1. IE Tab」をインストール
  2. 印刷したいページをクロームで表示
  3. クローム右上の「IE Tab」のボタンを押す
  4. ページ内で右クリックする
  5. 「印刷」を選ぶ

※事前にIEの印刷設定でヘッダーとフッターの印刷をクリアしておくことが必要。

 

IE Tab」ってクローム内でIEを使うツールなのね...。

結局、一手間必要か...。

でも、ブラウザを二つ起動させなくても済むことができるので、

まぁいっか...。

Googleで検索する「島根」

  • 投稿

Googleで「島根」について検索しようとすると面白い候補が出てくるというネットの記事を見た。

っていうか秘密結社「鷹の爪」の吉田くん(←音出るよ)関連じゃないのか?

と思ったが一部だけでほとんどはネタ元が違うらしい。

ある意味町興し?

 

↓グーグルで出てくる候補の例

「島根に」の場合

「島根は」の場合

「島根の」の場合

「島根を」の場合

「島根が」の場合

「島根より」の場合

「島根だ」の場合

 

といった感じです。

う~ん、島根は独特だ。

とりあえず、島根は鳥取の左側です!Tシャツが欲しいです。

鳥取は島根の右側です!Tシャツもあるんですね。

ちなみに私のいる山口は島根の左側です

山口は広島の左側です!のほうが分かりやすいか...。

以下のURLでGoogle Chart APIで作成した円グラフをブラウザで表示させると日本語のタイトルや凡例がちゃんと表示されます。

 

http://chart.apis.google.com/chart?chs=600x300&chd=t:30,30,40&cht=p&chl=%e5%b1%b1%e5%8f%a3%e7%9c%8c%2030%25|%e6%9d%b1%e4%ba%ac%e9%83%bd%2030%25|%e3%81%9d%e3%81%ae%e4%bb%96%2040%25&chtt=%e7%9c%8c%e5%88%a5%e5%89%b2%e5%90%88

(http://chart.apis.google.com/chart?chs=600x300&chd=t:30,30,40&cht=p&chl=山口県 30%|東京都 30%|その他 40%&chtt=県別割合)

 

しかし、ファイルメーカーのWEBビューワで上記URLを指定すると文字化けしてしまいます。

(ファイルメーカー Pro 10 Windows)

 

そこで、

「WEBビューアの設定」-「Webアドレス」に

"DATA:text/html;charset=utf-8," & "<img src=" & $$url & " />"

(スクリプトで事前に変数$$urlに上記URLを入れている。)

とHTMLのIMGタグに画像のソースとしてURLを指定すると、文字化けなく正常に表示されました。

 

"DATA:text/html;charset=utf-8,"DATAスキームというやつらしい。

 

Web ビューアの設定
http://www.filemaker.co.jp/help/html/scripts_ref2.37.61.html

前回の「Google AJAX Feed APIを使ってアメーバブログの「PR:」を除くで記事一覧を表示するJavascript 」ですが、アメーバブログを更新して、最新のRSSをGoogle AJAX Feed APIで読み込んでいるのに、最新の記事一覧をスクリプトで表示することができないということが多々ありました。

 

それは、Googleのキャッシュにあるフィードを読み込んでいるからだそうです。

 

キャッシュをクリアまたはリセットする方法があるのかもしれませんが、読み込むフィードのURLにユニークな値を付加させることで、ページを開くたびに最新の記事一覧を表示することができます。

前回のスクリプトにユニークな値として現在日時をURLに付加させてみました。

 

<script type="text/javascript" src="http://www.google.com/jsapi?key=●●あなたのAPIキー●●"></script>

<script type="text/javascript">

google.load("feeds", "1");


function initialize()
{


// 現在の日付と時間を取得
var date = new Date();
var year = date.getYear();
var mon = date.getMonth() + 1;
var day = date.getDate();
var hour = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();

var query = year + mon + day + hour + min + sec;

//現在の最新RSSフィードの取得
var feed = new google.feeds.Feed("http://example.com/blog/rss20.xml?"+ query );

//取得するフィード数
feed.setNumEntries(6)

//実際に読む込む
feed.load(function(result)
{

//読み込めたか判別
if (!result.error)
{
//表示部分を選択
var container = document.getElementById("feed");

//変数の初期化
var list = "";

//Feedの処理
list = '<ul>';
for (var i = 0; i < result.feed.entries.length; i++)
{
//Feedを一つ抽出
var entry = result.feed.entries[i];
if(entry.title.match(/^PR:/)) {
//「PR:」から始まるものがあれば何もしない
}
else{
list += '<li>';
list += '<a href="' + entry.link + '" target="_blank" title="' + entry.title + '">' + entry.title + '</a>';
var strdate = createDateString(entry.publishedDate);
list += '&nbsp;(' + strdate + ')';
list += '</li>';
}
}
list += '</ul>';
container.innerHTML = list;
}
});
}

//日付の表示方法を変更
function createDateString(publishedDate)
{
var pdate = new Date(publishedDate);
var pday = pdate.getDate();
var pmonth = pdate.getMonth() + 1;
var pyear = pdate.getFullYear();
var phour = pdate.getHours();
var pminute = pdate.getMinutes();
var psecond = pdate.getSeconds();
//var strdate = pyear + "年" + pmonth + "月" + pday + "日" + phour + "時" + pminute + "分" + psecond + "秒";
var strdate = pyear + "-" + pmonth + "-" + pday ;
return strdate;
}

google.setOnLoadCallback(initialize);

</script>

<div id="feed">Loading...</div>

 

ちょっと難点なのは、ページを開く度に最新のフィードを読み込むので、表示がもたつきます。

なので、「分」のminと「秒」のsecは省いて1時間以内の表示はキャッシュを読み込むくらいにした方がいいかもしれません。

Yahoo、Google、bingのスタッフブログ

  • 投稿

Yahoo!検索 スタッフブログ
日々成長を続けるYahoo!検索。その戦略、サービスの詳細、Tipsなどを開発の現場から発信。
http://searchblog.yahoo.co.jp/
Yahoo!検索 スタッフブログ

 

Google Japan Blog
日々成長を続けるYahoo!検索。その戦略、サービスの詳細、Tipsなどを開発の現場から発信。
http://googlejapan.blogspot.com/
Google Japan Blog

 

日々是検索
検索窓からこんにちは! Microsoftの検索サービス・Bing(日本語読み:ビング)担当スタッフのブログです。タイトルと紹介文を編集する前に、[保存] をクリックして、デザインに対する変更内容を保存します。
http://searcheveryday.spaces.live.com/
日々是検索

前回のページ「」で紹介したスクリプトを一部変更してみた。

 

変更の主な内容は、

表示するリストを作成する際に、HTMLタグを変数に入れるように改造しました。(赤文字部分)

前回はXMLの要素を操作してリストを作成するようにしていましたが、

XMLの操作は苦手なのでHTMLのソースを変数に格納するようにしました。

<script src="http://www.google.com/jsapi?key=●●あなたのAPIキー●●" type="text/javascript"></script>
<script type="text/javascript">
google.load("feeds", "1");  
function initialize()
{  
 //RSSフィードの取得
 var feed = new google.feeds.Feed("●●読み込みたいフィードのURL●●");  
 
 //取得するフィード数
 feed.setNumEntries(5)  
 
 //実際に読む込む
 feed.load(function(result)
 {  
  
  //読み込めたか判別
  if (!result.error)
  {
   //表示部分を選択
   var container = document.getElementById("feed");
   
   //変数の初期化
   var list = "";
   
   //Feedの処理
    list = '<ul>';
   for (var i = 0; i < result.feed.entries.length; i++)
   {  
    //Feedを一つ抽出
    var entry = result.feed.entries[i]; 
    if(entry.title.match(/^PR:/)) {
    //「PR:」から始まるものがあれば何もしない
    }
    else{
     list += '<li>';
     list += '<a href="' + entry.link + '" target="_blank">' + entry.title + '</a>';
     var strdate = createDateString(entry.publishedDate);
     list += '(' + strdate + ')';
     list += '</li>';

    }
        }
     list += '</ul>';
     container.innerHTML = list;

     }  
   });  
}
//日付の表示方法を変更
function createDateString(publishedDate){
  var pdate = new Date(publishedDate);
  var pday = pdate.getDate();
  var pmonth = pdate.getMonth() + 1;
  var pyear = pdate.getFullYear();
  var phour = pdate.getHours();
  var pminute = pdate.getMinutes();
  var psecond = pdate.getSeconds(); 
  //var strdate = pyear + "年" + pmonth + "月" + pday + "日" + phour + "時" + pminute + "分" + psecond + "秒";
  var strdate = pyear + "-" + pmonth + "-" + pday ;
  return strdate;
}
google.setOnLoadCallback(initialize); 
</script>
<!--表示結果表示する部分-->
<hr size="1" />
<div id="feed"></div>
<hr size="1" />
<!--表示結果表示する部分--> 

 

↓↓実際にうちの社長のアメブロのフィードを読み込んで表示した例↓↓



 

前回同様に

RSSに「PR:」が含まれていなければ新着5件を表示しますが、

新着5件中1件に「PR:」が含まれていた場合は

フィード自体から削除して消すのではなく、省略というか、スキップしているだけなので

表示が4件になります。

この辺りは改善が必要ですが、また今度にします。

 

参考にしたサイト

 

2009/09/23追記

上記を更に改造↓

「安否確認」という言葉について

  • 投稿

安否確認」と言えば、

  • 一人暮らしの高齢者(独居老人)が普段通りの生活をしている

というイメージが私にはありますが、

ヤフーやグーグルで検索すると、ほとんどが

  • 災害や緊急時における無事の確認

といったことが上位でヒットします。

 

「安否確認」という言葉は「無事かどうか」を確認することで

間違いはないのですが、同じ言葉でも偏った検索結果が上位で集中すると

目的が違った場合は大変困りますね。

 

「安否確認」以外に「生存確認」も調べてみましたが、

こっちのほうがびっくりです。

GoogleやYahoo!で検索してみたところ、

オタクのページがたくさんヒットした。

 

自分では

  • 疎遠になっている人間が生物として生存
  • 希少な動物が種として生存

という感覚なのですが、

  • 注目されたい人が不特定多数の人に対して自分の存在をアピール
  • マニアックなキャラクターや商品が現行も販売されている
  • データやファイルが壊れていない
  • 昔買ったものが今も動作する

といった感じで使われています。

 

検索 = ニーズということなのかもしれませんね。

日本語は1つの言葉に対して1つの意味(1:1)ではなく

1つの言葉に対して複数の意味(1:n)を持つことが多いので

本来の意味通りの検索結果であればいいのですが、

今回のように思い違いがあると苦労しますね...。

先日、「Google AJAX Feed APIを使って外部のRSSを読み最近の記事リストを表示するJavascript」を使用してアメーバブログのRSSを読み込み、新着5件の一覧表示を行いましたが、アメーバブログ(アメブロ)のRSSは広告(PR:○○~)というのが自動的に入り、これがすごく邪魔で困っていました。

 

そこで今回はif文を加えて「PR:」から始まるフィードは無視(省く)することにしました。

スクリプト

<script src="http://www.google.com/jsapi?key=●●あなたのAPIキー●●" type="text/javascript"></script>
<script type="text/javascript">
google.load("feeds", "1");   
function initialize()
{   
 //RSSフィードの取得
 var feed = new google.feeds.Feed("●●読み込みたいフィードのURL");  
 
 //取得するフィード数
 feed.setNumEntries(5)
 
 //実際に読む込む
 feed.load(function(result) 
 {   
  
  //読み込めたか判別
  if (!result.error)
  {
   //表示部分を選択
   var container = document.getElementById("feed");
   
   //変数の初期化
   var list = "";
   
   //Feedの処理
   for (var i = 0; i < result.feed.entries.length; i++) 
   {   
    //Feedを一つ抽出
    var entry = result.feed.entries[i];
 if(entry.title.match(/^PR:/)) {
 //「PR:」から始まるものがあれば何もしない
 }
 else{
    var div = document.createElement("li");
    var a = document.createElement("a");
    var strdate = createDateString(entry.publishedDate);
    a.href = entry.link;
             var list = entry.title + " (" + strdate + ")" ;
             a.appendChild(document.createTextNode(list));
             div.appendChild(a);
             container.appendChild(div);
              }
              }
        }
      });
   }

//日付の表示方法を変更
function createDateString(publishedDate){
 var pdate = new Date(publishedDate);
 var pday = pdate.getDate();
 var pmonth = pdate.getMonth() + 1;
 var pyear = pdate.getFullYear();
 var phour = pdate.getHours();
 var pminute = pdate.getMinutes();
 var psecond = pdate.getSeconds(); 
 //var strdate = pyear + "年" + pmonth + "月" + pday + "日" + phour + "時" + pminute + "分" + psecond + "秒";
 var strdate = pyear + "-" + pmonth + "-" + pday ;
 return strdate;
}
google.setOnLoadCallback(initialize);   
  
</script>
<!--表示結果表示する部分-->
<div id="feed"></div>
<!--表示結果表示する部分-->

 

ということで、うちの社長のアメブロフィードを読み込んで「PR:」を除いた新着情報を表示してみた。

↓↓実行結果↓↓



 

ただし、RSSに「PR:」が含まれていなければ新着5件を表示しますが、

新着5件中1件に「PR:」が含まれていた場合、フィード自体から削除して消すのではなく、省略というか、スキップしているだけなので、表示が4件になってしまいます。

それを補うスクリプトは今度チャレンジします。

 

2009/09/23追記

上記を更に改造↓

Google AJAX Feed APIで最新の記事一覧を表示する。 http://hoshiya.biz/2009/09/google-ajax-feed-api-1.html  

フィード(RSS2.0)を読み込むスクリプト

<script src="http://www.google.com/jsapi?key=●●あなたのAPIキー●●" type="text/javascript"></script>
<script type="text/javascript">
google.load("feeds", "1");  
function initialize()
{  
 //RSSフィードの取得
 var feed = new google.feeds.Feed("●●読み込みたいRSS2.0のURL●●");   
 
 //取得するフィード数
 feed.setNumEntries(5)  
 
 //実際に読む込む
 feed.load(function(result)
 {  
  
  //読み込めたか判別
  if (!result.error)
  {
   //表示部分を選択
   var container = document.getElementById("feed");
   
   //変数の初期化
   var list = "";
   
   //Feedの処理
   for (var i = 0; i < result.feed.entries.length; i++)
   {  
    //Feedを一つ抽出
    var entry = result.feed.entries[i];  
    var div = document.createElement("li");  
    var a = document.createElement("a");
    var strdate = createDateString(entry.publishedDate);
    a.href = entry.link;  
          var list = entry.title + " (" + strdate + ")" ;  
          a.appendChild(document.createTextNode(list));  
          div.appendChild(a);  
          container.appendChild(div);  
        }  
     }  
   });  
}

//日付の表示方法を変更
function createDateString(publishedDate)
{
 var pdate = new Date(publishedDate);
 var pday = pdate.getDate();
 var pmonth = pdate.getMonth() + 1;
 var pyear = pdate.getFullYear();
 var phour = pdate.getHours();
 var pminute = pdate.getMinutes();
 var psecond = pdate.getSeconds(); 
 //var strdate = pyear + "年" + pmonth + "月" + pday + "日" + phour + "時" + pminute + "分" + psecond + "秒";
 var strdate = pyear + "-" + pmonth + "-" + pday ;
 return strdate;
}

google.setOnLoadCallback(initialize);  

 

</script>
<!--表示結果表示する部分-->
<div id="feed"></div>
<!--表示結果表示する部分--> 

 

 

ということで、うちの社長ブログのフィードを読んでみた。

↓↓結果↓↓

 

 

2009/06/30追記

アメーバブログ(アメブロ)等のフィードでPRなどが入ってしまい、

省略して表示をさせたい場合は「Google AJAX Feed APIを使ってアメーバブログの「PR:」を除く記事一覧を表示するJavascript」をご参照ください。

 

2009/09/23追記

上記を更に改造↓

Google AJAX Feed APIで最新の記事一覧を表示する。
http://hoshiya.biz/2009/09/google-ajax-feed-api-1.html 

Googleブログ検索でこのサイトhttp://hoshiya.bizを検索。

 

↓実際に検索↓
http://blogsearch.google.co.jp/blogsearch?hl=ja&ie=UTF-8&q=hoshiya.biz&lr=lang_ja

 

↓その検索結果のXML↓
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&q=link:hoshiya.biz&lr=lang_ja&ie=utf-8&num=10&output=rss

 

そして、そのXMLを読み込みリストとして表示するスクリプト。

残念ながら現時点では被リンクが少なすぎて1件しかない...。

 

↓実行結果↓


loading

 

 

スクリプト

<script type="text/javascript" src="http://www.google.com/jsapi?key=●●あなたのAPIキー●●"></script>

<script type="text/javascript">
    google.load("feeds", "1"); function initialize() {
    var url = "●●検索対象のURL●●";
    var num = 100;
    // Get Linkbacks from Google Blog Search
    var feed = new google.feeds.Feed("http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&q=link%3A"+encodeURIComponent(url)+"&output=rss&num="+num+"&lr=lang_ja&ie=utf-8");
 feed.setNumEntries(num);
    feed.setResultFormat(google.feeds.Feed.XML_FORMAT);
    feed.load(function(result) {
        if (!result.error) {
            var items = result.xmlDocument.getElementsByTagName('item');
            var item  = null;
            var entry = null;
            var html  = '<ul id="linkback_list">\n';
            for (var i = 0; i < items.length; i++) {
                entry = [];
                // make simple array from item nodes
                // You can access values like "entry['key']"
                for ( var j=0; j<items[i].childNodes.length; j++ ) {
                    item = items[i].childNodes[j];
                    entry[item.nodeName] = (item.textContent)?item.textContent:item.text;
                }
                html += '<li class="linkback_entries">';
                html += '<a class="linkback_links" href="'+entry['link']+'" rel>'+entry['title']+'</a>';
                html += '<span class="linkback_blogs">('+entry['dc:publisher']+')</sapn>';
                html += '<span class="linkback_dates">'+entry['dc:date'].substring(0,10)+'</sapn>';
                html += '</li>\n';
            }
            html += '</ul>\n';
            document.getElementById("linkbacks").innerHTML = html;
        }
    });
}
google.setOnLoadCallback(initialize);
    </script>
<!--結果を表示する部分-->
<hr size="1" />
<div id="linkbacks">loading</div>
<hr size="1" />
<!--結果を表示する部分-->

 

参考にしたページ

Trackbackをやめて、Google AJAX Feed APIを使って被リンクを表示
http://creazy.net/2009/02/stop_tb_and_start_linkbacks_by_google_ajax_feed_api.html
Trackbackをやめて、Google AJAX Feed APIを使って被リンクを表示

不動産会社に勤務している訳ですが、

中古住宅やマンション、売り土地の販売に

Google Mapsが使用できないかなと調べていますが、出来そうにない。

 

地図はGoogle Maps APIを利用すればできる訳ですが、

規約に違反しそうな感じです。

 

・地図に誰でもアクセスできること

・地図そのものを無償で提供すること

と、あるページを見ました。

あるページ↓

Googleヘルプグループ
http://groups.google.co.jp/group/Google-Maps-JP-For-Business-Owners/browse_thread/thread/1a3cac9a78bb6713

 

そもそも、イントラネットなので、誰でも地図にアクセスできない。

この時点でアウト。

 

なぜ、イントラネットで利用したいか?ですが、

他社物件等を無断で公開出来ないなからです。

商談での社内利用で有れば問題ないので、

イントラネットで地図の利用ができればな~と思った訳なんです。

 

お金を払っても使用できないの?

と思い探したところ。ありました。

『Google Maps API Premier』日本でも提供開始、イントラネット内利用も | ネット | マイコミジャーナル
http://journal.mycom.co.jp/news/2009/05/18/018/index.html

 

きっと高いんだろうな~

 

Google Maps API Premier
http://www.google.co.jp/intl/ja/enterprise/maps/index.html

 

yahoo!地図もイントラネット利用はできないようです。

Yahoo!デベロッパーネットワーク - 地図
地図Web APIの利用方法
http://developer.yahoo.co.jp/webapi/map/

いろいろSEOの対策を講じてきましたが、

家具家電レンタルの「借りたいくん」のホームページ

http://karitaikun.com

が、ヤフーの検索「家電レンタル」で1位になりました。

  

sc0000.png

 

一時的なことではありますが、

インターネット広告などのサービスを利用せずに

ビッグキーワードである「家電レンタル」で1位になったことは非常にうれしい。

 

ヤフージャパンで「家電レンタル」を検索した結果

http://search.yahoo.co.jp/search?ei=EUC-JP&fr=yjdnqp&p=%B2%C8%C5%C5%A5%EC%A5%F3%A5%BF%A5%EB

 

ちなみにグーグルでは2位。

もう満足です。

ごちそうさまです。

Google Chart API で QRコードを作成

  • 投稿

 

http://chart.apis.google.com/chart?cht=qr&choe=UTF8&chld=l|0&chs=140x140&chl=http://karitaikun.com

のように chl の後ろに指定した文字列をQRコードにしてくれる優れものです。

 

ちなみに上記のURL(http://karitaikun.com)のQRコードを表示すると

となる。

 

使い方を簡単に説明すると、

 

http://chart.apis.google.com/chart?

 

の後ろにいろいろパラメータを入れていきます。

 

Google Chart API での使用したいチャートの種類を指定(必須)

例:cht=qr

今回はQRコードでしようするため「qr」を指定していますが、

その他グラフや地図などのチャートを指定できるようです。

 

出力する文字エンコードを指定(省略可)

例:choe=UTF8

書式:chl=<text to encode>

値:UTF-8、Shift_Jis 他

省略したときはUTF-8がデフォルト

 

表示するQRコードのEC(回復)レベルとマージン(余白)の指定(省略可)

例:chld=l|0 または chld=l%7C0

書式:chld=<ec level>|<margin>

<ec level>の値: l,m,q,h (回復できるレベル L=7%,M=15%,Q=25%,H=30%)

<margin>の値:任意の数字を入れる。

 

出力するQRコードのサイズを指定(必須)

例:chs=140x140

値:適当

 

QRコード化したい文字列やURL(必須)

例:chl=http://karitaikun.com

 

詳細については英語のページですが、

http://code.google.com/apis/chart/types.html#qrcodes

をご参照ください。

 

携帯電話でQRコードを読み込ませると文字化けしてうまく認識されない場合や、

ブラウザにURLを送信してもページが表示できずエラーになる場合は

URLエンコードされたURL内の文字列の中にある「%」を「%25」に置き換えることで回避できます。

例:

「星屋」をURLエンコードすると

「%e6%98%9f%e5%b1%8b」

となるので

http://chart.apis.google.com/chart?cht=qr&choe=UTF8&chld=l|0&chs=140x140&chl=%e6%98%9f%e5%b1%8b

とするところですが、携帯電話で読み取ると文字化けしてしまいますが、

「%」を「%25」に置き換えて

http://chart.apis.google.com/chart?cht=qr&choe=UTF8&chld=l|0&chs=140x140&chl=%25e6%2598%259f%25e5%25b1%258b

とします。

これを携帯電話で読み込むと「%e6%98%9f%e5%b1%8b」と認識されます。

 

ファイルメーカーをご利用の方で、

QRコードを表示するURLをブラウザに送る場合は

Substitute ( GetAsURLEncoded (URL) ; "%" ; "%25" )

でURLエンコードされたURLフィールド内の「%」を「%25」に置き換えるとうまくいきます。