evoToK3Cloud/script/postman/plm-pdf-zip/make-demo-zip.ps1
2026-08-11 14:29:31 +08:00

31 lines
1.2 KiB
PowerShell
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 生成 Postman 测试用 plm-pdf-demo.zip与 manifest.json 中 pdfPath 一致)
$ErrorActionPreference = "Stop"
$root = Split-Path -Parent $MyInvocation.MyCommand.Path
$staging = Join-Path $root "zip-staging"
$zipPath = Join-Path $root "plm-pdf-demo.zip"
$minimalPdf = @"
%PDF-1.4
1 0 obj<<>>endobj
trailer<<>>
%%EOF
"@
if (Test-Path $staging) { Remove-Item $staging -Recurse -Force }
New-Item -ItemType Directory -Path (Join-Path $staging "drawings") -Force | Out-Null
Set-Content -Path (Join-Path $staging "drawings\part-a.pdf") -Value $minimalPdf -Encoding ASCII -NoNewline
Set-Content -Path (Join-Path $staging "drawings\part-b.pdf") -Value $minimalPdf -Encoding ASCII -NoNewline
if (Test-Path $zipPath) { Remove-Item $zipPath -Force }
Compress-Archive -Path (Join-Path $staging "*") -DestinationPath $zipPath -Force
# 校验 zip 内路径(应为 drawings/part-a.pdf不能只有 part-a.pdf 在根目录)
Add-Type -AssemblyName System.IO.Compression.FileSystem
$zip = [System.IO.Compression.ZipFile]::OpenRead($zipPath)
Write-Host "已生成: $zipPath"
$zip.Entries | ForEach-Object { Write-Host " - $($_.FullName)" }
$zip.Dispose()
Remove-Item $staging -Recurse -Force