ExifToolGUIと同様にExiftoolをGUIで使えるようにしたツールが開発中です。違いはPhoto sphereに対応した機能を持つことです。※Exiftoolは別途インストールが必要。
最新版のVer 0.5を使ってみましたが、まだ日本語タイトルには未対応みたい。使用者がまだ少ないのでノートンの警告が出ました。取りあえず情報入手先のリンクをメモ。※順不同
ExifToolGUIと同様にExiftoolをGUIで使えるようにしたツールが開発中です。違いはPhoto sphereに対応した機能を持つことです。※Exiftoolは別途インストールが必要。
最新版のVer 0.5を使ってみましたが、まだ日本語タイトルには未対応みたい。使用者がまだ少ないのでノートンの警告が出ました。取りあえず情報入手先のリンクをメモ。※順不同
糸島半島と大机島間に沈む太陽です。データだとあと3分で沈んでしまう。太陽の下縁が少しだけ伸びてるかな?
福岡市内(志賀島)でも、水平線に沈む太陽を見れるんですね。運が悪いと船に邪魔されるかも?
ふと気づくと鳥さんが餌を探してました。もう少し左に移動してくれるといいのにな。
※写真の上にマウスポインターを置くと、写真のタイトルが表示され、クリックするとPanoramioサイトで写真と地図が表示されます。
Mapタブをクリックすると撮影地の地図を表示します。
(Panoramio Widget API とGoogle Maps APIを使用しています)先日、PanoramioのグループTokyo(東京)で、グループ写真が閲覧不能になっていました。少し調べてみると、グループホームページのサムネイルデータが異常になると閲覧不能になる事が分かりました。12枚のサムネイルの内の写真も1枚ずつ読み出せば表示可能なものもあります。
この調査のために、Widget APIを使用してグループ写真を表示するプログラム(ckh4gp)を作成しました。クエリオプションで下記の機能を指定出来ます。
オプション省略時は「?group=11915&pos=0&user=0&mode=photo」で動作します。これを使用することで、正常なユーザーは分かりますが、あとは消去法しか手がありません。Otulaさんが作成したTool to find amount of photos per User in a Groupを使えばユーザー毎のリストが入手可能です。このリストを使って調べてみました。
今回は割りと小規模のグループだったので、ユーザーを特定して連絡の上で一旦メンバーを削除、閲覧可能を確認、再度メンバー登録、再度写真を登録を行う事が出来ました。ディスカッションを読んでいると、時々生じているグループ機能のバグに当たってしまったようです。これまではPanoramioに連絡して、グループのデータベースをメンテして貰うしか手が無かったけど、写真が特定出来ればグループユーザーサイドでも、対処可能なことが分かりました。出番が無い方が良いツールですが、GAEで公開しておきます。(ckh4gp)
Googleマップは便利なのですが、FAXで送る時などには詳しすぎます。そこで何か簡易な地図を作るソフトは無いかなと捜してみたら、オンラインで作れる「地図作成ソフト」がありました。ちょっとした略地図が必要な時に便利なサイトですよ!
←こんな地図がオンラインで作成できます。20×20の升目が設定されていて、その2点を結ぶようにして道路、線路、川などを書いていきます。曲線は引けませんが、略地図には十分です。
作成した地図はデータファイルとして書き出しが出来て、後日読み込みも可能です。
※普段FAXを使わないので持っていません。送る必要が生じると、古いモデム入りパソコンを持ってきて・・・
面倒だな!
WLWでブログの古い記事を再編集する際に使うと便利なプラグインです。
参照先:How to edit old postings with the WLW
WLWで古い記事を再編集するには下書きや最近登録した記事を開かなければなりません。wlwでは過去50個の記事は割りと簡単に開けるけど、それよりも古いと面倒なのです。そこで使うと便利なプラグインがこれです。修正したい記事をブラウザで開き、ロケーションバーの「http://www.・・・・」の部分を「wlw://www.・・・」と書き換えてやると、その記事をwlwに取り込むことが出来るんです。
手動でも書き換えは出来るのですが、面倒なので下記の様なブックマークレットをブックマークに登録しておくと更に便利に使えます。修正したい記事をブラウザで開いておいて、下記のブックマークを呼び出すだけです。FirefoxとChromeで動作確認しています。※「プログラムを起動」や「外部プロトコルリクエスト」が表示されますが、「ok」なり、「今後は同様に処理する」なりにチェックすればいいです。
javascript:(function(){url=location.href;window.open(url.replace('http','wlw'));})();p.s.(2012/03/28)
blogspot.comからblogspot.jpへリダイレクトするようになったので、jpをcomに書き換えないと動作しなくなりました。bookmarkletで同時に書き換えれば動作します。
p.s.良く忘れてるのでメモ
wlw本体をアップデートすると、プラグインが使えなくなるので、再インストールしてください。下記の画面でリペアを行えば良いです。WLWDownloader
去年の8月に作成したので、すっかり忘れてます。本体のアプリをGoogle App Engineに移したので、ガジェットもリンク先を変更しました。どこのファイルを変えるのかが、思い出せなかったのでファイルの構成を記します。このアプリはPanoramioのグループ写真をスライドショーで見せるツールをガジェット化したものです。ツール本体は今年Google App Engineに移動させました。※justmystageのファイルは未だ残してありますが、現時点では来年の3月で契約終了予定です。
★最初はgadget.xml
1: <?xml version="1.0" encoding="utf-8" ?>
2: <gadget>
3: <name>PGP_slideshow</name>
4: <namespace>PGP_slideshow.gadgets</namespace>
5: <version>1.0.0.3</version>
6: <author name="junk0128">
7: <info url="http://junk0128-tools.appspot.com/pgp_slideshow/readme.html" />
8: <logo src="1597930.jpg" />
9: </author>
10: <copyright>©2011</copyright>
11: <description>This is a program that displays the Panoramio group photos. </description>
12: <icons>
13: <icon height="48" width="48" src="camera.png" />
14: </icons>
15: <hosts>
16: <host name="sidebar">
17: <base type="HTML" apiVersion="1.0.0" src="index.html" />
18: <permissions>full</permissions>
19: <platform minPlatformVersion="1.0" />
20: </host>
21: </hosts>
22: </gadget>
3~11行目はガジェットウインドウでアイコンを選択し、「詳細表示を表示する」クリックで表示されます。13行目はガジェットウインドウでのアイコンです。今回の様にリンク先が変わる時は7行目の修正が必要です。
★index.html 今回は修正不要
★settings.html 今回は修正不要
★settings.js 今回は修正不要
★index.js
1: /************************************************************************* 2: * 3: * Panoramio Group Photos 4: * 5: ************************************************************************/ 6: var groupId = ""; 7: var defaultId = 6209; 8: var delay = 10; // default time [Sec] 9: 10: // Enable the gadget settings functionality. 11: System.Gadget.settingsUI = "settings.html"; 12: // Delegate for when the Settings dialog is closed. 13: System.Gadget.onSettingsClosed = SettingsClosed; 14: // Delegate for when the Settings dialog is instantiated. 15: System.Gadget.onShowSettings = SettingsShow; 16: 17: // -------------------------------------------------------------------- 18: // Initialize the gadget. 19: window.onload = function(){ 20: groupId = System.Gadget.Settings.readString("groupId"); 21: if (String(groupId) == "") { 22: groupId = defaultId; 23: } 24: insertFrame(groupId); 25: } 26: // -------------------------------------------------------------------- 27: function insertFrame(id){28: var str = '<iframe src="http://junk0128-tools.appspot.com/pgp_slideshow/index.html';
29: str += '?group=' + id;30: str += '&auto=ON&width=300&height=244&deley=' + delay + '" ';
31: str += 'frameborder="0" width="300" height="250" scrolling="no" marginwidth="0" marginheight="0">';
32: pgp_slideshow.innerHTML = str; 33: } 34: // -------------------------------------------------------------------- 35: function SetContentText(){ } 36: // -------------------------------------------------------------------- 37: // Set the text of the gadget based on the user input; 38: // execute this function at startup and after settings changes. 39: // txtGadget = control for displaying user input. 40: function _SetContentText(strFeedback){ } 41: // -------------------------------------------------------------------- 42: // Handle the Settings dialog closed event. 43: // event = System.Gadget.Settings.ClosingEvent argument. 44: function SettingsClosed(event){ 45: // User hit OK on the settings page. 46: if (event.closeAction == event.Action.commit) { 47: groupId = System.Gadget.Settings.readString("groupId"); 48: if (groupId == "") { 49: groupId = defaultId; 50: } 51: insertFrame(groupId); 52: } 53: // User hit Cancel on the settings page. 54: else if (event.closeAction == event.Action.cancel){ 55: insertFrame(groupId); 56: } 57: } 58: // -------------------------------------------------------------------- 59: // Handle the Settings dialog show event. 60: function SettingsShow(){ 61: // SetContentText("Settings opening."); 62: }28行目のリンク先を変更
var str = '<iframe src="http://junk0128-tools.appspot.com/pgp_slideshow/index.html';
7行目は初期設定のグループ番号を変更するときに変更が必要
var defaultId = 6209;
同様なアプリとして、ユーザー指定のスライドショーとPGPCコンテスト入賞作品のスライドショーがあります。これらはすべて、junk0128-toolsにあります。但しガジェット化のファイルは置いていません。必要な方はPanoramioのPMで連絡をお願いします。但しWindows 7 Pro(64bit)以外での動作確認はしていません。
このガジェットは2012/01/28のMy desktopの動画で見ることが出来ます。
pgp4はpgpの右側に地図を表示したものです。今回はこの地図の部分の元となったmpp2blogの紹介です。これを先に作っていたので、pgp4では普通のGoogle Maps API V3ではなく、Panoramio Layerを使って表示しています。利点は近くに同じユーザーの写真があれば、サムネイルをクリックして、その写真を見ることが可能です。Google App Engineに移設した時に少しだけ書き換えたのですが、ふと気が付いたらIEで表示しなくなっていたので、バージョンダウンしてから他のアプリに合わせて書き換えました。地図の下に著作権表示を記し、その右側に「Help」ボタンを設けて簡単な説明を表示するように変更です。IE8だけの症状ですが、「Help」ボタンをクリックした時に右側と下側にゴミのラインが出てしまいます。私のPCのグラフィックボードだけかも?
Panoramioの古いユーザーならMini-Panoramioを知っていると思いますが、それと同じように使えます。現在のPanoramio マップはユーザー指定が出来ません。地図上のサムネイルをクリックしてポップアップする写真の下部に著作権表示は付いているので、地図の下部の著作権表示は必要かどうかは不明です。Panoramio Layerの説明のところには何も書いて有りません。Panoramioに質問メールをだいぶ前に書いたのですが返事は有りませんでした。念のためということで、今回のバージョンでは下記のスタイルにしました。
user=1597930
lt=33.308492
ln=130.937593
z=10 ズーム値
k=3 地図の種別
width=400
height=300
user指定の代わりにtag指定も可能
※両方同時は不可
※(The Panoramio Layer (Library) を使用しています)
前回はPGPでしたが、今回はPGP3です。違いはPGPがユーザー指定に対して、PGP3はエリア指定です。エリアを指定して、その中にあるグループ写真を表示することが可能です。これを使えば大規模なグループでも、見るエリアを指定することにより写真を探しやすくなります。
← グループ「Square shots」です。
このグループには参加していないけど、スクエアサイズの表示例として紹介します。
写真のサイズを400x400ピクセルとして真四角に表示するように設定
エリアを日本本土(アバウトです。一部隣国が含まれているかもしれません)と指定しています。
Panoramio Widget APIを使用してます。
p.s.(2012/01/23)
挿入するリンクを間違えていたので修正しました
正月バージョンで「Map」ボタンを設けて地図を表示可能にしたのですが、この時はボタンの位置を絶対的座標で無理やり合わせていました。今回、位置合わせ方法の修正を行いリサイズ可能に変更しました。
余談ですが、これらのツールでグループ写真を見ていると「外部 Widget API の閲覧数」が増加します。ある程度増えると「この写真へのリンク」に載るようです。下記のようなアドレスが載った時は、これらのビューアーで誰かが見ていたということです。偶々、リストの最初に長期間在ると表示の機会が増えます。この為、グループ「日本の写真(Photos of Japan)」の最新の写真は、目立ちやすくなってます。
Panoramioのフォーラム Q&Aにユーザーが作成したツールの紹介記事が載っています。サーバーを変更した1月7日付で旧アドレスの記事が載ったので、変更した旨を連絡し、1月10日付けで新アドレスに差し替えて貰いました。新フォーラムに変わって読んでいる人が少ないみたいだし、継続的に使っている人はブックマークに入れているだろうから、アドレス変更の周知徹底は難しいだろうな。
写真にMetadataを追加するためにPro photo Toolsを使っていますが、一部オンラインの機能が打ち切られたみたいです。GPS DataからLocation,City,State/Region.Countryの各データを埋めてくれる機能が使えなくなりました。同様の機能はViewNx 2にもあるので、そちらを使うようにするか、以前の様に手動で書き込むかのどちらかになります。同じ場所の写真をまとめてタグ付けすることが多いので、たぶんPro photo Toolsの方が使いやすいです。ViewNxでは日本語の住所データを抽出可能でが、Countryなどに自動で入力は出来ないので、手動でのコピー&ペーストになります。
最近はCasioのEX-H20Gで撮影した写真のGPSデータを、EOS-5Dの写真にコピーすることが多いです。同じ場所で撮影しておくと、カメラの向きも記録されるので便利ですよ。GPSデータの変更やコピーはViewNx 2がやりやすいです。
Get location text
Pro Photo Tools Error
GPS to Location: Could not establish a network connection to Windows Live Local:
ExifToolGUIとGeoSetterもあるけど、使いやすいツールをまた捜してみないといけないようです。
p.s. Windows 7でPPTを使う時の注意点 (Description, タイトル, 件名)
http://answers.microsoft.com/ja-jp/windows/forum/windows_7-pictures/windows-7/9de248a3-d6f8-476a-b96f-4f88db4f4301
p.s.[2012/07/04]
このページが「教えて!goo」に紹介されてますね。
JazzCorpさんへ、あなたの文章(3行)に対して、引用が多いと思いませんか? 質問者は、ダウンロード先を聞いているんだから、ダウンロードのリンク先だけで良いのでは? その点でNo.1の方がベストアンサーです!
そこに今も有効なProPhotoTools2のダウンロード先が2箇所書いて有ったので引用しておきます。
※「microsoft pro photo tools 2 ダウンロード」これを検索して、期間を1ヶ月か1年で再検索
質問者がやりたいタグの編集とは何なのか判りませんが、ExifToolGUI for WindowsやGeoSetterもありますよ。後はご自身でリンク先を見てください。
タブ風メニュを追加して、マップを表示できるようにしてみました。マップはロードマップなど4種類対応、ズームも事前に設定可能です。ペグマンを使ってストリートビューも見れます。
写真は先日汐留で開催されたCREATOR DAYの会場です。
※写真の上にマウスポインターを置くと、写真のタイトルが表示され、クリックするとPanoramioサイトで写真と地図が表示されます。
(Panoramio Widget API を使用しています)
Iframeで使うことを前提とした、Widget APIのプログラムを書く時はターゲット指定を忘れないように!
タイトルのリンクには”_top”のターゲット指定があるのに、画像部分のリンクにはターゲット指定が無い。この為にiframe内の画像部分をクリックするとフレーム内にリンク先が表示されてしまうと言う現象がありました。HTMLテンプレートは以前にフォーラムの書き込みがあって、変更がされています。そこで、Javascript版も同じように変更出来ないかなと、Panoramio宛に駄目もとでメールを送ってみました。すると、意外に早く担当者からメールが来ました。メールにはホスト側での対策は現状難しいので、ローカル側で出来そうなことを教えてくれました。
中身が少々難しくて、すぐに出来そうに無いことは飛ばして、最後の”windows.location”でターゲット指定を調べていると、上手くQ&Aで答えを発見。しかし、最後の方まで読んでみると、別の解決策が見つかりました。それはデフォルトのターゲット指定をすると言うことです。htmlだけで解決するみたい。
<base target=”_top” />
XHTML 1.0ならば、これで大丈夫みたいです。firefox,IE8,IE9,Chromeで確認してます。
floatで段組みを作っている時に、何気なくワイド画面で見てみると、一つのブロックが右に、はみ出ていることに気が付いた。全部left指定したはずなのに??? “left”のスペルミスも無いし???
「スタイルシート上級レイアウト」を眺めていたら、コラムにヒントがありました。
Mac Internet Explorer 5と言った一部のブラウザは、幅を明示しないとうまく回り込みが反映しない時があるらしい。
Firefox6とChromeで確認していたので、関係がないかと思ったけが、確かに先ほど幅を可変にした時にwidthを消していました。せっかくサイズ変更に対応させたのにやり直しかと思ったけど、widthを100%と指定すれば直りました。
最近はワイド画面の人が多いので、動作確認もちゃんとワイド画面でやっとかないとダメですね。過去に書いたコードにも気が付かなかっただけで、ありそうだな。
Panoramioのグループ写真を表示するプログラムで、大事な著作権表示の部分が、はみ出たんです。気づいてよかった!
Firefox5にバージョンアップしてしばらく経ち、アドオンの入れ替えなどを行ったので、その備忘録です。
この状態でしばらく使っていましたが、朝日新聞の記事を見て、「Firefoxボタン」って何だろう? もしかしてWindows7とXpでは違うのかなと調べてみました。XpではFirefox4にバージョンアップしても「Firefoxボタン」は表示されず、メニューバーを消すと現れることが分かった。つまりFirefox4の時から気付いてなかったんだ。
この記事は1280×1024の画面で書いてますが、最近ノートパソコンのワイド画面だと行数が少なくて、ツールバー部分のスペースが勿体無い。このためGoogle Toolbarのサポートも無くなったみたいです。じゃー時代の流れに乗ってGoogle Toolbarを捨てるためにはと検索してみると、SearchBox SyncとSearchWPをお勧めしている記事が数件ヒットしました。早速導入してみると使い勝手が良いので入れ替えました。残るは翻訳だけど、これはいっぱいありすぎて迷ったが、今回はQuick Translatorを選択しました。
他のPCとツールバーのアイコン状態が違うので、ツールバーのカスタマイズをやっていて、はまったのがブックマークのアイコンです。プルダウン用の下三角マークがあるのと、無いアイコンがあって違いに気付きませんでした。メニューバーを表示させた状態では下三角マークのあるブックマークアイコンを配置してもカスタマイズを完了させると消えてしまうのです。下記の記事で解決。
MozillaZine.jp :: トピックを表示 - ツールバーにブックマークのアイコンが表示されない
次に不便に感じたのはメニューバーの「表示 – スタイルシート - スタイルシートを使用しない」を使うのにメニューバーを表示させる以外の方法が見つからないのです。これは下記で「ALT」を押せば一時的にメニューバーが表示されることが分かりました。
メニューバーが表示されない | トラブルシューティング | Firefox ヘルプ
最後に画面一番上のタイトルバーが無表示で「タイトルバー」ではなくなっているのが不便でしょうがない。タブに表示されるタイトルでは短すぎて分からないのです。Panoramio Forumのタイトルも分からないので、下記のアドオンを導入。
Titlebar Text :: Add-ons for Firefox
またアドオンをいくつか入れてしまったので、それらに縛られてFirefoxから離れられない状態になってます。ここで、ふと素朴な疑問が出ました。画面を広くするだけなら、「F11」の全画面表示の方が手っ取り早い!
Firefox依存を避けるために、ノートパソコンではIE9とChromeしか入れてません。(いつまで持つかな???)
Widget APIを使ってスライドショーを作成してみた。仕様は次へ・戻る・止まるの3ボタンを設けて、どっち方向にでもボタンを押せば、自動で進むこととした。
何か模擬的にボタンを押すやりかたが有ったよなと、検索してたらfireEventが見つかった。前に使ったのと違うけどと思いつつ使ってみると、ちゃんと機能するので書き換えて確認。IE9で確認、OK。でも他は駄目。
過去のソースファイルをいくつか捜していたら、document.form1.next.click()が見つかった。次にタイマーはsetIntervalを使って書いてるとどうも処理が書きにくい。もう一つのsetTimeoutを使ったほうが書き易そう。
書き換えながら、再帰的に関数を呼ぼうとしたら、無名関数なので呼べない。あれ、さっきと同じなので、これは前記の方法で解決。
動作確認をしてみると、ボタンの排他処理をしていないので、次ボタンを押して停止せずに戻るボタンを押すと、写真が左右に行ったり来たりします。排他処理でボタンの禁止と解除を追加していたら、禁止中はclick()も使用出来ないし、処理が面倒になってきた。仕様追加、「必ず停止ボタンを押してから次の操作を行うこと」
setTimeoutの説明を見直ししていると、arguments.calleeが書いてありました。へぇーこんなのがあるんだ!早速書き換えてみたが何故か動かない??? よーーく、見比べてみたら、エルが1つ抜けたスペルミスでした。もう、目が疲れたので、ボタンの排他処理は保留です。最後に、下記サイトでチェックして数箇所を修正。
Panoramioの日本語フォーラムに書いたら、くろふねさんから『スライドショーを開始するオプションとボタンを非表示にするオプションがあったらいいな』とのご意見を頂きました。操作ボタンを非表示にすると停止も何も出来なくなると思いつつ、少し調べたらボタンも簡単に消すことが出来ることがわかったので、下記の様に実装しました。
“&auto=on” を追加すると自動スタートします。
“&auto=ON” を追加すると自動スタートし、操作ボタン部分を非表示にします。
それと、くろふねさんからガジェットにする方法を教えて貰ったので、自分でもやってみました。こんな使い方は思っても居なかったのですが、いい感じに表示されるのでデスクトップの右端に置くことにしました。
時々Panoramioサーバーからの返事が遅くなることがあるので、ちょっともたつく事があります。タイマーカウント終了後に次のデータを要求するのではなく、一回分データをバッファに持って、カウント中に次のデータを要求するようにした方が表示がスムーズになりそうです。たぶん、もう弄らないけど・・・
多くの写真をアップロードされているヘビーユーザーにリミットを設けました。
理由はAPIのカウンター値が5000を超えていると、APIを使って読み出せるデータ数に制限が掛かっているようです。この制限値がいくつなのか不明ですが、数名のユーザーのデータを見た限りでは4500辺りだと思われます。以前はこんな制限は無かったはずです。暫定的な処置なのか、恒久的な仕様なのか不明ですが、Panoramio API頼りのプログラムなので、自前で出来る範囲で対策してみました。
Panoramio Data APIでcountを得て、乱数を掛けて、Javascript APIで表示するようにしてみました。
”?user=1597930”←この様にユーザー指定が可能です。
※countの値が時々不正確なので、表示が出来ない時があると思います。
Firefoxをバージョンアップしました。ついこの前4.0にしたはずだけど・・・
今度は安定してるのかな?
使っていたアドオンのうちGoogle Toolbarが使えなくなりましたが、使えるようにするアドオンを入れて使用可能にしています。以前はどこかのファイルを書き換えてインストールしたような覚えがあるけど、今は便利なアドオンがありました。
窓の杜 - 【REVIEW】“非対応”な拡張を「Firefox」へ導入可能に「Add-on Compatibility Reporter」