Class: Idml::Render::MetadataBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/idml/render/metadata_builder.rb

Overview

Builds the PDF Info-dict metadata hash by merging XMP-extracted values from META-INF/metadata.xml over sensible defaults. Extracted from Pipeline for SRP — Pipeline orchestrates rendering, this module owns metadata assembly.

Constant Summary collapse

XMP_PATH =
"META-INF/metadata.xml"

Instance Method Summary collapse

Constructor Details

#initialize(package) ⇒ MetadataBuilder



14
15
16
# File 'lib/idml/render/metadata_builder.rb', line 14

def initialize(package)
  @package = package
end

Instance Method Details

#buildObject

Returns a hash with Producer/CreationDate defaults, overridden by any XMP-supplied fields (Title, Author, Subject, Keywords, Creator, CreationDate, ModDate). XMP dates are converted from ISO 8601 to PDF D:YYYYMMDDHHmmss format.



22
23
24
# File 'lib/idml/render/metadata_builder.rb', line 22

def build
  defaults.merge(xmp_fields) { |_key, default, xmp| xmp || default }
end