ラベル Wheel World Clock の投稿を表示しています。 すべての投稿を表示
ラベル Wheel World Clock の投稿を表示しています。 すべての投稿を表示

2017年11月14日火曜日

Wheel World Clock updates for Win10 Fall Creators Update

世界時計アプリ Wheel World Clock を Windows 10 Fall Creators Update(以下FCU) に合わせて更新しました。
Wheel World Clock は以下のシステムでお使い頂けます。今回はWin10 FCU用のみの更新です。


  • Windows 8.1
  • Windows Phone 8.1
  • Windows 10 PC, Mobile, HoloLens, etc
  • Android 5.0 以上



Wheel World Clock for Windows
http://apps.microsoft.com/windows/app/wheel-world-clock/1e591002-4ffa-4d49-b8e7-4d82f1211d16

Wheel World Clock for Android
https://play.google.com/store/apps/details?id=com.ddlg.wwcd


コマンドライン起動のサポート / Support Command-Line Activation


コマンドライン・又は「名前を指定して実行(Win+R)」で「WWC」<Enter>で起動します。


実はAcrylicも有効なのですが透明度が低いので
言われてもよくわからない



2017年5月13日土曜日

Wheel World Clock Android 版を公開しました

世界時計アプリ Wheel World Clock を Google Play で公開しました。Android 5.0 以降でお使い頂けます。無料です。

Wheel World Clock
https://play.google.com/store/apps/details?id=com.ddlg.wwcd


      


Google Play で手に入れよう

  • 世界時計です。文字盤は指でくるくると回すことができ、「ここの何時があそこの何時か」がすぐにわかります。
  • 表示するタイムゾーンは変更可能です。また、海外に移動してタイムゾーンが変更された場合、自動的にWheel World Clock にも新しいタイムゾーンが追加されます。
  • 夏時間に対応しています。



📱📱📱


元のWheel World Clock は、
リリースしたものです。


Microsoft からダウンロード


この世界時計アプリという題材、ある程度小規模であり、設定やデータの読み書き、アニメーション、グラフィックス等使用頻度の高い要素が適度に含まれているため、新しいプラットフォームで一度アプリを通して作ってみるのに丁度良く、今回は Xamarin.Android 学習用に作ってみたという所です。

小ネタアプリではありますが、この…「くるくる回せばここの何時があそこの何時かすぐわかる」形式は競合が少ないです(*1)。そのせいか、Windows用に出して2年、細く長く広告除去アイテムが売れ続けているという自分にとっては元の良いアプリでもあります。Android でも使ってもらえるとイーナー。


*1 スライドバーで変更できるタイプはいくつかあります。

Google Play and the Google Play logo are trademarks of Google Inc.


2015年8月12日水曜日

WinRT とタイムゾーン・夏時間の話

2018年4月追記…なななんと北朝鮮がタイムゾーンもとに戻すらしいですね。
今回もおそらくMS先生はWindows Updateで対応するのではと思います。
ちなみに前回の変更お知らせはこちら
https://blogs.technet.microsoft.com/dst2007/2015/10/09/upcoming-windows-dst-update-for-turkey-democratic-peoples-republic-of-korea-and-fiji/




先日、北朝鮮が2015年8月15日を以て時制を現在のUTC+9から30分遅らせるよというニュースがありました。UTC+8:30になると。意図はさておき、とにかく一国の採用するタイムゾーンが変わる事になります。

で、この手の話はそれほど珍しい事ではなく、年に数回はどこかの国や地域でタイムゾーン・夏時間の変更が行われています。Windows の場合、その都度Windows Updateで対応するタイムゾーン・夏時間の情報が配信されます。


Windows のタイムゾーン・夏時間更新は、Technetのblogで通知されます。
普通に使っていればWindowsUpdateで自然と更新される感じです。
右のArchiveを見ると分かるように、結構頻繁に更新されます。


アプリ側は、上品に…自分の中にタイムゾーン情報等を持たず、OSのサービスから情報を取るようにしていれば、OSの更新に合わせて自動的に新しい情報を使えるようになるという仕組みです。

Wheel World Clock のタイムゾーン設定UI
これらのタイムゾーン(時間と名前)はアプリ内部で持っている訳ではなく、
OSの持っている情報を右から左に表示しているだけです。
北朝鮮用のタイムゾーン情報が配信されれば、ここにその旨が追加される…はず。


ただ、WinRT 上でタイムゾーン・夏時間の列挙・変換を行うには注意が必要です。

…この言い回しで、賢明なる読者様ならばあーはいはい大体わかったWinRT だからねだからなのね?とお分かりでしょう。はいそれで正解で、

WinRT API からは、「自分のローカルタイムゾーン」と、「UTC」 この二つしか見えない作りになっています。

  • OSのサポートするタイムゾーン・夏時間の列挙
  • 各タイムゾーン間の時間の変換

がバッサリ落ちてるんですね。困る。

※とはいいつつ、世界時計でも作るのでなければ…ローカルタイムとUTCだけで「大抵は」済む話かもしれません。

ただOS自体には機能があるので、それを叩くPCLがNuGetで公開されています。ありがたいことです。

WinRTTimeZones
https://www.nuget.org/packages/WinRTTimeZones/

ページにはWinRT, WinStore, WP8, WPA81, .NET4.5 がサポート環境として記載されていますが、試したところ Win10 UWP でも使えています。

拙作の世界時計アプリ Wheel World Clock も、このNuGet Packageを使ってタイムゾーンの列挙・時間の変換をWindows Phone 8.1 / Windows 8.1 / Windows 10 UWP 上で行っています。




※ 30分刻みのタイムゾーンは例が無い、けしからん!という論調のニュースが一部にはあるようですが、そんなことは無く…イラン、ネパール、中央オーストラリアのようにUTCから30分ずれたタイムゾーンを採用している国・地域は幾つか存在します。


2015年8月3日月曜日

Wheel World Clock UWP版 を公開しました


世界時計アプリ Wheel World Clock の Universal Windows Platform (以下UWP)版を公開しました。


Wheel World Clock
https://www.microsoft.com/store/apps/wheel-world-clock/9nblggh10zzn


今回の作業、UWP化の恩恵をフルに活用しよう!という訳では無く、この元々簡単な時計アプリをダシにしてアプリのUWP化・ビルド・ストアへの提出等の作業を一度全部通して試してみるのが目的です。

このため、UWPの売りであるところのAdaptiveなLayout変更やx:Bind等は全く使っていません。
Appとして破綻しない程度に動けばOK!くらいの簡単な実装です。



Win10 Desktop でWheel World Clock UWP が動いている様子



UWP対応でやったこと


Wheel World Clock(以下WWC)は元々「Win/WP8.1の」Universal アプリで、

  • Windows 8.1用Project
  • Windows Phone 8.1用Project、
  • 共用のShared Project

 から成るソリューションになっています。

今回、これに「Universal Windows」…UWP のProjectを追加し、3Project+Sharedのソリューションとする変更を行いました。


※今回は練習のため8.1 UniversalにUWPを追加する形にしていますが…今後特にWin/WP8.1用をメンテする予定がないのなら、素直にUWPだけのソリューションにしたほうが話は早いと思います。


UWP Project の追加


追加時にはフォルダ作成先に気を付け、三つ仲良く並ぶように作成。

Project三つ+Shared一つ


フォルダはこんな感じに並びます
ソリューション .sln ファイルは一つ上のフォルダ


8.1 Sharedは、各々のProjectの名前空間を共通にすることでSharedのソースを共通に参照する、という仕掛けになっています。
このため、UWP Projectをその名前空間に変更します。

  • Main.xaml / cs
  • PackageManifestのスタートアップを指定してるとこ


そして、参照にShared Projectを追加します。

Shared.projitem を参照に追加


最後に、App.xaml / cs を削除 (App.xaml / cs を共用している場合)。

ここで一発Appをビルドし、実行されAppのWindowが出てきたらソリューション・プロジェクトの枠組み作成はとりあえず成功です。

Project Unique な部分の変更


ここから先はApp Specificな部分が多いのですが、その中でもある程度アプリ共通な部分を挙げてみます。




備考…WWCの構成

WWCの構成を簡単に説明します(以降のUWP化作業理解の助けのため)


アプリが持っているページは二つ


  • Main.xaml  メイン。時計を表示するページ。
  • Cities.xaml  表示するタイムゾーンをカスタマイズするページ。

Win8.1用のCities ページ

WP8.1 用のCities ページ





そして、ぐるぐる回る時計はユーザーコントロールとして作ってあります。

Win8.1/WP8.1 Universal では、Main・CitiesをそれぞれのProject用、ユーザーコントロールは共通として作っていました。
今回のUWPも、MainとCitiesのみ別持ち、時計は共通のユーザーコントロールをそのまま使うという方針です(このためコード変更があんまり無い…)



SuspensionManager, NavigationHelper等のテンプレート部分


このあたり、今回UWPはBlankで作ったため初期状態では何もありません。

そこで、Microsoft が Githubに上げているSample集から当該ファイルをパチっ(持ってきて)使います。
今回、名前空間だけ変更しました(そのままでも別にいいですが…使う人のUsingが変わるだけ)

Commonに置くファイル 最低限これだけあればなんとか


一つ注意なのは、これらのSourceは8.1と異なりUWP用であるため、中でMobile DeviceFamilyのExtensionを参照しています。このため、参照にMobile Extensionを追加する必要があります。


App.xaml.cs の変更


WWCでは Application Insights を使っています。今回、UWP用を別集計としたいので…#ifdefで分け、UWP用のInstrumentation Keyを指定します。


Windowの最小サイズ変更・タイトルバーの色変更


UWPではAppの最小サイズを縦・横で指定できます。
指定はManifestでは無くコードで行います。
また、タイトルバーの色もここで変更します。OS標準の白は正直見づらいので。

App.xaml.cs で指定している様子
App.xaml.cs はShared コードであるため、UWP用の部分はIFDEFで分けます。


Main.xaml の変更


WWCでは、Windows用に三点リーダのAppBar引きずり出しボタンを自作して使っていました。UWPでは同じ物がCommandBarに組み込まれているため、そちらを利用しました。

広告

困ったことに、UWP 用のMicrosoft Advertising SDK はまだリリースされていません。無いものは仕方ないので、今回UWP版には広告を出さないことに決め、関連コードをコメントアウトしました。

Cities.xamlの変更


WWCでは、

  • 電話用 Pivot
  • PC用 Hub

で、UIを作り分けていました。

今回のUWP版ではPC・電話両方で動くわけですが…Hubは電話では使いづらいため、電話用に作ったPivot版をそのまま持ってくることにしました。 PCで動かすと見た目は少し悪いです。

UWP用のCities ページ
PC・電話ともにこれが表示されます
上のWP8.1用と構成が同じなのが見て分かります



また、元の電話UIにはバックボタンをつけていませんでした。これは電話では常にバックボタンがOS(またはハードウェア)で用意されているため、アプリ側では(特に処理が無いのなら)何もしなくてもよかったためです。

今回はそうもいかないので…タイトルバーに表示するバックボタンを使うことにします。
これはよくできていて、
Window表示…タイトルバーにバックボタン表示
フルスクリーン表示…タスクバーにバックボタン表示

という切り替えをOSが勝手にやってくれます。ありがたい。


バックボタンの追加
Cities.xaml.csのコンストラクタで行っています


タイトルバーのバックボタン


Win2D


WWCでは文字盤に貼り付ける画像の切り出しにWin2Dを使っているのですが、このライブラリがVS2015RTMのタイミングでWin8.1用とUWP用に分かれました。
このため、UWP版を使用するよう変更しました。



画像リソースの追加


これが一番面倒なんですが… UWP用にアイコン・タイル・スプラッシュ画面等の画像リソースを作成します。
UWPではベースのスケールが200になっているので、そのままではWin/WP8.1用の画像は使えないです。諦めて一個一個リサイズしましょう…
(.csprojでスケールを指定する方法も一応あるのですが、今回はUWP標準に揃えました)

また、UWPは電話・PC共通ですが…特に電話ではタイルを透明にすると見栄えが大変良いので、タイルはなるべく背景を透明で作ると良いです。

UWP用画像リソース


ストアへのアップロード用パッケージのビルド


本来なら引っかかる所では無いのですが…8月3日現在のWin10 SDKには問題があり、私のPackageはこれに引っかかってしまいました。
詳しくはMSDN Forumの当該スレッドを見て頂ければと(私も書いてます)。このスレの通り、更新版の.targets fileを使う事でBuildに成功しました。

RTM Known Issue: Release configuration fails to build on using Desktop and Mobile Extension SDKs in a Universal Windows app
https://social.msdn.microsoft.com/Forums/en-US/2887e169-348d-4d97-a359-aee413b5fa26/

この問題、鍵になっているのは.NET Native 用のFileです。
既定の設定では、UWP Projectは

  • Debug Build .NET Native Off
  • Release Build .NET Native On

になっています。
このためリリースビルドのアップロードパッケージ作成で問題が発覚した感じです。
私のようにリリース直前にエラー出て慌てるのもなんなので、開発中も「たまには」リリースビルドを行い様子を見るのをお勧めします。
私の経験では….NET Nativeに対応するためにコード変更が必要になった事は無いのですが、有るときは有るので(凝ったSerializerを自作してるとか)…その意味でもたまにリリースビルドを行い動作を確認するといいよ!とBuildでMSのエンジニアが言っていました。

なお….NET Native をOnにするとコンパイル・ビルドに偉く時間がかかります。私のポンコツマシン(Core2Duo 2GHz, Memory 4GB, SSD)だと、ARM/x86/x64 全部ビルドするのに17,8分。

ストアへのアップロード


ここはWebの言うとおりに進めることができ、特に引っかかる所は無かったです。
WWCは既にWin8.1とWP8.1用のパッケージがアップロード済みで、それに今回ビルドしたWin10 UWP パッケージが追加される形になります。
Win8.1/WP8.1用アプリが独立していた頃とは異なり、ストア上のエントリ…登録の扱いは一つ、その中に各OS用のパッケージが格納される感じです。

Win10 / Win8.1 / WP8.1 それぞれのパッケージが並んでいる様子


ユーザーがストアにアクセスし「インストール」ボタンを押すと、システムに応じたパッケージのみがDLされます(Win10に無理くりWin8.1用を入れる、とかは無し)。


最後に…


VS2015RTM+Win10SDK、出たばかりという事もあり中々スリリングでして…私のポンコツマシンだと、Win10 をクリーンインストールした上にVSをインストールした環境でも頻繁にフリーズが発生し、若干使い物にならない感じ(マイルドな表現)です。特にスタートアッププロジェクトを変更すると100発100中で死ぬんですが。困った。

そんな中でも今回の作業や画像掲示板ブラウザ F10の開発を続けられているのは、Azure VM上に安定したWin10+VS2015の仮想環境を確保できているのが大変大きいです。
本来なら使用料が発生する所ですが、昨年 Microsoft Taiwan が主催したアプリコンテスト「MSCC」の参加賞として3年分の「AzureとVisualStudio Enterpriseをタダで使える権」を頂いたので無償で使えています。本当に、Microsoft Taiwan には感謝しか無いです。有難うございます。




2015年6月18日木曜日

MADOSMA で動作する自作アプリの御紹介

世は空前のMADOSMA ブーム(*1)に沸いておりますが、皆様は手に入れられましたでしょうか。僕も1台購入しました(*´▽`*)

*1 TwitterのTL見てるとそんな気がしてくる…

私の作っているアプリの中では、以下に挙げる二つがMADOSMA でお使い頂けます。
両方ともWindows Phone 8.1 / Windows 8.1 両方で動作するユニバーサル アプリとなっています。

小ネタ系の何でもないアプリですが、ちょいと試していただけると嬉しいです。

Wheel World Clock


Wheel World Clock
Wheel World Clock - Windows Phone ストア
https://www.windowsphone.com/ja-jp/store/app/wheel-world-clock/0c242c2c-5c7a-4498-9999-118b116b162a

Wheel World Clock - Windows ストア
http://apps.microsoft.com/windows/ja-jp/app/wheel-world-clock/1e591002-4ffa-4d49-b8e7-4d82f1211d16

窓の杜さんにご紹介頂きました。有難うございます。
【レビュー】くるくる回して時刻を算出。世界各地の時刻が一目でわかる「Wheel World Clock」
http://www.forest.impress.co.jp/docs/review/20150126_685175.html

くるくる回してピタリと判る世界時計。
世界各地の「現在時刻」が判る世界時計は多いですが、Wheel World Clockは「あそこの何時が日本の何時だっけ?」というときに文字盤をくるくる回すとすぐ判る、というアプリです。
…MADOSMAで動かすと、こう回転描画の滑らかさに欠けてイマイチな感じはありますね。直るかな。


ごみ出しカレンダー


ごみ出しカレンダー
ごみ出しカレンダー - Windows Phone ストア
https://www.windowsphone.com/ja-jp/store/app/%E3%81%94%E3%81%BF%E5%87%BA%E3%81%97%E3%82%AB%E3%83%AC%E3%83%B3%E3%83%80%E3%83%BC/4d7fece7-ccb5-4318-b6fd-6079c06153cf

ごみ出しカレンダー - Windows ストア
http://apps.microsoft.com/windows/ja-jp/app/gc-calendar/c3cdaa23-5b99-4b28-803f-00b90c86a601

窓の杜さんにご紹介頂きました。有難うございます。
【レビュー】入力データを複数端末で同期できるごみ収集日専用のカレンダー「ごみ出しカレンダー」
http://www.forest.impress.co.jp/docs/review/20141006_669662.html

Windows Phone のスタート画面(いわゆるホーム画面)は各アプリが様々な更新情報を表示できるようになっているのですが、そこにゴミ出しのカレンダーを出そうぜというアプリです。
登録したカレンダーのデータは、Windows Phone とWindows 間で自動的に同期されます。どちらか一方で入力して放っておくとじんわり伝わる感じです(すぐ同期される時もあれば十数分かかるときもあります。MS様のご機嫌次第)。


こんな感じ。それだけなんですけどね。






2015年6月4日木曜日

DDLGで製作しているアプリ Windows 10 以降の対応予定


私が作っているアプリの、Windows 10 以降の対応予定・どれがどのOSで動くのかについて簡単にまとめてみました。


AppWin8Win8.1Windows Phone 8.1Win10 PCWin10 Mobile今後の予定
futa8××Win8.1で終了
F10×××Win10 UWP版 今年後半予定
PICT8×××未定
WiFiSD8×××未定
Wheel World Clock×未定
GC.Calendar×未定


…表にすると意外にややこしくて驚くのですが、


  • futa8 … Win8/8.1 StoreApp。 F10に引き継ぎ、futa8の更新は終了する予定です(ストアには置きます)
  • F10(仮称) … Win10 UWP版の画像掲示板ブラウザです。今作っています。
  • PICT8 … Win8.1 StoreApp。現在、Win10 PCでは画像表示時の初期倍率がたまにおかしくなる不具合があります。UWP化は未定。やりたい気持ちはありますがまずはF10を片づけてから、な感じです。
  • WiFiSD8 … Win8.1 StoreApp。UWP化は…もうWebDAVがあるので別に要らないかなとも思ってます。
  • Wheel World Clock … Win/WP8.1 UniversalApp。このままでWin10 PC・Mobileで動くので、今のところいじる予定は無いです。
  • GC.Calendar … Win/WP8.1 UniversalApp。このままでWin10 PC・Mobileで動くので、今のところいじる予定は無いです。

ちなみに、マウスコンピュータさんのスマートフォン MADOSMA はWindows Phone 8.1で出荷、Windows 10 Mobile 対応は「やる気はあるけど未定」という言い方のようです。
Win10(PC)は7月末リリースが決まりましたが、Win10 Mobile の方は「今年後半」だけでまだふわっとしてますね。


2015年2月8日日曜日

DDLGで製作しているアプリのWin10 bld9926 動作状況

私が作っているストアアプリの、Windows10 build9926 での動作状況について簡単にまとめます。

方針としては、

  • 今年四月の開発者イベント //build 2015 で方向性が出るまでは特にWin10用の修正は行わない予定
  • が、現状特に困る部分があった場合はその限りではない

という感じです。
下で触れられていない気づいた点等ありましたらお気軽にお知らせください。

全アプリ共通


  • Win10でのシステム既定フォントの変更により、これまでメイリオで表示されていた文字が游ゴシックで表示される部分が多いです。
  • 現在のWindows 10 の仕様により、タッチ操作でアプリバー(Win8 では画面下・上からのスワイプで表示されるメニュー)、設定チャーム(Win8 では画面右からスワイプで表示)が使いにくくなっています。

Win10 build9926 での操作方法は、

アプリバー

タッチ


  1. 画面上からスワイプしてタイトルバーを表示
  2. 左端の「三」をタッチしてメニューを表示
  3. メニューの「… App Commands」でアプリバーを表示

マウス

今まで通り右クリックでアプリバーが表示されます。

設定チャーム

タッチ





  1. 画面上からスワイプしてタイトルバーを表示
  2. 左端の「三」をタッチしてメニューを表示
  3. メニューの「Settings」で設定チャームを表示

マウス

  1. 画面上部をクリックしてタイトルバーを表示
  2. 左端の「三」をクリックしてメニューを表示
  3. メニューの「Settings」で設定チャームを表示


今後の方針


PICT8・Wheel World Clock については画面下部にアプリバーを表示するためのボタン(横長で、右端に「…」が表示されている)があるため使いにくさは多少緩和されている物と思いますが、
futa8・WiFiSD8・ごみ出しカレンダー についてはボタンがありません。
このため、これら3アプリについては順次、PICT8のようなアプリバー表示ボタンをつけたVersionをリリースする予定です。

アプリバー表示ボタン
PICT8・Wheel World Clock には付いています



以下は各個の状況です。

PICT8


動作

ほぼ問題ありません。

細かい部分


  • PDF・Zipを開いた場合、最初のページのズーム倍率がおかしくなる場合が多いようです。ページ送りを行うと正常な倍率に戻ります。
  • フォルダを追加する際、「ライブラリ」のルート…例えば、ライブラリの「ダウンロード」を追加しようとするとエラーになります。ダウンロードのもう一階層下のフォルダを指定すると追加できます。

futa8


動作

問題ありません。

細かい部分


  • 現状、特に気づいた所は無いです。ただ、ストアで「Win10で動かない」旨のレビューを付けてくださっている人が居るので気になっています。自分も動かない、という事がありましたらお知らせいただけると有難いです。

Wheel World Clock


動作

問題ありません。

細かい部分


  • 公開初期のバージョンでは、背景画像を指定した場合にアプリケーションが異常終了する、指定しても描画に反映されない等の不具合がありましたが、現在ストアに上がっているバージョン(1.1.0.7)で修正・対策済みです。

WiFiSD8

http://apps.microsoft.com/windows/app/wifisd8/1f490d0d-4c05-4417-ac24-f51c24e29c2b

動作

問題ありません。

細かい部分





  • 現状、特に気づいた所は無いです。

ごみ出しカレンダー


動作

問題ありません。

細かい部分





  • 現状、特に気づいた所は無いです。











2015年1月20日火曜日

Wheel World Clock を公開しました



Wheel World Clock
Windows 8.1 / Windows Phone 8.1 で動作します


ストアアプリ「Wheel World Clock」を公開しました。
Windows 8.1 / Windows Phone 8.1 でお使い頂ける Universal Windows Appです。無料です。

Windows ストアからダウンロード
Windows Phone ストアからダウンロード

Google Play で手に入れよう
Google Play からダウンロード

※ May 2017: Android version へのリンクを追加


Wheel World Clock で できる事

世界時計です。

  • 文字盤はタッチ・マウスでぐりぐりと回すことができ、回転に応じてその時間・日付が表示されます。「1月21日午前9時(米太平洋時間)にイベント開始!」と言われても日本時間にすぐ暗算できないんだよ!UTC で書けよ!という僕や貴方のための時計です。
  • 表示するタイムゾーン・表示名は変更可能です。OSがサポートするタイムゾーンを全て使う事ができます。
  • 夏時間、Daylight Standard Time に対応しています。OSが対応していれば、その季節になると自動的に夏時間のタイムゾーンに切り替わります。
  • 時計の文字盤画像を貼り変えることができます。


米太平洋時間1月21日午前9時、は
Wheel Wold Clockでくるくる回せばすぐわかる!という作為的な例



注意

  • タッチ・マウスでぐりぐり回す際に回転がスムーズに行かない場合、画面下部のアプリバー → 「Settings」→ 「Show each time during rotation」のチェックを外すことで改善される場合があります。Tegra2 世代のWindows RT機や、初期のAtomタブレットではチェックを外したほうがいいかもしれません。
  • アプリ実行中に標準時~夏時間を跨いだ場合、表示は自動的には変わりません。一度アプリを閉じ、再度起動する必要があります。
  • 時計の文字盤画像を貼る場合、Windows 8.1 では左上から最大の正方形を取れる分を自動的に切り取り、表示します。Windows Phone 8.1 では画像の形に関わらず正方形に縮小して表示します。



余談

  • 2006年くらいですか、WPF が入ってきた頃にこの手のサンプルアプリを良く見たような気がします。書いていて少し懐かしい感じがしました。
  • このタイプの時計…というか変換板の元ネタは、大昔にどこかで貰った国際電話のプロモーション用の小さなカードです。カードの真ん中にくるくる回る円盤がはめ込まれていて、中に都市名が書いてあり、回すと各地の時間がわかるという。所謂「世界時計」…各地の現在時刻が並んでいるタイプは良く見かけますが、ニュースやWeb を見ていて「○○時間△時」を日本時間に直すにはあのカードが一番便利だったなーという記憶がずっとあったのでした。MSCC 向けに小ネタで何か作るには丁度良いかなとガーっと書いてみた感じです。