Skip to main content

parse_encoding_differences

Function parse_encoding_differences 

Source
pub fn parse_encoding_differences(
    arr: &Object,
) -> Result<EncodingDifferences, PdfError>
Expand description

Parse a /Differences array — flat [N name1 name2 … M nameK …].

Numeric tokens reset the running code; each successive name maps to the next consecutive code (running code is post-incremented). Tokens that are neither a number nor a Name are skipped silently — older acroread writers occasionally embed null or a comment-like reference in there and the spec mandates we tolerate that.

Returns Ok(EncodingDifferences::default()) for an empty array; returns Err only when the supplied Object isn’t an Array (the caller must have already pulled the array out of the encoding dictionary’s /Differences slot).