MCPcopy Create free account
hub / github.com/LibPDF-js/core / getEmbeddedFileStream

Function getEmbeddedFileStream

src/attachments/file-spec.ts:136–158  ·  view source on GitHub ↗
(fileSpec: PdfDict, resolver: RefResolver)

Source from the content-addressed store, hash-verified

134 * @returns The stream if found, null if external reference or missing
135 */
136export function getEmbeddedFileStream(fileSpec: PdfDict, resolver: RefResolver): PdfStream | null {
137 // Get /EF (embedded file dictionary)
138 const ef = fileSpec.getDict("EF", resolver);
139
140 if (!ef) {
141 return null; // External file reference
142 }
143
144 // Get /F entry (or /UF) from EF dict - points to the stream
145 const streamRef = ef.getRef("F") ?? ef.getRef("UF");
146
147 if (!streamRef) {
148 return null;
149 }
150
151 const stream = resolver(streamRef);
152
153 if (stream instanceof PdfStream) {
154 return stream;
155 }
156
157 return null;
158}
159
160/**
161 * Parse a FileSpec dictionary into AttachmentInfo.

Callers 3

file-spec.test.tsFile · 0.90
getMethod · 0.90
parseFileSpecFunction · 0.85

Calls 3

resolverFunction · 0.70
getDictMethod · 0.65
getRefMethod · 0.45

Tested by

no test coverage detected