ポメラのスクリーンショット(BMP)をドラッグアンドドロップでPNGに変換する
1. 概要
発売日の 2022 年 7 月 29 日にポメラ DM250 WHITEを買って使い始めています。
ポメラにはスクリーンショットの機能があり,ショートカットキー(CTRL
+ SHIFT
+ 3
)を押すと SD カードに BMP ファイルとして保存されます。
このスクリーンショットをよく Gyazo に置いたり Twitter に投稿するのですが,Gyazo や Twitter は BMP ファイルをサポートしていないため,サポートしている画像形式に変換する必要があります。
変換するにはいろんな方法があると思いますが(今までは GIMP や Photoshop で読み込んで変換して保存していた),私は Windows 環境で生活をしているため,画像変換に対してプログラムやライブラリの追加が必要がなく,てっとり早く使える PowerShell を使って変換をある程度自動化することにしました。
2. 要件
Gyazo に置いたり Twitter に投稿することが主目的であるため,以下の前提条件の下,必要な仕様を満たすことを考えました。
2.1 前提条件
- Windows 11 環境の PowerShell 5.1 で実装する
- ポメラは PC リンク機能を使って PC に USB ケーブルで接続する
- スクリーンショットの BMP が保存されているポメラの SD カードは Windows 上で E:ドライブとして扱える
2.2 要求仕様
- BMP ファイルを複数選択してドラックアンドドロップして変換する
- Gyazo や Twitter がサポートしている PNG ファイルに変換する
- 変換した PNG ファイルはデスクトップ上に置く
3. インストール方法
以下の PowerShell のコードをpomera-image-converter.ps1
として適当な場所に保存します。ここでは,C:\home\saito\bin
に保存したものとします。
Add-Type -AssemblyName System.Drawing
$target = [System.Environment]::GetFolderPath("Desktop")
foreach ($arg in $args) {
$src = [System.Drawing.Image]::FromFile($arg)
$filename = [System.IO.Path]::GetFileNameWithoutExtension($arg) + ".png"
$dest = Join-Path $target $filename
$src.Save($dest, [System.Drawing.Imaging.ImageFormat]::Png)
}
BMP ファイルを複数選択してドラックアンドドロップで PowerShell スクリプトに渡すには,ショートカットを利用します。
まず,デスクトップにショートカットを新規作成します。
ショートカットの作成ダイアログが表示されたら,項目の場所に以下を入力します。
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy RemoteSigned -File C:\home\saito\bin\pomera-image-converter.ps1
ショートカットの名前を指定します。ここでは「ポメラ画像変換」にしています。
デスクトップに「ポメラ画像変換」というショートカットが作成されました。
4. 変換方法
- ポメラを PC に接続し,ポメラのツールメニューから PC リンクを選択して PC リンクにします。
- E:ドライブに見えているポメラの SD カードから変換したい BMP ファイルを選択し,「ポメラ画像変換」ショートカットにドラックアンドドロップします。
- デスクトップ上に変換された PNG ファイルが保存されます。
5. おわりに
もっと良いやり方があれば是非教えてください!
Discussion