API Reference

Cmdlet

Join-OfficePdf

Namespace PSWriteOffice
Inputs
None
Outputs
System.IO.FileInfo OfficeIMO.Pdf.PdfMergeReport

Joins multiple PDF files into a single PDF.

Remarks

Joins multiple PDF files into a single PDF.

Examples

Authored help example

Join two PDFs in order.

PS>


$cover = '.\Examples\Documents\Cover.pdf'
            $report = '.\Examples\Documents\Report.pdf'
            Join-OfficePdf -Path $cover, $report -OutputPath .\Examples\Documents\Combined.pdf -PassThru
            Get-OfficePdfInfo -Path .\Examples\Documents\Combined.pdf | Select-Object PageCount
        

Writes a single PDF containing the input documents in the requested order, then checks the result.

Join encrypted sources and inspect the security decisions.

PS>


$result = Join-OfficePdf -Path .\Restricted.pdf, .\Appendix.pdf `
                -Password 'source-password', $null -IgnorePermissionRestrictions `
                -OutputPath .\Combined.pdf -PassThruReport
            $result.Sources | Select-Object SourceIndex, PasswordAuthenticationRole, PermissionRestrictionsIgnored
            $result.Decisions | Select-Object Structure, Mode, Action
        

A valid password remains mandatory. The explicit switch ignores usage flags after authentication and the report records every source decision.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.

Syntax

Join-OfficePdf [-FlattenVisualAnnotations] [-Height <Double>] [-IgnorePermissionRestrictions] [-Landscape] -OutputPath <String> [-PageSize <String>] [-PassThru] [-PassThruReport] [-Password <String[]>] -Path <String[]> [-ResizeMargin <Double>] [-ResizeMode <Fit|Fill|Stretch>] [-Width <Double>] [<CommonParameters>]
#
Parameter set: All Parameter Sets

Parameters

FlattenVisualAnnotations SwitchParameter optionalposition: namedpipeline: False
Flatten visual annotation appearances before merging.
Height Double optionalposition: namedpipeline: False
Custom output page height in points when -PageSize Custom is used.
IgnorePermissionRestrictions SwitchParameter optionalposition: namedpipeline: False
After successful password authentication, explicitly ignore owner-imposed usage restrictions such as copying or assembly. This does not discover, bypass, or crack a missing password.
Landscape SwitchParameter optionalposition: namedpipeline: False
Use the landscape orientation of the selected output page size.
OutputPath String requiredposition: 1pipeline: False
Output PDF path.
PageSize String optionalposition: namedpipeline: False
Resize each merged page to a known OfficeIMO page size such as A4, Letter, or Custom.
PassThru SwitchParameter optionalposition: namedpipeline: False
Emit the saved file.
PassThruReport SwitchParameter optionalposition: namedpipeline: False
Emit the per-source merge inventory, permission decisions, and output security readback.
Password String[] optionalposition: namedpipeline: False
Passwords used to authenticate encrypted sources. Supply one value for every source, or one value to reuse for all sources.
Path String[] requiredposition: 0pipeline: Falsealiases: FilePath
Input PDF paths in output order.
ResizeMargin Double optionalposition: namedpipeline: False
Margin, in points, reserved around resized page content.
ResizeMode PdfPageResizeMode optionalposition: namedpipeline: Falsevalues: 3
How source page content is fitted into the resized output page.
Possible values: Fit, Fill, Stretch
Width Double optionalposition: namedpipeline: False
Custom output page width in points when -PageSize Custom is used.

Outputs

System.IO.FileInfo, OfficeIMO.Pdf.PdfMergeReport