Power Automate Desktop 画像をトリミングする方法

2023年8月22日

English version.

画像ファイルを任意の位置から任意のサイズで切り抜く方法を紹介します。

手順

次のRobin言語をPower Automate Desktopにコピー&ペーストして利用可能です。

SET SrcFilePath TO $'''C:\\Test\\1.jpg'''
SET SaveFilePath TO $'''C:\\Test\\1_r.png'''
SET X TO 25
SET Y TO 50
SET Width TO 100
SET Height TO 300
Scripting.RunPowershellScript Script: $'''Add-Type -AssemblyName System.Drawing
$bmp = New-Object System.Drawing.Bitmap(\"%SrcFilePath%\")
$bmp_r = New-Object System.Drawing.Rectangle(%X%, %Y%, %Width%, %Height%);
$result = $bmp.Clone($bmp_r, $bmp.PixelFormat)
$result.Save(\"%SaveFilePath%\", [System.Drawing.Imaging.ImageFormat]::Png)
$bmp.Dispose()
$result.Dispose()''' ScriptOutput=> PowershellOutput

変数に必要な情報を設定します。

変数名設定値
SrcFilePathトリミング元のファイルパス
SaveFilePathトリミング後に保存するファイルパス(PNG)
Xトリミング開始位置(横)
Yトリミング開始位置(縦)
Widthトリミング後の幅
Heightトリミング後の高さ

このフローを実行すると画像のトリミングが行われます。

PowerShellのコード

PowerShell スクリプトの実行」で実行しているコードは次の通りです。

Add-Type -AssemblyName System.Drawing
$bmp = New-Object System.Drawing.Bitmap("%SrcFilePath%")
$bmp_r = New-Object System.Drawing.Rectangle(%X%, %Y%, %Width%, %Height%);
$result = $bmp.Clone($bmp_r, $bmp.PixelFormat)
$result.Save("%SaveFilePath%", [System.Drawing.Imaging.ImageFormat]::Png)
$bmp.Dispose()
$result.Dispose()

5行目のPngを変更すると別の画像形式での保存も可能です。

Power Automate Desktopを効率的に習得したい方へ

当サイトの情報を電子書籍用に読み易く整理したコンテンツを

買い切り950円またはKindle Unlimited (読み放題) で提供中です。

Word-A4サイズ:1,700ページの情報量で

(実際のページ数はデバイスで変わります)

基本的な使い方から各アクションの詳細な使い方、

頻出テクニック、実用例を紹介。(目次

体系的に学びたい方は是非ご検討ください。

アップデートなどの更新事項があれば随時反映しています。(更新履歴

なお購入後に最新版をダウンロードするには

Amazonへの問い合わせが必要です。

関連記事

活用事例集