Content Streams and Optional Content Groups
With Quick PDF Library, we support Adobe’s Optional Content Groups (called layers within Acrobat and Adobe Reader) and also our own Quick PDF Library Layers.
What’s a Quick PDF Library layer I hear you ask?
Well, a page has one or more content streams. These are combined into one long string by a PDF viewer. When Quick PDF Library was first developed we called these content stream parts "layers" as they enabled you to move groups of things on top of and below other things. All the “layer” functions in Quick PDF Library work on these content stream parts.
In the 1.5 PDF specification, Adobe added Optional Content Groups. Unfortunately, within Adobe Acrobat and Adobe Reader, they decided to refer to these OCGs as Layers. You can access these within the Layers tab.
It's unfortunate that we have these conflicting terms – in the future, we will probably look to make some adjustments in Quick PDF Library to eliminate the confusion, however, for now, you will need to pay careful attention when working with these functions.
BalanceContentStreamCombineContentStreams
ContentStreamCount
ContentStreamSafe
DeleteContentStream
DeleteOptionalContentGroup
EditableContentStream
EncapsulateContentStream
GetContentStreamToString
GetContentStreamToVariant
GetOptionalContentConfigCount
GetOptionalContentConfigLocked
GetOptionalContentConfigOrderCount
GetOptionalContentConfigOrderItemID
GetOptionalContentConfigOrderItemLabel
GetOptionalContentConfigOrderItemLevel
GetOptionalContentConfigOrderItemType
GetOptionalContentConfigState
GetOptionalContentGroupID
GetOptionalContentGroupName
GetOptionalContentGroupPrintable
GetOptionalContentGroupVisible
MoveContentStream
NewContentStream
NewOptionalContentGroup
OptionalContentGroupCount
RemoveSharedContentStreams
SelectContentStream
SetAnnotOptional
SetCapturedPageOptional
SetCapturedPageTransparencyGroup
SetContentStreamFromString
SetContentStreamFromVariant
SetContentStreamOptional
SetFormFieldOptional
SetImageOptional
SetOptionalContentConfigLocked
SetOptionalContentConfigState
SetOptionalContentGroupName
SetOptionalContentGroupPrintable
SetOptionalContentGroupVisible
UseUnsafeContentStreams