mirror of
https://github.com/dfinke/ImportExcel.git
synced 2025-12-06 00:23:20 +00:00
60 lines
2.0 KiB
PowerShell
60 lines
2.0 KiB
PowerShell
#region import everything we need
|
|
$culture = $host.CurrentCulture.Name -replace '-\w*$', ''
|
|
Import-LocalizedData -UICulture $culture -BindingVariable Strings -FileName Strings -ErrorAction Ignore
|
|
if (-not $Strings) {
|
|
Import-LocalizedData -UICulture "en" -BindingVariable Strings -FileName Strings -ErrorAction Ignore
|
|
}
|
|
try { [void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") }
|
|
catch { Write-Warning -Message $Strings.SystemDrawingAvailable }
|
|
|
|
foreach ($directory in @('Private', 'Public','Charting','InferData','Pivot')) {
|
|
Get-ChildItem -Path "$PSScriptRoot\$directory\*.ps1" | ForEach-Object {. $_.FullName}
|
|
}
|
|
|
|
if ($PSVersionTable.PSVersion.Major -ge 5) {
|
|
. $PSScriptRoot\Plot.ps1
|
|
|
|
function New-Plot {
|
|
[Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSUseShouldProcessForStateChangingfunctions', '', Justification = 'New-Plot does not change system state')]
|
|
param()
|
|
|
|
[PSPlot]::new()
|
|
}
|
|
|
|
}
|
|
else {
|
|
Write-Warning $Strings.PS5NeededForPlot
|
|
Write-Warning $Strings.ModuleReadyExceptPlot
|
|
}
|
|
|
|
#endregion
|
|
|
|
if (($IsLinux -or $IsMacOS) -or $env:NoAutoSize) {
|
|
$ExcelPackage = [OfficeOpenXml.ExcelPackage]::new()
|
|
$Cells = ($ExcelPackage | Add-Worksheet).Cells['A1']
|
|
$Cells.Value = 'Test'
|
|
try {
|
|
$Cells.AutoFitColumns()
|
|
if ($env:NoAutoSize) { Remove-Item Env:\NoAutoSize }
|
|
}
|
|
catch {
|
|
$env:NoAutoSize = $true
|
|
if ($IsLinux) {
|
|
$msg = @"
|
|
ImportExcel Module Cannot Autosize. Please run the following command to install dependencies:
|
|
apt-get -y update && apt-get install -y --no-install-recommends libgdiplus libc6-dev
|
|
"@
|
|
Write-Warning -Message $msg
|
|
}
|
|
if ($IsMacOS) {
|
|
$msg = @"
|
|
ImportExcel Module Cannot Autosize. Please run the following command to install dependencies:
|
|
brew install mono-libgdiplus
|
|
"@
|
|
Write-Warning -Message $msg
|
|
}
|
|
finally {
|
|
$ExcelPackage | Close-ExcelPackage -NoSave
|
|
}
|
|
}
|
|
} |