Zum Hauptinhalt springen

TransformPdfNodeConfiguration

Namespace: Meshmakers.Octo.MeshAdapter.Nodes.Transform

Configuration for TransformPdf@1. Assembles an output PDF from an ordered list of page operations (TransformPdfNodeConfiguration.OpsPath) over one or more source PDFs (an array of base64 strings at ). Each op selects a page from a source and optionally rotates and/or crops it; the op order defines the output page order, and pages not referenced by any op are dropped. This single contract covers rotate, crop, reorder, delete, split-select and merge (across sources) — the document page editor's server side (AB#4760).

public record TransformPdfNodeConfiguration : SourceTargetPathNodeConfiguration, INodeConfiguration, IEquatable<NodeConfiguration>, ITargetPathNodeConfiguration, IEquatable<TargetPathNodeConfiguration>, IPathNodeConfiguration, IEquatable<SourceTargetPathNodeConfiguration>, IEquatable<TransformPdfNodeConfiguration>

Inheritance Object → NodeConfiguration → TargetPathNodeConfiguration → SourceTargetPathNodeConfiguration → TransformPdfNodeConfiguration
Implements INodeConfiguration, IEquatable<NodeConfiguration>, ITargetPathNodeConfiguration, IEquatable<TargetPathNodeConfiguration>, IPathNodeConfiguration, IEquatable<SourceTargetPathNodeConfiguration>, IEquatable<TransformPdfNodeConfiguration>

Remarks:

The op shape read from TransformPdfNodeConfiguration.OpsPath is an array of { sourceIndex:int, pageIndex:int, rotate?:0|90|180|270, crop?:{ x, y, width, height } }:

sourceIndex — 0-based index into the base64 source array at Path.

pageIndex — 0-based page within that source.

rotate — clockwise degrees ADDED on top of the page's existing rotation.

crop — a rectangle normalized to [0,1], top-left origin, expressed in the page's FINAL displayed orientation (i.e. after the page's existing rotation plus rotate) — the same orientation the editor renders. Omitted / zero-size = no crop.

Properties​

OpsPath​

JSONPath of the ordered page-operation array. Each element selects a page from a source PDF (by sourceIndex/pageIndex) and optionally rotates/crops it. The op order is the output page order.

public string OpsPath { get; set; }

Property Value​

String

FailOnInvalidPdf​

When true, a source PDF that cannot be imported (encrypted, corrupt or an unsupported version) aborts the node as soon as an op references it. When false (default) ops referencing an unreadable source are skipped with a warning and the remaining pages are still assembled.

public bool FailOnInvalidPdf { get; set; }

Property Value​

Boolean

ContentLengthTargetPath​

Optional path to write the produced PDF's byte length to (as a long), for feeding a following CreateFileSystemUpdate@1.

public string ContentLengthTargetPath { get; set; }

Property Value​

String

OutputAsScratchFile​

When true, the produced PDF is written to the per-execution scratch space and receives a small ScratchFileReference (scratchFileToken + length) instead of a base64 string — keeping large PDFs off the JSON data context / LOH, exactly like MergePdf@1. Falls back to base64 when no scratch space is available. Default false.

public bool OutputAsScratchFile { get; set; }

Property Value​

Boolean

Path​

public string Path { get; set; }

Property Value​

String

TargetPath​

public string TargetPath { get; set; }

Property Value​

String

TargetValueWriteMode​

public TargetValueWriteModes TargetValueWriteMode { get; set; }

Property Value​

TargetValueWriteModes

TargetValueKind​

public ValueKinds TargetValueKind { get; set; }

Property Value​

ValueKinds

DocumentMode​

public DocumentModes DocumentMode { get; set; }

Property Value​

DocumentModes

Description​

public string Description { get; set; }

Property Value​

String

Constructors​

TransformPdfNodeConfiguration()​

public TransformPdfNodeConfiguration()