first commit
This commit is contained in:
@@ -0,0 +1,90 @@
|
||||
## Description
|
||||
|
||||
These two functions can be used to convert an image to and from base64 format
|
||||
|
||||
## [SYNTAX]
|
||||
|
||||
### Encode an Image
|
||||
```PowerShell
|
||||
img-b64 -img "C:\Users\user\Desktop\image.jpg" -location desk
|
||||
```
|
||||
### Decode a File
|
||||
```PowerShell
|
||||
b64-img -file "C:\Users\user\Desktop\image.jpg" -location desk
|
||||
```
|
||||
## The Functions
|
||||
|
||||
### [img-b64]
|
||||
|
||||
This function will convert your image to base64 format
|
||||
|
||||
Use the image tag to provide the path of the image you are trying to convert
|
||||
|
||||
Using the Location parameter will determine if the file containing the base64 code is saved to the desktop or temp folder
|
||||
|
||||
If no location is designated it will save it to the desktop by default
|
||||
|
||||
```PowerShell
|
||||
function img-b64 {
|
||||
[CmdletBinding()]
|
||||
param (
|
||||
[Parameter (Mandatory = $True, ValueFromPipeline = $True)]
|
||||
[string]$img,
|
||||
|
||||
[Parameter (Mandatory = $False)]
|
||||
[ValidateSet('desk', 'temp')]
|
||||
[string]$location
|
||||
)
|
||||
|
||||
if (!$location) {$location = "desk"}
|
||||
|
||||
$loc = switch ( $location )
|
||||
{
|
||||
"desk" { "$Env:USERPROFILE\Desktop"
|
||||
}
|
||||
"temp" { "$env:TMP"
|
||||
}
|
||||
}
|
||||
|
||||
[Convert]::ToBase64String((Get-Content -Path $img -Encoding Byte)) >> "$loc\encImage.txt"
|
||||
}
|
||||
```
|
||||
|
||||
### [b64-img]
|
||||
|
||||
This function will convert your base64 encoded file back into an image
|
||||
|
||||
Use the file tag to provide the path of the file you are trying to convert
|
||||
|
||||
Using the Location parameter will determine if the file containing the base64 code is saved to the desktop or temp folder
|
||||
|
||||
If no location is designated it will save it to the desktop by default
|
||||
|
||||
```PowerShell
|
||||
function b64-img {
|
||||
[CmdletBinding()]
|
||||
param (
|
||||
[Parameter (Mandatory = $True)]
|
||||
[string]$file,
|
||||
|
||||
[Parameter (Mandatory = $False)]
|
||||
[ValidateSet('desk', 'temp')]
|
||||
[string]$location
|
||||
)
|
||||
|
||||
if (!$location) {$location = "desk"}
|
||||
|
||||
$loc = switch ( $location )
|
||||
{
|
||||
"desk" { "$Env:USERPROFILE\Desktop"
|
||||
}
|
||||
"temp" { "$env:TMP"
|
||||
}
|
||||
}
|
||||
|
||||
Add-Type -AssemblyName System.Drawing
|
||||
$Base64 = Get-Content -Raw -Path $file
|
||||
$Image = [Drawing.Bitmap]::FromStream([IO.MemoryStream][Convert]::FromBase64String($Base64))
|
||||
$Image.Save("$loc\decImage.jpg")
|
||||
}
|
||||
```
|
||||
Reference in New Issue
Block a user