PSVellumPDF
2.0.0
Flowing documents: New-VellumPdfDocument | Add-VellumPdf... | Save-VellumPdfDocument. Add headings with outline bookmarks, paragraphs, mixed-style text runs, lists, tables (merged and styled cells, embedded fonts), images (JPEG, PNG, BMP,
Flowing documents: New-VellumPdfDocument | Add-VellumPdf... | Save-VellumPdfDocument. Add headings with outline bookmarks, paragraphs, mixed-style text runs, lists, tables (merged and styled cells, embedded fonts), images (JPEG, PNG, BMP, GIF, TIFF, JBIG2, JPEG 2000, CCITT), pie charts, barcodes and 2-D codes (QR, Data Matrix, Aztec, PDF417, Code 128/39, EAN/UPC, ITF-14), free-form vector drawings, and running headers and footers with page numbers.
Page-based documents: New-VellumPdfPageDocument places text, shapes, gradients, images and barcodes by coordinate, and adds fillable form fields, links between pages, collapsible bookmarks, rotated pages, linearized "fast web view" output and byte-for-byte reproducible files.
Standards and security: PDF/A-2b/2u/2a and PDF/UA-1 output with tagged structure, language and alternate text; AES encryption with permissions; PAdES digital signatures from B-B to B-LTA (timestamps, long-term validation, external keys and HSM/KMS signers). Test-VellumPdfConformance checks any PDF against PDF/A and PDF/UA in-process, and Save-VellumPdfDocument -Validate refuses to write a non-compliant file.
Experimental reading (VellumPdf.Reader preview): Get-VellumPdfInfo, Get-VellumPdfText, Export-VellumPdfImage and Unprotect-VellumPdfDocument. PSVellumPDF cannot edit, split or merge existing PDFs.
Minimum PowerShell version
7.6
Installation Options
Owners
Copyright
© Timothy van der Ham. Licensed under Apache-2.0.
Package Details
Author(s)
- Timothy van der Ham (@Tim81)
Tags
PDF VellumPdf PDFA Accessibility Document Reporting Create Generate Signing PAdES CrossPlatform Barcode QRCode Chart Forms Preflight PDFUA Validation Windows Linux MacOS
Functions
Add-VellumPdfBarcode Add-VellumPdfDrawing Add-VellumPdfElement Add-VellumPdfFormField Add-VellumPdfGradient Add-VellumPdfHeading Add-VellumPdfImage Add-VellumPdfLineSeparator Add-VellumPdfLink Add-VellumPdfList Add-VellumPdfOutlineEntry Add-VellumPdfPage Add-VellumPdfPageBarcode Add-VellumPdfPageImage Add-VellumPdfPageList Add-VellumPdfPageTable Add-VellumPdfParagraph Add-VellumPdfPath Add-VellumPdfPieChart Add-VellumPdfShape Add-VellumPdfTable Add-VellumPdfText Add-VellumPdfTextBox Export-VellumPdfImage Get-VellumPdfBarcodeMatrix Get-VellumPdfConformanceCoverage Get-VellumPdfInfo Get-VellumPdfText Invoke-VellumPdfCanvas Measure-VellumPdfText New-VellumPdfDocument New-VellumPdfPageDocument New-VellumPdfTextRun Protect-VellumPdfDocument Register-VellumPdfFont Save-VellumPdfDocument Set-VellumPdfDocumentInfo Set-VellumPdfFooter Set-VellumPdfHeader Set-VellumPdfOutputIntent Set-VellumPdfPageBand Set-VellumPdfSignature Test-VellumPdfConformance Unprotect-VellumPdfDocument Use-VellumPdfClip Use-VellumPdfStructure Use-VellumPdfTransform
PSEditions
Dependencies
This module has no dependencies.
Release Notes
2.0.0: built on VellumPdf 2.3.3. New: pie charts, barcodes, vector drawing, a page-based document (forms, links, outlines, rotation, linearization, reproducible output), PDF/UA-1, PAdES B-T/B-LT/B-LTA and external signers, in-process PDF/A and PDF/UA preflight, and experimental Reader cmdlets. Page documents also get paths, clipping, transforms and rotation, text boxes, page numbers, tagged tables and lists, and text measurement. Fixes: -Level 1 headings are now H1, -MarginBottom now adds space, deeper-than-one-level list items are refused instead of dropped, Windows-1252 punctuation no longer triggers the encoding warning. A document can be saved once. Writer errors always stop a cmdlet; reader cmdlets report a bad file and go on with the next. Errors have stable ids (PSVellumPDF.*). The document default font reaches lists, tables and bands, and conformant flow documents embed Liberation fonts. Tables, lists and pie charts take -Culture and format strings, and read number strings in either separator convention. Breaking changes and upgrade notes: https://github.com/Tim81/PSVellumPDF/blob/main/CHANGELOG.md
FileList
- PSVellumPDF.nuspec
- PSVellumPDF.psd1
- Private\Get-VellumPdfImageFormat.ps1
- Private\Add-VellumPdfStructElement.ps1
- Public\Get-VellumPdfInfo.ps1
- Private\Convert-VellumPdfSlotText.ps1
- Private\Expand-VellumPdfTab.ps1
- Public\Add-VellumPdfLineSeparator.ps1
- README.md
- Private\ConvertTo-VellumPdfCulture.ps1
- Private\Set-VellumPdfBand.ps1
- Public\Add-VellumPdfTextBox.ps1
- LICENSE
- Private\Resolve-VellumPdfCulture.ps1
- Private\Get-VellumPdfConformanceRequirement.ps1
- Public\Add-VellumPdfPage.ps1
- PSVellumPDF.psm1
- Private\Assert-VellumPdfCoordinate.ps1
- Private\Get-VellumPdfPropertyValue.ps1
- Public\Register-VellumPdfFont.ps1
- PSVellumPDF.Format.ps1xml
- Private\Assert-VellumPdfValidText.ps1
- Private\ConvertTo-VellumPdfPathOp.ps1
- Public\Add-VellumPdfDrawing.ps1
- lib\NOTICE
- Private\Write-VellumPdfTextLine.ps1
- Private\Resolve-VellumPdfErrorRecord.ps1
- Public\Add-VellumPdfImage.ps1
- lib\VellumPdf.Kernel.dll
- Private\Get-VellumPdfEmbeddedStandard14.ps1
- Private\Import-VellumPdfImage.ps1
- Public\Set-VellumPdfDocumentInfo.ps1
- lib\PSVellumPDF.Interop.dll
- Private\Push-VellumPdfStructParent.ps1
- Private\Push-VellumPdfScopePage.ps1
- Public\Get-VellumPdfBarcodeMatrix.ps1
- lib\VellumPdf.Layout.dll
- Private\Invoke-VellumPdfPreflight.ps1
- Private\Get-VellumPdfPalette.ps1
- Public\Add-VellumPdfPageImage.ps1
- lib\VellumPdf.Barcodes.dll
- Private\New-VellumPdfBarcodeSet.ps1
- Private\Write-VellumPdfMissingGlyphWarning.ps1
- Public\Get-VellumPdfConformanceCoverage.ps1
- lib\VellumPdf.Signing.dll
- Private\Read-VellumPdfInput.ps1
- Private\Assert-VellumPdfDocumentOpen.ps1
- Public\Protect-VellumPdfDocument.ps1
- lib\VellumPdf.Reader.dll
- Private\Assert-VellumPdfLanguageTag.ps1
- Private\Invoke-VellumPdfTagged.ps1
- Public\Add-VellumPdfBarcode.ps1
- lib\VellumPdf.Conformance.dll
- Private\Write-VellumPdfUntaggedWarning.ps1
- Private\Get-VellumPdfPage.ps1
- Public\Set-VellumPdfHeader.ps1
- lib\VellumPdf.Fonts.Standard14.dll
- Private\Get-VellumPdfPageCanvas.ps1
- Private\Write-VellumPdfRgbIntentWarning.ps1
- Public\Add-VellumPdfPageTable.ps1
- Private\Write-VellumPdfEncodingWarning.ps1
- Private\Get-VellumPdfNumberShape.ps1
- Private\ConvertFrom-VellumPdfNumberText.ps1
- Public\Export-VellumPdfImage.ps1
- Private\Get-VellumPdfBlockVariable.ps1
- Private\Resolve-VellumPdfValidSetValue.ps1
- Private\New-VellumTextStyle.ps1
- Public\Add-VellumPdfFormField.ps1
- Private\ConvertTo-VellumColor.ps1
- Private\Complete-VellumPdfPageDocument.ps1
- Public\Invoke-VellumPdfCanvas.ps1
- Public\Set-VellumPdfFooter.ps1
- Private\Set-VellumPdfElementMargin.ps1
- Private\Write-VellumPdfPageBand.ps1
- Public\Add-VellumPdfPath.ps1
- Public\Get-VellumPdfText.ps1
- Private\Test-VellumPdfLinkUri.ps1
- Private\Register-VellumPdfIccSpace.ps1
- Public\Add-VellumPdfText.ps1
- Public\Use-VellumPdfStructure.ps1
- Private\Get-VellumPdfNumberHint.ps1
- Private\Get-VellumPdfPageFont.ps1
- Public\Add-VellumPdfParagraph.ps1
- Public\New-VellumPdfPageDocument.ps1
- Private\Open-VellumPdfReader.ps1
- Private\ConvertTo-VellumPdfText.ps1
- Public\Set-VellumPdfPageBand.ps1
- Public\Add-VellumPdfHeading.ps1
- Private\ConvertTo-VellumInsets.ps1
- Private\New-VellumPdfTextSlot.ps1
- Public\Set-VellumPdfOutputIntent.ps1
- Public\Test-VellumPdfConformance.ps1
- Private\Write-VellumPdfSaveDiagnostic.ps1
- Private\Assert-VellumPdfIccOutputIntent.ps1
- Public\Add-VellumPdfOutlineEntry.ps1
- Public\Add-VellumPdfLink.ps1
- Private\Assert-VellumPdfFontHandle.ps1
- Private\Assert-VellumPdfMeasurableFont.ps1
- Public\Add-VellumPdfPageList.ps1
- Public\Unprotect-VellumPdfDocument.ps1
- Private\Get-VellumPdfIccComponentCount.ps1
- Private\Split-VellumPdfTextLine.ps1
- Public\New-VellumPdfDocument.ps1
- Public\New-VellumPdfTextRun.ps1
- Private\New-VellumPdfErrorRecord.ps1
- Private\Pop-VellumPdfScopePage.ps1
- Public\Add-VellumPdfTable.ps1
- Public\Use-VellumPdfClip.ps1
- Private\Get-VellumPdfInput.ps1
- Private\Write-VellumPdfPathOp.ps1
- Public\Add-VellumPdfShape.ps1
- Public\Save-VellumPdfDocument.ps1
- Private\Measure-VellumPdfTextWidth.ps1
- Private\Write-VellumPdfLinkConformanceWarning.ps1
- Public\Measure-VellumPdfText.ps1
- Public\Add-VellumPdfPieChart.ps1
- Private\Pop-VellumPdfStructParent.ps1
- Private\Write-VellumPdfFileError.ps1
- Public\Add-VellumPdfElement.ps1
- Public\Set-VellumPdfSignature.ps1
- Private\Test-VellumPdfWinAnsiChar.ps1
- Private\Resolve-VellumPdfPageNumber.ps1
- Public\Add-VellumPdfPageBarcode.ps1
- Public\Add-VellumPdfGradient.ps1
- Private\Resolve-VellumPdfDefault.ps1
- Private\ConvertTo-VellumPdfFileError.ps1
- Public\Add-VellumPdfList.ps1
- Public\Use-VellumPdfTransform.ps1