PowerShellから使うにはどうすればいい?
次にPowerShellからコンピュータ名などを入れた背景画像を作ることにしよう。PowerShellからmagick.exeコマンドを起動する場合、オプションの一部がPowerShellに解釈されないように、一部をダブルクオートなどでくくる必要がある(これがPowerShellは面倒と見られる点だ)。
前述のコマンドの場合、「srgb(61,64,116)」のカッコのところをPowerShellが評価してしまうため、ImageMagickがエラーになる。そのため、
magick convert -fill white -background "srgb(61,64,116)" -font "MS-Gothic-&-MS-UI-Gothic-&-MS-PGothic" -pointsize 200 -gravity center -extent 1024x768 label:"アスキー" test03.png
とする必要がある。
しかし、こうした機能があるため、PowerShellでは、exeコマンドの引数にPowerShellの変数や式を入れることが可能になる。たとえば、「Get-CimInstance Win32_ComputerSystem」では、該当のマシンのモデル名やメーカー名、そしてホスト名(コンピュータ名)を取得できる。また、「Get-CimInstance Win32_VideoController」で、画面解像度を知ることもできる。
これらの情報を組み合わせることで、PCのメーカー名、モデル名、ホスト名が入った壁紙を自動で作成することが可能になる。記事冒頭の写真は、これで作成したものだ。
$cs=Get-CimInstance Win32_ComputerSystem;
$vs=Get-CimInstance Win32_VideoController;
magick convert -fill white -background "srgb(61,64,116)" -font "Arial" -pointsize 40 -gravity west label:"$($cs.Manufacturer)\n$($cs.Model)" -pointsize 288 -gravity west -font "Arial-Black" label:"$($cs.Name)" -append -gravity center -extent "$($vs.CurrentHorizontalResolution[0])x$($vs.CurrentVerticalResolution[0])" wall03.png
このmagickコマンドでは2つのラベルに対して、個別にフォントやフォントサイズなどを指定している。ゆえに引数の順番には注意が必要だ。「label」よりも前に指定したフォントサイズがテキストの描画に有効となり、ここでは、フォントサイズなどを変えて2つの画像を生成し、最後に「-append」で縦に2つに並べている。上記のコマンドでは、フォントサイズを数値で指定しているため、画像の解像度にかかわらず文字のサイズは同じになるが、縦方向の解像度の1/4を指定するなどPowerShellで計算した値にすることも可能だ。
マルチディスプレイ対策として、「$vs.CurrentHorizontalResolution[0]」のところで最初のモニターの解像度のみを取り出している点に注意されたい。
これを壁紙に設定したり、スクリーンセーバーの「写真」で使えば、モニターを切り替えたり、仮想マシンを起動したときに、どのマシンなのかを簡単に判別できる。なお、スクリーンセーバーとして使う場合には、背景や文字色が違う画像や単色の画像を用意しておいたほうがいいかもしれない。単色の画像を作るには、
magick convert -size "$($vs.CurrentHorizontalResolution[0])x$($vs.CurrentVerticalResolution[0])" xc:black wall-black.png
とする。「xc:背景色」は、背景色からなる画像を生成するオプション。-sizeで大きさを指定している。
使い方を覚えると、ImageMagickは、コマンドラインから画像を生成できるため、ちょっとした画像の作成で、ドローソフトを起動する必要がなくなる。また、コマンドで位置調整もできるのでドローソフトで文字をセンターに合わせるなんてことも手作業でする必要もない。

この連載の記事
-
第508回
PC
Scalable Vector Graphics(SVG)そもそも何なのか? -
第507回
PC
Windows 11の「開発者モード」とは何か? -
第506回
PC
Windows 11は早くも来秋登場の26H2プレビューの準備が始まる -
第505回
PC
結構変化しているWindows 11のエクスプローラーの基本設定を見直す -
第504回
PC
新しいOutlookとOutlook Classic、そろそろ古いOutlookとExchangeの組み合わせは引退の頃合いか -
第503回
PC
機能が増えたこともあり、寄せ集めから統合化に進むWindowsの便利ツール「PowerToys」 -
第502回
PC
Windows 11でBluetoothのオーディオ新規格「Bluetooth LE Audio」を試す -
第501回
PC
Windows 11 Ver.25H2での変更点、新機能を整理する -
第500回
PC
Windows 11 Ver.25H2が完成した -
第499回
PC
Windowsでの致命的だが回復可能なエラーに備える手段を2つ紹介 -
第498回
PC
Windows Terminalの安定版V1.23が公開 設定UIが改良される - この連載の一覧へ











