-
Notifications
You must be signed in to change notification settings - Fork 0
/
Program.ps1
44 lines (30 loc) · 1.23 KB
/
Program.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
$GeneralTestsInputs = Import-PowerShellDataFile -Path (Join-Path -Path (Get-Item $PSScriptRoot).FullName -ChildPath "Config.psd1")
#Path to your Ghostscript EXE
$tool = $GeneralTestsInputs.GhostScriptPath
#Directory containing the PDF files that will be converted
$inputDir = $GeneralTestsInputs.InputPDFsFolder
#Output path where converted PDF files will be stored
$outputDirPDF = $GeneralTestsInputs.OutputConvertedPDFsFolder
#Output path where the TIF files will be saved
$outputDir = $GeneralTestsInputs.OutputTIFFFolder
if (-Not(Test-Path $outputDirPDF)) {
New-Item -ItemType Directory -Path $outputDirPDF | Out-Null
}
if (-Not(Test-Path $outputDir)) {
New-Item -ItemType Directory -Path $outputDir | Out-Null
}
$pdfs = Get-Childitem $inputDir | Where-Object {$_.Extension -match "pdf"}
$tiff = $outputDir + ('_{0:yyyyMMdd}_{0:HHmmss}' -f (Get-Date)) + ".tiff"
$param = "-sOutputFile=" + "'" + $tiff + "'"
$command = "& '$tool' -q -dNOPAUSE -dBATCH -sDEVICE=tiffg4 $param -r500"
foreach($pdf in $pdfs)
{
'Processing ' + $pdf.Name + '...'
$command = $command + " " + "'" + $pdf.FullName + "'"
$command | Out-Default
}
Invoke-Expression $command
foreach($pdf in $pdfs)
{
Move-Item $pdf.FullName $outputDirPDF
}