Class: Pdfrb::Model::Type::EncryptionPublicKey
Overview
Public-key security handler encryption dict (s7.6.5.1).
Instance Attribute Summary
Attributes inherited from Object
#document, #gen, #oid, #value
Instance Method Summary
collapse
#[], #[]=, 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
#aes? ⇒ Boolean
44
45
46
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 44
def aes?
(version || 0) >= 4
end
|
15
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 15
def encrypt_metadata?; truthy?(self[:EncryptMetadata]); end
|
10
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 10
def filter; self[:Filter]; end
|
#key_length_bytes ⇒ Object
40
41
42
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 40
def key_length_bytes
((length || 40) / 8)
end
|
13
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 13
def length; self[:Length]; end
|
#public_key? ⇒ Boolean
17
18
19
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 17
def public_key?
filter&.to_sym == :AdobePubSec
end
|
#recipient_count ⇒ Object
33
34
35
36
37
38
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 33
def recipient_count
return 0 unless recipients
arr = recipients.is_a?(Pdfrb::Model::PdfArray) ? recipients.to_a : recipients
arr.is_a?(Array) ? arr.size : 0
end
|
#recipients ⇒ Object
14
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 14
def recipients; self[:Recipients]; end
|
#s2? ⇒ Boolean
21
22
23
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 21
def s2?
sub_filter&.to_sym == :S2
end
|
#s3? ⇒ Boolean
25
26
27
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 25
def s3?
sub_filter&.to_sym == :S3
end
|
#s4? ⇒ Boolean
29
30
31
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 29
def s4?
sub_filter&.to_sym == :S4
end
|
#sub_filter ⇒ Object
12
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 12
def sub_filter; self[:SubFilter]; end
|
11
|
# File 'lib/pdfrb/model/type/encryption_public_key.rb', line 11
def version; self[:V]; end
|