mrmanga 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a649067cedb13d4434206c2cce4fff6319d01000
4
- data.tar.gz: 422e94b47b1f0a7dbe559017535d494e6f44f1fa
3
+ metadata.gz: 2d23b801dd6ae6826240c876de94c29bdcda7162
4
+ data.tar.gz: f4f27f1f5e9764905077a6deeb8c5faa99cb1e24
5
5
  SHA512:
6
- metadata.gz: b43d7dee10ee95e07b7d220e40a904d151662e9fe7eb5b8851420e23afd17758d6c0d24c4217a004221013d4a6b2fb794d02e65ee735d221965eaf417662c75d
7
- data.tar.gz: d8f725bfaba31d2919ca54ee308ec5bfcc82d0db14ffee6b13a8138ca100dc106a93259a24dd66a83b0ca505abf55c7c45aed953ad017382a2a810b48e511deb
6
+ metadata.gz: 4d001b7af719bde9ff4f6d479863d3c3d10e8303bada5206b5cc1a2e34be2144f89cfb39cb680444099181fd0ab135ffd7e03ac09a040cc37042b9c0afcd31c8
7
+ data.tar.gz: 1e7c693c8193af02f27b04f9026e6836228a617efaf41606f848031c3b7593e4c871e3249f9997619c33a4ff7ec071fb4a58c972ee3a4f78fb5eaf0cfead0d96
@@ -6,16 +6,26 @@ module Mrmanga
6
6
  def initialize(manga, volume, chapters)
7
7
  info = manga.info[:metadata].clone
8
8
 
9
- info[:Title] = "#{info[:Title]} Vol.#{volume}"
9
+ title = info[:Title]
10
+
11
+ info[:Title] = "#{title} Vol.#{volume}"
10
12
 
11
13
  doc = Prawn::Document.new(skip_page_creation: true, info: info)
12
14
 
15
+ outline_map = {}
16
+
17
+ total_page_counter = 0
18
+
13
19
  chapters.each do |ch, pages|
14
20
  puts "Chapter #{ch}"
15
21
 
22
+ outline_map[ch] = []
23
+
16
24
  pages.each do |page|
17
25
  doc.start_new_page(margin: 0, size: [page[:width], page[:height]], layout: :portrait)
18
26
 
27
+ outline_map[ch].push(total_page_counter += 1)
28
+
19
29
  begin
20
30
  doc.image(page[:file])
21
31
  rescue Prawn::Errors::UnsupportedImageType
@@ -31,7 +41,19 @@ module Mrmanga
31
41
  end
32
42
  end
33
43
 
34
- doc.render_file "#{manga.info[:info][:name]}/vol#{volume}.pdf"
44
+ doc.outline.define do
45
+ section info[:Title]
46
+
47
+ outline_map.each do |chapter, pages|
48
+ section "Chapter #{chapter}", destination: pages.first do
49
+ pages.each do |page_number|
50
+ page title: "Page #{page_number}", destination: page_number
51
+ end
52
+ end
53
+ end
54
+ end
55
+
56
+ doc.render_file "#{manga.info[:info][:name]}/#{title} Vol. #{volume}.pdf"
35
57
  end
36
58
  end
37
59
  end
@@ -1,3 +1,3 @@
1
1
  module Mrmanga
2
- VERSION = '0.1.0'.freeze
2
+ VERSION = '0.2.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mrmanga
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrey Viktorov