クリップボード上の画像を簡単に保存する方法

Windowsで画像を保存したい場合は、スクリーンショットを使用する方法や、右クリックで表示されるメニューから「画像をコピー」等があります。

ですが、中にはクリップボードに保存されただけで、画像をファイルとして保存するには「ペイント」等のツールでペーストして保存する必要がある場合があります。

いちいちツールにペーストすることが面倒という場合のために、簡単に保存する方法の1つを紹介します。

スポンサーリンク

クリップボード上の画像を簡単に保存する方法

クリップボード上の画像を簡単に保存するにはPowerShellのスクリプトを使用します。最初の準備が多少手間ですが、1度用意しておけば後は簡単に実行することができます。

PowerShellのスクリプトを作成する

メモ帳等のテキストエディターに以下の内容をコピーし、拡張子は「.ps1」で保存してください。ファイル名は任意で問題ありません。

Add-Type -AssemblyName System.Windows.Forms

If ([Windows.Forms.Clipboard]::ContainsImage() -eq $True) {
  $Image = [Windows.Forms.Clipboard]::GetImage()
  $FilePath = "C:\Users\[ユーザー名]\Desktop"
  $FileName = (Get-Date -Format "yyyyMMddHHmmss") + ".png"
  $ImagePath = Join-Path $FilePath $FileName
  $Image.Save($ImagePath, [System.Drawing.Imaging.ImageFormat]::Png)
}

「$FilePath」はファイルを保存するフォルダーです。黄色下線部分は画像を保存したいフォルダーへ自由に変更してください。

「$FileName」は保存するファイル名です。上書きしたりエラーにならないように"年月日時分秒"で保存するように指定しています。

また、記載したスクリプトは「PNG形式」で保存するスクリプトです。その他の形式で保存することもできます。その場合は、赤下線の部分をそれぞれ以下のように変更してください。

JPEG形式で保存する場合)

----------------
  $FileName = (Get-Date -Format "yyyyMMddHHmmss") + ".jpg"
----------------
  $Image.Save($ImagePath, [System.Drawing.Imaging.ImageFormat]::Jpeg)
}

TIFF形式で保存する場合)

----------------
  $FileName = (Get-Date -Format "yyyyMMddHHmmss") + ".tiff"
----------------
  $Image.Save($ImagePath, [System.Drawing.Imaging.ImageFormat]::Tiff)
}

BMP形式で保存する場合)

----------------
  $FileName = (Get-Date -Format "yyyyMMddHHmmss") + ".bmp"
----------------
  $Image.Save($ImagePath, [System.Drawing.Imaging.ImageFormat]::Bmp)
}

スクリプトの実行するための準備

スクリプトファイルの準備できましたが、このままでは使い勝手が悪いためショートカットを用意します。「項目の場所を入力してください(リンク先)」を以下の内容でショートカットを作成してください。

powershell -ExecutionPolicy RemoteSigned -windowstyle hidden -File [作成したスクリプトファイルのフルパス]

ショートカットの作り方がわからない場合は以下の記事をご覧ください。

スポンサーリンク

スクリプトファイルの使い方

スクリプトファイルを実行するには、作成したショートカットをダブルクリックするだけです。

スクリプトを実行する画像

クリップボードに画像が保存されている状態でショートカットをダブルクリックすると、スクリプトに指定したフォルダーに画像が保存されます。

クリップボード上の画像がファイルに保存された画像

コメント

タイトルとURLをコピーしました