PowerShellでクリップボードの画像をBase64に変換するスクリプト

powershell7コンピュータ
powershell7

Snipping Toolなどのキャプチャソフトでクリップした画像をテキストとしてHTMLに張り付けることが目的です。

<#
.SYNOPSIS
クリップボードの画像をBase64に変換
#>
Add-Type -AssemblyName System.Windows.Forms
$bitmap = [Windows.Forms.Clipboard]::GetImage()
if ($bitmap -eq $null) {
    return
}


$MemoryStream = New-Object System.IO.MemoryStream
$bitmap.save($MemoryStream , [System.Drawing.Imaging.ImageFormat]::Jpeg)
$Bytes = $MemoryStream.ToArray()
$MemoryStream.Flush()
$MemoryStream.Dispose()
$text = "<img src=""data:image/jpeg;base64,"+ [convert]::ToBase64String($Bytes) + """>"

Set-Clipboard -Value $text
Write-Host $text

コメント