Class: BbEPUB::Transform::OCF
- Inherits:
-
Bookbinder::Transform
- Object
- Bookbinder::Transform
- BbEPUB::Transform::OCF
- Defined in:
- lib/bb-epub/transform/ocf.rb
Constant Summary collapse
- OCF_PATH =
'META-INF/container.xml'
Instance Method Summary collapse
- #from_map(package) ⇒ Object
-
#to_map(package) ⇒ Object
No dependencies! Something has to have no dependencies, after all.
Instance Method Details
#from_map(package) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/bb-epub/transform/ocf.rb', line 16 def from_map(package) package.file_aliases[:ocf] = OCF_PATH package.file_aliases[:opf] = 'book.opf' opf_file = package.file(:opf) package.file(:ocf, false).new_xml_document { |doc, x| x.container('version' => '1.0') { doc.add_node_namespace(x.parent, 'ocf', true) x.rootfiles { x.rootfile( 'full-path' => opf_file.path, 'media-type' => opf_file.media_type ) } } } end |
#to_map(package) ⇒ Object
No dependencies! Something has to have no dependencies, after all.
7 8 9 10 11 12 13 |
# File 'lib/bb-epub/transform/ocf.rb', line 7 def to_map(package) package.file_aliases[:ocf] = OCF_PATH ocf = package.file(:ocf, false) opf_path = ocf.document('r').find('ocf|rootfile')['full-path'] package.file_aliases[:opf] = File.basename(opf_path) package.content_root = File.dirname(opf_path).sub(/^\./, '') end |