« 2022年1月 | トップページ | 2022年3月 »

2022年2月24日 (木)

Windows 11の悪さ?

今日は在宅勤務をしていたんですが、急にPCの調子が悪くなりまして。

その悪くなり方が妙でして、こんな感じです。

Img_1268

Windowsのスタートメニューのアイコン辺りにカーソルを合わせると、御覧の通り、くるくるとし始めます。

自宅では、ブラウザ上で会社PCのリモートデスクトップを操作するAkamaiというサービスを使用しているんですが、このスタートメニュー真上の辺りだけが触れません。

で、自宅はWindows 11、会社はWindows 10。

だから、この真上辺りにはちょうどよく使うアプリのアイコンが並んでいるんですが、これが一切触れず。

どうやって仕事しろっていうねん……

てことで、だましだまし使い、早めに仕事を上がりました。

再起動後は、問題なく使えてます。

というか、これ、Windows 11特有の問題ですかね?

なんとなくですが、スタートメニューというより、その横の検索アイコン(虫メガネ型のやつ)が中心だった模様。

この検索窓の周りで、見えない何かが開こうとしていたんでしょうか?

なんとも、不可思議な現象でした。困ったものです。

【Amazon.co.jp 限定】Microsoft Windows 11 Home (日本語版) 64bit ( DSP OEI DVD ) バッファローLANボード LGY-PCI-TXD 付属

2022年2月22日 (火)

OpenCVでサイゼリヤの間違い探しを解くやつ

最近、なぜかサイゼリヤがトレンドに上がってますね。

いいお店だと思います。あそこのミラノ風ドリア、私は好きです。

と、そんな話は置いておき、最近、2つの画像を比較して、その変化部分を抽出するやつを作る必要に迫られました。

このため、まずサイゼリヤの間違い探しをさせてみよう、ということになった次第です。

参考サイトは、以下。

 エンターテイメント|サイゼリヤ

OpenCVを使ってサイゼリヤの間違い探しを簡単に解いちゃう!! - Qiita

サイゼリヤの間違い探しを画像処理で解いてみた - Kasasagi’s memorandum

まず、サイゼリヤのサイトから、間違い探しの画像を一つチョイスし、それの左右をトリムして、別々の画像ファイルとして保存しておきます。

その際に、ちょっとだけ左右画像のカット位置を変えておきました。この両者、あえて位置をずらしてます。

Zeria1

Zeria2

その位置補正までを、プログラムにやらせるのが目的です。

で、コードは以下。


import cv2
import numpy as np

# --------------------------------------------------- #
# 画像合成                                             #
# --------------------------------------------------- #
def ImageComposition(img2, result):
    img3 = cv2.cvtColor(img2,cv2.COLOR_BGR2GRAY) # グレースケール化
    img3 = cv2.cvtColor(img3,cv2.COLOR_GRAY2BGR) # グレースケールのままカラー画像にする
    # コントラスト、明るさを変更する。
    img3 = adjust(img3, alpha=0.25)
    add = cv2.add(img3, result) # 画像を合成する
    return add

# α  はゲイン (gain) 、βはバイアス (bias)
def adjust(img, alpha=1.0, beta=0.0):
    # 積和演算を行う。
    dst = alpha * img + beta
    # [0, 255] でクリップし、uint8 型にする。
    return np.clip(dst, 0, 255).astype(np.uint8)

def FitImageSize_small(img1, img2):
    # height
    if img1.shape[0] > img2.shape[0]:
        height = img2.shape[0]
        width = img1.shape[1]
        img1 = img1[:height,:width] # ゼロ点合わせで大きい方の画像の下をカット
    else:
        height = img1.shape[0]
        width = img2.shape[1]
        img2 = img2[:height,:width]

    # width
    if img1.shape[1] > img2.shape[1]:
        height = img1.shape[0]
        width = img2.shape[1]
        img1 = img1[:height,:width] # ゼロ点合わせで大きい方の画像の右をカット
    else:
        height = img2.shape[0]
        width = img1.shape[1]
        img2 = img2[:height,:width]
    return img1, img2

try:
    # === 画像位置合わせを実施 ===
    # 使う画像は「サイゼリヤの間違い探し」: https://www.saizeriya.co.jp/entertainment/
    # 参照: https://qiita.com/suuungwoo/items/9598cbac5adf5d5f858e
    #       https://qiita.com/h-yanai/items/1e33fd93e5cb1ac98398?utm_campaign=popular_items&utm_medium=feed&utm_source=popular_items

    float_img = cv2.imread('img/zeria1.jpg')
    ref_img = cv2.imread('img/zeria2.jpg')

    akaze = cv2.AKAZE_create()
    float_kp, float_des = akaze.detectAndCompute(float_img, None)
    ref_kp, ref_des = akaze.detectAndCompute(ref_img, None)

    bf = cv2.BFMatcher()
    matches = bf.knnMatch(float_des, ref_des, k=2)

    good_matches = []
    for m, n in matches:
        if m.distance < 0.75 * n.distance:
            good_matches.append([m])

    # 適切なキーポイントを選択
    ref_matched_kpts = np.float32(
        [float_kp[m[0].queryIdx].pt for m in good_matches]).reshape(-1, 1, 2)
    sensed_matched_kpts = np.float32(
        [ref_kp[m[0].trainIdx].pt for m in good_matches]).reshape(-1, 1, 2)

    # ホモグラフィを計算
    H, status = cv2.findHomography(
        ref_matched_kpts, sensed_matched_kpts, cv2.RANSAC, 5.0)

    # 画像を変換
    warped_image = cv2.warpPerspective(
        float_img, H, (float_img.shape[1], float_img.shape[0]))

    #cv2.imwrite('warped.jpg', warped_image) # 確認用:変換後の画像を保存

    # ==== ここから、間違い探し部分 ====

    img_diffs = []
    paddings = []
    for padding in range(1, 50):
        img1 =  warped_image
        img2 = ref_img


        # 画像サイズを合わせる(小さい方に)
        img1, img2 = FitImageSize_small(img1, img2)

        # 2つの画像の差分を算出
        img_diff = cv2.absdiff(img2, img1)
        img_diff_sum = np.sum(img_diff)

        img_diffs.append((img_diff, img_diff_sum))
        paddings.append(padding)

    # 差分が最も少ないものを選ぶ
    img_diff, _ = min(img_diffs, key=lambda x: x[1])
    index = img_diffs.index(min(img_diffs, key=lambda x: x[1]))
    cv2.imshow("img_diff", img_diff)
    cv2.imwrite('img_diff.jpg', img_diff)

    padding = paddings[index]
    img1 = float_img
    img2 = ref_img
    cv2.imshow("img1",img1)
    cv2.imshow("img2",img2)

    # 画像サイズを合わせる(小さい方に)
    img2, img_diff = FitImageSize_small(img2, img_diff)
    # 画像合成
    add = ImageComposition(img2, img_diff)
    cv2.imshow("add",add)
    cv2.imwrite('img_diff_add.jpg', add)

    cv2.waitKey(0)
    cv2.destroyAllWindows()
except:
    import sys
    print("Error:", sys.exc_info()[0])
    print(sys.exc_info()[1])
    import traceback
    print(traceback.format_tb(sys.exc_info()[2]))
   

これを「pydiff.py」という名前で保存しておきます。

御覧の通り、OpenCVとnumpyしか使ってませんね。

これで、平行位置と台形歪み程度なら補正し、2画像の位置と大きさを合わせた後に、左右の差分を検出してくれます。

キーになるのは、AKAZEという画像特徴量を使った位置合わせと、画像サイズ合わせ、差分を取るところですが……その辺りは、コードを解読願います(適当)

これを実行すると、差分のみのファイル「img_diff.jpg」と、それを元画像と重ねた「img_diff_add.jpg」とが得られます。

Img_diff

Img_diff_add

10か所の間違いがありますが、すべて、あぶりだしております(うっすらと、中央のどでかいストローの刺さったコップの水面が出てますが……ここだけは違います)

うん、正解ですね。なかなか優秀じゃん。

と思いきや、これがサイトの綺麗な画像ではなく、写真を使うと、いろいろと問題が出ました。

明るさや色がちょっとでも異なると、途端に差分が増えます。

写真に対して使う際は、コントラスト調整や畳み込み処理などを駆使して、どうにかその差分のある所だけを出せるようにする工夫が要ります。

その前段階の、位置合わせと差分位置を出す部分だけを公開しておきます。

例によって、自己責任にてお使いください。

なお、よくTwitter上に現れる間違い探し広告なんかも、これを使えば解けてしまいそうです。

にしても、サイゼリヤの間違い探しを眺めていたら。

サイゼリヤに行きたくなってきましたねぇ。。。

まだ、エスカルゴを食べたことがないんです。一度、食べてみたい。

サイゼリヤ おいしいから売れるのではない 売れているのがおいしい料理だ (日経ビジネス人文庫)

2022年2月19日 (土)

iPad mini (第6世代)を使って一週間

一週間、経ちました。なので、軽くレビューします。

Img_1256

(1) 画面サイズ

8インチという中途半端なサイズですが、自分的にはこれがちょうどいいかなぁと。

近眼なのですが、眼鏡をはずして使えるぎりぎりのサイズ。これよりも一回り大きい10インチでも使えなくはないですが、やっぱりちょっと大きいかなぁと感じます。

(2) バッテリー持続時間

Img_e0001

7時間26分使って、37%でした。

といっても、充電時間1時間くらいが含まれるので、実質6時間半。

ただ、下を見ていただければわかりますが、そのうち半分は物理エンジン系のAngry Birds Friendsが消費してます。

これを2時間くらいぶっ続けでやってこの程度ですから、相当な駆動時間だと思います。

出張などで議事録取る分には、十分過ぎる駆動時間じゃないでしょうか。

家にいるときはほぼこれを使っております。主にゲームと動画に使いましたが、それでも大体、2日に一回の充電で間に合ってます。

(3) ゼリースクロール

前回、ほとんど分かりませんねぇと書きましたが、とんだ思い違いがありました。

Img_1255

あれは素早く動かすと出るものかと思っていたのですが、ややゆっくり動かす方が出ます。

上の写真ではほとんど分かりませんが、本当にゼリーのように、左右がぬるっとずれる感触。といっても、このブログの2行程度ずれるくらい。

気になるかと言われると、それほどでもないですね。常に出るというものでもなく、なんていうか、フレームレートが高くなってる時だけ出る、というイメージですね。

だから、素早くスクロールさせると、動きがガタガタとした感じ(フレームレートが低い)で、その時はゼリースクロールは起こりません。

気になる方は、店頭のデモ機などで縦画面でブラウザを表示、速度を変えながらスクロールさせてみると見えてきます。

(4) アラーム

iPhoneを、目覚ましとして使ってます。

で、これをiPad miniにやらせようとして、気づいたことがあります。

そう、そういえばiPad miniにはバイブがありません。

家族を起こさないように、iPhoneを目覚ましに使うときは、バイブのみにしてます。これなら、自分しか気づきません。

この程度の音で起きられるので、私としては、バイブレーターの目覚ましを使い続けているのですが……

これは、iPad miniでは使えない機能でした。ということで、寝床にはiPhoneも置いてます。

(5) アプリ

いくつかiPad対応アプリが入ってますが、個人的には、Safari、YouTubeは使いにくく、OneNote、スマートニュース、Twitterは使い易い、と言ったところでしょうか?

ブラウザのブックマークを開くアイコンが画面上にしかなく、これがせめてiPhoneと同じ下にあればいいのに、と思いますね。

YouTubeの方は登録チャンネルを開くと、アイコンが並んでいるだけなので、ちょっと見づらい。iPhoneのように、チャンネル名も出してくれるといいんですけど。そのアイコンを横にスライドするとチャンネル名が表示されるので、慣れと言えば慣れでしょうが。

Twitterやスマートニュースは、iPhoneそのままの配置なので、これはまあ使い易い。

なお、OneNoteはiPad配置ですが、これはPCに近いからか、なじみがあって使い易いと感じます。

どのアプリにも言えますが、私はほぼ90%以上、縦画面で使います。横で使うことはほとんどないですね。

それが、次の項目の話につながります。

(6) カバースタンド

カバースタンド付きのケースを買いました。

安物なのでどうかと思ったんですが、意外に使い勝手は悪くありません。

Img_1261

こういう置き方ができるカバーですが、

Img_1259

この部分をこうやって持てば、

Img_1260

案外持ちやすい。これは意外な発見。

もっともこれは、純正のケースでも可能ですが。

縦で使うことが多いので、これは重宝しております。

Img_1258

ただし、弱点も。

当然ですが、これくらいの角度で、縦画面で使うことができません。

寝転がってるときは、こういう立て方をしたくなることが多いです。

ケースのカバーの内側に、何か貼り付ければ可能かもしれないので、ちょっと検討してみます。

Img_1257

ちなみにこのカバースタンド、画面にこういう模様を残します。

赤矢印の先に、画面に沿って2本の筋が見えるかと思います。

これはおそらく、画面に着いた指紋が、カバーを占めたときにちょうどカバーの折れ線部分だけふき取られないために生じるラインだと思うのですが、なんか気になります。

これが純正だと、一様に拭かれるみたいですけどねぇ。以前もっていたiPadのカバーはそうでした。

(7) キーボード

Bluetoothキーボードを持ってますが、結局、ソフトウェアキーボードばかり使っております。

よほどたくさんの文字を打つときはPCを使うので、ソフトウェアキーボードで間に合ってしまう、というのが現状です。

Img_1262

そのソフトウェアキーボードにも2種類あって、一つは標準。

Img_1263

もう一つが、フローティング。

あと分割がありますが、あれはダメです。

この2つを、気分で切り替えてます。

もうちょっと、フローティングキーボードが大きかったら使い易いのになぁと思いますね。

イメージ的に、iPhone 5s時代のキーボードを触っているような、ちょっと小さすぎる感じがします。

かといって、標準サイズのキーボードはちょっと大きすぎるんですよね。寝転がって使うときは、使いにくい。

まあこれも、慣れでしょうが。

と、いうことで、外ではiPhone 12、家ではiPad miniという生活。iPhone Xは……稼働率が、ぐんと落ちました。なお、iPhone 7 Plusは、次男行きです。

ここ一週間、Surface Goの頻度が下がってますね。使い慣れたiPhoneに近いインターフェースというのが、おそらく使用頻度をあげているんだと思います。もっとも、大量の文章を打つとなれば、Windows PCの方がいいです。要は、使い分けですよね。

まあ、なんやかんやと使用頻度が上がってるのは、メインPCであるゲーミングノートですが。第6波のおかげで、在宅勤務が増えましたねぇ。その傍らで、検索用によくiPad mini使ってますね。サブ機としてもちょうどいいサイズです。

ゼロからはじめる iPad mini スマートガイド [iPadOS 15対応版]

2022年2月14日 (月)

python上であのロードランナーが遊べる!

ロードランナー、ファミコンでやりこみました。懐かしいですね。

そのロードランナーのpython版が公開されております。

GitHub - tako2/pyLodeRunner: Classic Lode Runner clone made in pyxel (Python)

やり方ですが、Windows前提で書くと、以下の通り。

(1) Python 3.7を入れる。

非公式Pythonダウンロードリンク - Python downloads のサイトからPython 3.7を選んでダウンロードするのが、一番分かりやすいです。

(2) Windows PowerShellを立ち上げて、「pip install pyxel」を打ち込む。

(3) 上のサイトから、「Code」-「Download ZIP」から、圧縮されたコードをダウンロードする。

(4) 解凍したフォルダを、適当なフォルダ(ここでは C:\linux としておく)に入れる

(5) 「cd c:\linux\pyLodeRunner-main」(c:\linux のところは、(4)で入れたフォルダ名)と入力し、Enterキー。

(6) 「python loderunner.py」と入力し、Enterキー。

これで、Python版ロードランナーが起動します。

Loadrun01

スペースキーを押すと、ゲームスタート。

矢印キーで移動、z、xキーで穴掘り、スペースキーでPause、手詰まり時はEnterキーでギブアップ、ESCキーで終了です。

やってみると分かりますが、BGMなんてものはありません。また、ちょっと操作が難しい。

矢印キーを押すと、そのままその方角に走りっぱなしです。下キーを押すと止まるんですが、慣れるまでちょっと時間かかります。

とはいえ、ロードランナーです。あのパズル性はそのまま。感動です。

なお、「MEN」のところに自機数が表示されてますが、いくらやられてもゲームエンドにはなりません。ESCキーを押すまで、ゲームは続きます。

昔、やりこんだという方は、いかがでしょうか?

ロードランナー

2022年2月13日 (日)

iPad mini (第6世代)が来ました!

実に1年2か月ぶりくらいに、自分用端末を購入です。

1月31日に予約して12日目、やっと届きました。

Img_1238

はい、表題の通り、iPad mini (第6世代)です。

Img_1239

64GBのWi-Fiモデル。ほんとはセルラーモデルにしようかとも思ったんですけど、今のご時勢、外で全く使わないので、Wi-Fiでいいかと。

で、箱を開けたら、この通り。最近は透明フィルムを使わない梱包ですね。まあ、いいですけど。

Img_1240

御覧の通り、今どきのiOSデバイスです。ホームボタンがありません。

Img_1241

なお、色はパープル。普通の色はもう飽き飽きしているので、ここは高僧だけが許される袈裟の色、紫にしてみました。意味はありませんが。

Img_1242

なお、付属品はこれだけ。

USB-Cケーブルと、充電アダプター。LightningじゃないiOS端末を買うのは、実はこれが初めてですね。

Img_1243

が、付属のは使わず、これを使います。

付属のと同じ20WのUSB-C充電器。および、短めのケーブルです。

Img_1244

さて、このiPad miniですが、電源ボタンでにTouch IDがついてます。つまり、指紋認証。

Img_4537

ちなみにこの電源ボタンをiPhone 12のと比べてみたんですが、ほとんど同じですね。

と、いうことは、iPhoneだってその気になれば、指紋認証くらいつけられたのでは?

Img_1245

なんて叶わぬことをつぶやいても仕方がないので、さっさとセットアップに入ります。

Img_1246

まあ、いつもの画面が出てきて

Img_1247

いつもの選択肢が登場です。

Img_4538_20220212202201

設定がめんどくさいので、iPhone 12を使ってクイックスタートです。

これで、Apple IDやら各種アカウントや、Wi-Fiの設定も引き継がれます。

Img_4539

で、Touch IDの設定も。

ここでは、左右の人差し指を設定しておきました。

が、あとになって、親指も使うことが判明。セットアップ後に追加しておきました。

Img_1249

と、iPadOS 15.3.1のアップデートが始まってしまったので、その間に、先に買ったケースを装着。

Img_1248

Apple純正のケースと違って、透明なので、本体色が拝めます。

Img_1250

ちょっと頼りないのですが、スタンドもあります。

Img_1251

で、それから30分ほどかけてセットアップ完了。

Img_1252

あまりウィジェットを配置したことはないんですが、時計とカレンダー、天気予報だけは残しました。

それでも、1画面にすべてのアイコンを配置できちゃいます。そこはやはり、画面の大きいiPadです。

Img_1253

そういえば、以前買った10インチiPad用のケースについていたBluetoothキーボードをペアリングしてみました。

キーボードがお世辞にも使い易いとは言えないんですが、でもまあ、そこそこの使い勝手。

ちなみに、ESCキーでホームに、Caps Lockで英語/日本語切り替えができます。

さて、まだ使い始めなので、使用感などはこれからですが、ちょっと使った感触を。

片手で握れるのはいいですね。確かに片手で操作は無理ですが、元々、iPhone 7 Plusを愛用していたくらいなので、これくらいは許容範囲。

iPadらしいアプリを試してませんが、それはそのうち。

ただ、YouTubeやブラウザは、さすがiPad。広いです。そして、なめらか。

そういえば、現状で最新のA15チップ搭載なんですよね。ほとんど実感はありませんが。

そして、iPad mini (第6世代)といえば、ゼリースクロール問題。

素早くスクロールさせると、画像がずれるというもの。

で、やってみたんですが……全然、分かりません。

素早く動かしても、もしかしたらずれているのかもしれませんが、ほぼ目で追いきれませんでした。

普通に動かす分には、ずれが起こりませんし。

まあ、普通に使う分には無関係ということのようです。今のところ。

あと気になるのは、バッテリー駆動時間とかですかね。

その辺りは、じっくりと検証してみようと思います。

2021 Apple iPad mini (Wi-Fi, 256GB) - スターライト

2022年2月12日 (土)

iPhone 12の画面にかすり傷、その原因は……

この写真では分かりにくい(というか、分からない)ですが、画面右上に、なんていうか反射の少ないややつや消し気味なところができまして。

Img_2472

クリーナーでいくら磨いても取れないんで、やっぱりこれは傷だと気づいた次第。

うーん、iPhone 12の画面って、案外弱いんだなぁと思っていたんですが。

Img_2473

おそらく、原因はこれじゃないかと。

iPhone Xのカメラの位置とピッタリです。ゆえに、iPhone Xのカメラ部のエッジが当たったのでは?と思ってます。

Img_2474

つまり、こういう状態でこすれ合って、傷ついてしまったのではないか、と考えた次第。

というのも、胸ポケットに入れると、こうなるんですよね。

これならば、思い当たる節だらけです。

Img_2475

というのも、iPhone Xの裏面にはケースがついている者の、このカメラエッジ部がわずかに飛び出してます。

Img_2478

一方のiPhone 12ですが、ケース自体に出っ張りがあって、カメラの周囲を囲んでいます。

これはおそらく、iPhone 11の時に、カメラエッジで画面が傷ついたという騒ぎが起きたため、その対策が施されたのでは?と思ってます。

いや、単純に、カメラ保護のためかもしれませんが。

いずれにせよ、油断しましたね。

買ってまだ2年も経っていないのに、ちょい傷物です。

いや、それ以上にがっかりしているのは、バッテリーです。もう87%なんですよね。

ちなみに、買って5年5か月が経つiPhone 7 Plusが82%、4年3か月のiPhone Xが84%と考えると、いくらなんでも減りが早すぎです。

確かに、毎日使ってはいますけど。。。

もっとも、それでも十分過ぎるくらいバッテリーが持ってくれるので、別にいいんですけど。でも最近、朝になるとバッテリーが減ってるんですよね。以前は一晩くらいではバッテリーの充電量は変化しなかったというのに。

おっと、画面の傷の話が脱線して、バッテリーの話になってしまいました。

いずれにせよ、最近は出っ張りカメラが当たり前の時代、スマホの取り扱いには気を付けましょう、ってことです。


NIMASO ガラスフィルム iPhone12 / iPhone12Pro 用 保護 フィルム ガイド枠付き 2枚セット

2022年2月10日 (木)

電子秤買った

なかなかiPad miniが届きません。


だからというわけではありませんが、こんなものを購入。


Img_1229


電子秤です。


Img_1234


本体以外には、簡単な取説と、


Img_1233


簡易なメジャー。


これは棄てました。


Img_1230


電池を入れて、スイッチオン。


するとですね……なんか、ゼロ点がふらふらと動きます。安定してませんね。感度良過ぎなんでしょうか?


Img_1231


とりあえず、Apple Watch Series1を載せてみる。


40.7gと出ました。こんなものでしたか?


Img_1232


で、リリースした後は、こんな感じ。3g付近をうろうろし始めます。


大丈夫かな、これ。


最大3000gまでは測れるそうです。


これを買った目的ですが、実は生理食塩水を作ろうかと思いまして。


鼻うがい用に、市販の生理食塩水を買ってるんですけど、これが大体500ml程度で700円オーバーとちょっと高い。


花粉症の季節、大体それを2本くらいは消費するので、あまりにももったいないなぁと思って、自作しようと思い立った次第。


要するに、0.9%の食塩水を作ればいいので、ならば秤さえあればできるじゃんと考えたわけです。


850円で買った秤なので、使えなかったとしても惜しくはないし、そのうちやってみようかと思います。


でもこれ、電子ガジェット購入時に重さを検証するのにも使えそうだな。秤だけに、謀りごとが捗りそうです。


デジタルスケール 電子秤 はかり 3000g0.1g単位 数量計量 電源自動OFF トレー2個付き 簡易日本語取扱説明書付き スケール (シルバー)


2022年2月 1日 (火)

iPad mini(第6世代)のカバー付きケースを購入

表題の通りです、iPad miniのカバーケース、買いました。

Img_1221

お値段、2500円。

純正だと8000円近くなので、これはかなりお買い得。

Img_1222

ですが、その分、質感はよくありません。なんか、ごわごわ。

Img_1224

裏面。透明なので、中が丸見え。今は本体代わりのダミークッションと、「食べられません」なシリカゲルが入っておりますね。

ところで、大事なことを忘れてないかって?

おい、ケースだけ買ってもしょうがないだろう、と。

ええ、分かってます。おっしゃる通りです。

実はですね

近所のららぽーとにあるBic Styleで予約してきたんです。

Wi-Fi版64GBの、パープルのやつ。

ところが、ご存知の通り、なかなか商品が入荷されません。ネットのApple Storeでも、5~6週間待ち。

こうなったら、1、2か月くらいは待ってやろうと心に決めての、予約注文です。

ということで、ケースだけ先に家に来たというわけです。。

ストレスがたまる日々が続いてますが、いずれiPad miniが届くかと思うと、少し生きる希望が湧いてきましたね。

本体が来たら、またレビューします。

エレコム iPad mini6 第6世代 (2021年モデル) ケース 超薄型 軽量 2アングル スタンド フラップケース ソフトレザー 背面クリア ブラック TB-A21SWV2BK

« 2022年1月 | トップページ | 2022年3月 »