Class: Pdfrb::Model::Type::Metadata
Overview
Metadata stream (s14.3.2, PDF 2.0 App Note 003). XMP payload.
Has /Type /Metadata, /Subtype /XML.
Instance Attribute Summary
Attributes inherited from Cos::Stream
#stream
Attributes inherited from Object
#document, #gen, #oid, #value
Instance Method Summary
collapse
Methods inherited from Cos::Stream
#decoded_stream, #encoded_stream=, #initialize
#[], #[]=, arlington_available?, arlington_default, arlington_key_to_symbol, arlington_loaded_for?, arlington_mark_loaded, arlington_object, arlington_one_type_to_ruby, arlington_required?, arlington_types_to_ruby, arlington_version, define_field, define_field_from_arlington, #delete, #each, each_field, #each_raw, #empty?, field, #initialize, #key?, #keys, lookup_type, own_fields, #pdf_type, register_type, type_map, #validate
Methods inherited from Object
#==, define_type, #deref, #indirect?, #initialize, #must_be_indirect?, #pdf_type, pdf_type
Instance Method Details
#associated_files ⇒ Object
15
|
# File 'lib/pdfrb/model/type/metadata.rb', line 15
def associated_files; self[:AF]; end
|
14
|
# File 'lib/pdfrb/model/type/metadata.rb', line 14
def filter; self[:Filter]; end
|
13
|
# File 'lib/pdfrb/model/type/metadata.rb', line 13
def subtype; self[:Subtype]; end
|
12
|
# File 'lib/pdfrb/model/type/metadata.rb', line 12
def type; self[:Type]; end
|
#xml? ⇒ Boolean
17
18
19
|
# File 'lib/pdfrb/model/type/metadata.rb', line 17
def xml?
subtype&.to_sym == :XML
end
|
#xmp? ⇒ Boolean
21
22
23
24
25
26
|
# File 'lib/pdfrb/model/type/metadata.rb', line 21
def xmp?
return false unless xml? && stream
data = stream.to_s
data.include?("<x:xmpmeta") || data.include?("xmlns:x=")
end
|
#xmp_packet? ⇒ Boolean
28
29
30
31
32
|
# File 'lib/pdfrb/model/type/metadata.rb', line 28
def xmp_packet?
return false unless stream
stream.to_s.include?("<?xpacket")
end
|
#xmp_string ⇒ Object
34
35
36
37
38
|
# File 'lib/pdfrb/model/type/metadata.rb', line 34
def xmp_string
return nil unless stream
stream.to_s.force_encoding(Encoding::UTF_8)
end
|