mrmanga 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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