Test-ZugferdPdf #
ÜBERSICHT #
Prüft, ob eine PDF-Datei eine eingebettete ZUGFeRD- oder Factur-X-XML enthält.
SYNTAX #
Test-ZugferdPdf [-Path] <string> [<CommonParameters>]
BESCHREIBUNG #
Die Funktion liest die PDF-Datei als Byte-Array, erzeugt daraus einen ISO-8859-1-Text und sucht nach den bekannten Dateinamen factur-x.xml, zugferd-invoice.xml, xrechnung.xml oder ZUGFeRD-invoice.xml. Wird einer dieser Namen im PDF-Text gefunden, gibt die Funktion $true zurück, andernfalls $false.
Als Fallback wird bei negativem Ergebnis ein strukturelles PDF-Parsing durchgeführt (Xref, Catalog, EmbeddedFiles Name-Tree), um auch PDFs zu erkennen, bei denen das Filespec-Objekt in einem komprimierten Object Stream liegt.
PARAMETER #
-Path #
Type: string
Der vollständige Pfad zur PDF-Datei, die geprüft werden soll.
AUSGABEN #
bool
Gibt $true zurück, wenn die PDF eine ZUGFeRD/Factur-X-XML enthält, andernfalls $false.
BEISPIELE #
# Prüft, ob die PDF-Datei eine eingebettete ZUGFeRD-XML enthält.
Test-ZugferdPdf -Path 'C:\Rechnungen\rechnung.pdf'
# Verwendung in einer Bedingung
if (Test-ZugferdPdf -Path $pdfDatei) {
Write-Host 'ZUGFeRD-PDF erkannt'
}