metanorma-unece 0.2.8 → 0.2.9
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 +4 -4
- data/lib/asciidoctor/unece/basicdoc.rng +5 -4
- data/lib/asciidoctor/unece/biblio.rng +3 -0
- data/lib/asciidoctor/unece/converter.rb +5 -0
- data/lib/isodoc/unece.rb +1 -0
- data/lib/isodoc/unece/html/scripts.pdf.html +72 -0
- data/lib/isodoc/unece/html/unece.scss +0 -16
- data/lib/isodoc/unece/html/wordstyle.scss +37 -105
- data/lib/isodoc/unece/html_convert.rb +5 -5
- data/lib/isodoc/unece/metadata.rb +2 -0
- data/lib/isodoc/unece/pdf_convert.rb +132 -0
- data/lib/isodoc/unece/word_convert.rb +4 -4
- data/lib/metanorma/unece/processor.rb +3 -0
- data/lib/metanorma/unece/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bdb5f95d47c9db88bf4a33313dc66f5064eca19a5005165e539a393fed984534
|
4
|
+
data.tar.gz: efc6015774feab34665ca9e6e35b2331675b88710c8805e840dacae1f4cf6fb7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e5d100882e8c8a963b0b568a3ca3ab287f2d2bd45f2c9152492d6d06357ffb493eb8db7caa8a705890fd0430bc78c1bc2b4fc5dd3a527291fe092ace741ef6bc
|
7
|
+
data.tar.gz: 8e7b0e98c4940fa509687463420f53f8d08bbabee615d65d928478b5b226df7f887a1fda82762afb2ea024eaeecdb7615622b9336b721877dd5d758aeb73fc23
|
@@ -1,9 +1,10 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
3
|
-
<include href="biblio.rng"
|
4
|
-
|
5
|
-
|
6
|
-
|
3
|
+
<include href="biblio.rng">
|
4
|
+
<start>
|
5
|
+
<ref name="document"/>
|
6
|
+
</start>
|
7
|
+
</include>
|
7
8
|
<define name="document">
|
8
9
|
<element name="document">
|
9
10
|
<optional>
|
@@ -33,6 +33,9 @@
|
|
33
33
|
<param name="pattern">([\+\-]?\d{4})((-?)((0[1-9]|1[0-2])((-?)([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6]))))?</param>
|
34
34
|
</data>
|
35
35
|
</define>
|
36
|
+
<start>
|
37
|
+
<ref name="relaton_collection"/>
|
38
|
+
</start>
|
36
39
|
<define name="status">
|
37
40
|
<element name="status">
|
38
41
|
<ref name="stage"/>
|
@@ -150,6 +150,7 @@ module Asciidoctor
|
|
150
150
|
File.open(filename, "w") { |f| f.write(ret) }
|
151
151
|
html_converter(node).convert filename unless node.attr("nodoc")
|
152
152
|
word_converter(node).convert filename unless node.attr("nodoc")
|
153
|
+
pdf_converter(node).convert filename unless node.attr("nodoc")
|
153
154
|
end
|
154
155
|
@files_to_delete.each { |f| FileUtils.rm f }
|
155
156
|
ret
|
@@ -181,6 +182,10 @@ module Asciidoctor
|
|
181
182
|
IsoDoc::Unece::WordConvert.new(doc_extract_attributes(node))
|
182
183
|
end
|
183
184
|
|
185
|
+
def pdf_converter(node)
|
186
|
+
IsoDoc::Unece::PdfConvert.new(doc_extract_attributes(node))
|
187
|
+
end
|
188
|
+
|
184
189
|
def sections_cleanup(xmldoc)
|
185
190
|
super
|
186
191
|
xmldoc.xpath("//clause/p | //annex/p").each do |p|
|
data/lib/isodoc/unece.rb
CHANGED
@@ -0,0 +1,72 @@
|
|
1
|
+
<script>
|
2
|
+
//TOC generation
|
3
|
+
$('#toc').toc({
|
4
|
+
'selectors': toclevel(), //elements to use as headings
|
5
|
+
'container': 'main', //element to find all selectors in
|
6
|
+
'smoothScrolling': true, //enable or disable smooth scrolling on click
|
7
|
+
'prefix': 'toc', //prefix for anchor tags and class names
|
8
|
+
'onHighlight': function(el) {}, //called when a new section is highlighted
|
9
|
+
'highlightOnScroll': false, //add class to heading that is currently in focus
|
10
|
+
'highlightOffset': 100, //offset to trigger the next headline
|
11
|
+
'anchorName': function(i, heading, prefix) { //custom function for anchor name
|
12
|
+
return prefix+i;
|
13
|
+
},
|
14
|
+
'headerText': function(i, heading, $heading) { //custom function building the header-item text
|
15
|
+
return $heading.text();
|
16
|
+
},
|
17
|
+
'itemClass': function(i, heading, $heading, prefix) { // custom function for item class
|
18
|
+
return $heading[0].tagName.toLowerCase();
|
19
|
+
}
|
20
|
+
});
|
21
|
+
|
22
|
+
</script>
|
23
|
+
|
24
|
+
<script>
|
25
|
+
//TOC toggle animation
|
26
|
+
$('#toggle').on('click', function(){
|
27
|
+
if( $('nav').is(':visible') ) {
|
28
|
+
$('nav').animate({ 'left': '-353px' }, 'slow', function(){
|
29
|
+
$('nav').hide();
|
30
|
+
});
|
31
|
+
$('.container').animate({ 'padding-left': '31px' }, 'slow');
|
32
|
+
}
|
33
|
+
else {
|
34
|
+
$('nav').show();
|
35
|
+
$('nav').animate({ 'left': '0px' }, 'slow');
|
36
|
+
$('.container').animate({ 'padding-left': '360px' }, 'slow');
|
37
|
+
}
|
38
|
+
});
|
39
|
+
</script>
|
40
|
+
|
41
|
+
<script>
|
42
|
+
// Scroll to top button
|
43
|
+
window.onscroll = function() {scrollFunction()};
|
44
|
+
|
45
|
+
function scrollFunction() {
|
46
|
+
if (document.body.scrollTop > 100 || document.documentElement.scrollTop > 100) {
|
47
|
+
document.getElementById("myBtn").style.display = "block";
|
48
|
+
} else {
|
49
|
+
document.getElementById("myBtn").style.display = "none";
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
// When the user clicks on the button, scroll to the top of the document
|
54
|
+
function topFunction() {
|
55
|
+
document.body.scrollTop = 0;
|
56
|
+
document.documentElement.scrollTop = 0;
|
57
|
+
}
|
58
|
+
</script>
|
59
|
+
|
60
|
+
<script>
|
61
|
+
/*
|
62
|
+
$(document).ready(function() {
|
63
|
+
$('[id^=toc]').each(function ()
|
64
|
+
{
|
65
|
+
var currentToc = $(this);
|
66
|
+
var url = window.location.href;
|
67
|
+
currentToc.wrap("<a href='" + url + "#" + currentToc.attr("id") + "' </a>");
|
68
|
+
});
|
69
|
+
});
|
70
|
+
*/
|
71
|
+
</script>
|
72
|
+
|
@@ -591,10 +591,6 @@ div.WordSection2
|
|
591
591
|
}
|
592
592
|
div.WordSection3
|
593
593
|
{page:WordSection3;}
|
594
|
-
ol
|
595
|
-
{margin-bottom:0cm;}
|
596
|
-
ul
|
597
|
-
{margin-bottom:0cm;}
|
598
594
|
table.MsoISOTable
|
599
595
|
{mso-style-name:"Table ISO";
|
600
596
|
mso-tstyle-rowband-size:0;
|
@@ -616,8 +612,6 @@ table.MsoISOTable
|
|
616
612
|
margin-bottom:12pt;
|
617
613
|
font-size:10.0pt;
|
618
614
|
font-family:$bodyfont;}
|
619
|
-
table.MsoISOTable tr
|
620
|
-
{page-break-inside:avoid;}
|
621
615
|
table.MsoISOTable th
|
622
616
|
{border:solid windowtext 1pt;
|
623
617
|
mso-border-alt:solid windowtext 1pt;
|
@@ -645,20 +639,10 @@ table.MsoTableGrid
|
|
645
639
|
margin-bottom:12pt;
|
646
640
|
font-size:10.0pt;
|
647
641
|
font-family:$bodyfont;}
|
648
|
-
td { page-break-inside:avoid; }
|
649
|
-
tr { page-break-after:avoid; }
|
650
|
-
span.stem
|
651
|
-
{font-family:"Cambria Math",serif;
|
652
|
-
mso-ascii-font-family:"Cambria Math";
|
653
|
-
font-style:
|
654
|
-
italic;}
|
655
642
|
div.formula
|
656
643
|
{tab-stops:right 487.45pt;}
|
657
644
|
body
|
658
645
|
{tab-interval:36.0pt;}
|
659
|
-
dt
|
660
|
-
{page-break-inside:avoid;
|
661
|
-
page-break-after:avoid}
|
662
646
|
.coverpage_docnumber
|
663
647
|
{text-align:center;
|
664
648
|
font-size:14.0pt;
|
@@ -1058,106 +1058,44 @@ p.Tablebody, li.Tablebody, div.Tablebody
|
|
1058
1058
|
mso-level-number-position:left;
|
1059
1059
|
margin-left:162.0pt;
|
1060
1060
|
text-indent:-18.0pt;}
|
1061
|
-
p.ListContLevel1, li.ListContLevel1, div.ListContLevel1
|
1062
|
-
{mso-style-priority:34;
|
1063
|
-
margin-top:0cm;
|
1064
|
-
margin-left:18.0pt;
|
1065
|
-
margin-right:0cm;
|
1066
|
-
margin-bottom:12.0pt;
|
1067
|
-
mso-pagination:widow-orphan;
|
1068
|
-
font-size:11.0pt;
|
1069
|
-
font-family:$bodyfont;
|
1070
|
-
mso-ansi-language:EN-AU;
|
1071
|
-
mso-fareast-language:EN-US;}
|
1072
|
-
p.ListContLevel2, li.ListContLevel2, div.ListContLevel2
|
1073
|
-
{mso-style-priority:34;
|
1074
|
-
margin-top:0cm;
|
1075
|
-
margin-left:36.0pt;
|
1076
|
-
margin-right:0cm;
|
1077
|
-
margin-bottom:12.0pt;
|
1078
|
-
mso-pagination:widow-orphan;
|
1079
|
-
font-size:11.0pt;
|
1080
|
-
font-family:$bodyfont;
|
1081
|
-
mso-ansi-language:EN-AU;
|
1082
|
-
mso-fareast-language:EN-US;}
|
1083
|
-
p.ListContLevel3, li.ListContLevel3, div.ListContLevel3
|
1084
|
-
{mso-style-priority:34;
|
1085
|
-
margin-top:0cm;
|
1086
|
-
margin-left:54.0pt;
|
1087
|
-
margin-right:0cm;
|
1088
|
-
margin-bottom:12.0pt;
|
1089
|
-
mso-pagination:widow-orphan;
|
1090
|
-
font-size:11.0pt;
|
1091
|
-
font-family:$bodyfont;
|
1092
|
-
mso-ansi-language:EN-AU;
|
1093
|
-
mso-fareast-language:EN-US;}
|
1094
|
-
p.ListContLevel4, li.ListContLevel4, div.ListContLevel4
|
1095
|
-
{mso-style-priority:34;
|
1096
|
-
margin-top:0cm;
|
1097
|
-
margin-left:72.0pt;
|
1098
|
-
margin-right:0cm;
|
1099
|
-
margin-bottom:12.0pt;
|
1100
|
-
mso-pagination:widow-orphan;
|
1101
|
-
font-size:11.0pt;
|
1102
|
-
font-family:$bodyfont;
|
1103
|
-
mso-ansi-language:EN-AU;
|
1104
|
-
mso-fareast-language:EN-US;}
|
1105
|
-
p.ListContLevel5, li.ListContLevel5, div.ListContLevel5
|
1106
|
-
{mso-style-priority:34;
|
1107
|
-
margin-top:0cm;
|
1108
|
-
margin-left:90.0pt;
|
1109
|
-
margin-right:0cm;
|
1110
|
-
margin-bottom:12.0pt;
|
1111
|
-
mso-pagination:widow-orphan;
|
1112
|
-
font-size:11.0pt;
|
1113
|
-
font-family:$bodyfont;
|
1114
|
-
mso-ansi-language:EN-AU;
|
1115
|
-
mso-fareast-language:EN-US;}
|
1116
|
-
p.ListContLevel6, li.ListContLevel6, div.ListContLevel6
|
1117
|
-
{mso-style-priority:34;
|
1118
|
-
margin-top:0cm;
|
1119
|
-
margin-left:108.0pt;
|
1120
|
-
margin-right:0cm;
|
1121
|
-
margin-bottom:12.0pt;
|
1122
|
-
mso-pagination:widow-orphan;
|
1123
|
-
font-size:11.0pt;
|
1124
|
-
font-family:$bodyfont;
|
1125
|
-
mso-ansi-language:EN-AU;
|
1126
|
-
mso-fareast-language:EN-US;}
|
1127
|
-
p.ListContLevel7, li.ListContLevel7, div.ListContLevel7
|
1128
|
-
{mso-style-priority:34;
|
1129
|
-
margin-top:0cm;
|
1130
|
-
margin-left:126.0pt;
|
1131
|
-
margin-right:0cm;
|
1132
|
-
margin-bottom:12.0pt;
|
1133
|
-
mso-pagination:widow-orphan;
|
1134
|
-
font-size:11.0pt;
|
1135
|
-
font-family:$bodyfont;
|
1136
|
-
mso-ansi-language:EN-AU;
|
1137
|
-
mso-fareast-language:EN-US;}
|
1138
|
-
p.ListContLevel8, li.ListContLevel8, div.ListContLevel8
|
1139
|
-
{mso-style-priority:34;
|
1140
|
-
margin-top:0cm;
|
1141
|
-
margin-left:144.0pt;
|
1142
|
-
margin-right:0cm;
|
1143
|
-
margin-bottom:12.0pt;
|
1144
|
-
mso-pagination:widow-orphan;
|
1145
|
-
font-size:11.0pt;
|
1146
|
-
font-family:$bodyfont;
|
1147
|
-
mso-ansi-language:EN-AU;
|
1148
|
-
mso-fareast-language:EN-US;}
|
1149
|
-
p.ListContLevel9, li.ListContLevel9, div.ListContLevel9
|
1150
|
-
{mso-style-priority:34;
|
1151
|
-
margin-top:0cm;
|
1152
|
-
margin-left:162.0pt;
|
1153
|
-
margin-right:0cm;
|
1154
|
-
margin-bottom:12.0pt;
|
1155
|
-
mso-pagination:widow-orphan;
|
1156
|
-
font-size:11.0pt;
|
1157
|
-
font-family:$bodyfont;
|
1158
|
-
mso-ansi-language:EN-AU;
|
1159
|
-
mso-fareast-language:EN-US;}
|
1160
1061
|
|
1062
|
+
div.ListContLevel1
|
1063
|
+
{mso-style-priority:34;
|
1064
|
+
margin-left:18.0pt;
|
1065
|
+
margin-right:0cm;}
|
1066
|
+
div.ListContLevel2
|
1067
|
+
{mso-style-priority:34;
|
1068
|
+
margin-top:0cm;
|
1069
|
+
margin-left:36.0pt;
|
1070
|
+
margin-right:0cm;}
|
1071
|
+
div.ListContLevel3
|
1072
|
+
{mso-style-priority:34;
|
1073
|
+
margin-left:54.0pt;
|
1074
|
+
margin-right:0cm;}
|
1075
|
+
div.ListContLevel4
|
1076
|
+
{mso-style-priority:34;
|
1077
|
+
margin-left:72.0pt;
|
1078
|
+
margin-right:0cm;}
|
1079
|
+
div.ListContLevel5
|
1080
|
+
{mso-style-priority:34;
|
1081
|
+
margin-left:90.0pt;
|
1082
|
+
margin-right:0cm;}
|
1083
|
+
div.ListContLevel6
|
1084
|
+
{mso-style-priority:34;
|
1085
|
+
margin-left:108.0pt;
|
1086
|
+
margin-right:0cm;}
|
1087
|
+
div.ListContLevel7
|
1088
|
+
{mso-style-priority:34;
|
1089
|
+
margin-left:126.0pt;
|
1090
|
+
margin-right:0cm;}
|
1091
|
+
div.ListContLevel8
|
1092
|
+
{mso-style-priority:34;
|
1093
|
+
margin-left:144.0pt;
|
1094
|
+
margin-right:0cm;}
|
1095
|
+
div.ListContLevel9
|
1096
|
+
{mso-style-priority:34;
|
1097
|
+
margin-left:162.0pt;
|
1098
|
+
margin-right:0cm;}
|
1161
1099
|
|
1162
1100
|
table.MsoNormalTable
|
1163
1101
|
{mso-style-name:"Table Normal";
|
@@ -1172,12 +1110,6 @@ table.MsoNormalTable
|
|
1172
1110
|
mso-pagination:widow-orphan;
|
1173
1111
|
font-size:10.0pt;
|
1174
1112
|
font-family:$bodyfont;}
|
1175
|
-
br.section
|
1176
|
-
{page-break-before:always;
|
1177
|
-
mso-break-type:section-break;}
|
1178
|
-
br.pagebreak
|
1179
|
-
{page-break-before:always;
|
1180
|
-
mso-special-character:line-break;}
|
1181
1113
|
ol
|
1182
1114
|
{margin-bottom:0cm;
|
1183
1115
|
margin-left:18pt;}
|
@@ -13,11 +13,11 @@ module IsoDoc
|
|
13
13
|
super
|
14
14
|
end
|
15
15
|
|
16
|
-
def convert1(docxml, filename, dir)
|
17
|
-
FileUtils.cp html_doc_path('logo.jpg'), File.join(@localdir, "logo.jpg")
|
18
|
-
|
19
|
-
super
|
20
|
-
end
|
16
|
+
#def convert1(docxml, filename, dir)
|
17
|
+
#FileUtils.cp html_doc_path('logo.jpg'), File.join(@localdir, "logo.jpg")
|
18
|
+
#@files_to_delete << File.join(@localdir, "logo.jpg")
|
19
|
+
#super
|
20
|
+
#end
|
21
21
|
|
22
22
|
def default_fonts(options)
|
23
23
|
{
|
@@ -0,0 +1,132 @@
|
|
1
|
+
require_relative "base_convert"
|
2
|
+
require "isodoc"
|
3
|
+
|
4
|
+
module IsoDoc
|
5
|
+
module Unece
|
6
|
+
|
7
|
+
# A {Converter} implementation that generates HTML output, and a document
|
8
|
+
# schema encapsulation of the document for validation
|
9
|
+
#
|
10
|
+
class PdfConvert < IsoDoc::PdfConvert
|
11
|
+
def initialize(options)
|
12
|
+
@libdir = File.dirname(__FILE__)
|
13
|
+
super
|
14
|
+
end
|
15
|
+
|
16
|
+
#def convert1(docxml, filename, dir)
|
17
|
+
#FileUtils.cp html_doc_path('logo.jpg'), File.join(@localdir, "logo.jpg")
|
18
|
+
#@files_to_delete << File.join(@localdir, "logo.jpg")
|
19
|
+
#super
|
20
|
+
#end
|
21
|
+
|
22
|
+
def default_fonts(options)
|
23
|
+
{
|
24
|
+
bodyfont: (
|
25
|
+
options[:script] == "Hans" ?
|
26
|
+
'"SimSun",serif' :
|
27
|
+
'"Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif'
|
28
|
+
),
|
29
|
+
headerfont: (
|
30
|
+
options[:script] == "Hans" ?
|
31
|
+
'"SimHei",sans-serif' :
|
32
|
+
'"Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif'
|
33
|
+
),
|
34
|
+
monospacefont: '"Space Mono",monospace'
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
def default_file_locations(_options)
|
39
|
+
{
|
40
|
+
htmlstylesheet: html_doc_path("htmlstyle.scss"),
|
41
|
+
htmlcoverpage: html_doc_path("html_unece_titlepage.html"),
|
42
|
+
htmlintropage: html_doc_path("html_unece_intro.html"),
|
43
|
+
scripts: html_doc_path("scripts.pdf.html"),
|
44
|
+
}
|
45
|
+
end
|
46
|
+
|
47
|
+
|
48
|
+
def googlefonts
|
49
|
+
<<~HEAD.freeze
|
50
|
+
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i|Space+Mono:400,700" rel="stylesheet">
|
51
|
+
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,500,700,900" rel="stylesheet">
|
52
|
+
HEAD
|
53
|
+
end
|
54
|
+
|
55
|
+
def make_body(xml, docxml)
|
56
|
+
plenary = docxml.at(ns("//bibdata/ext[doctype = 'plenary']"))
|
57
|
+
body_attr = { lang: "EN-US", link: "blue", vlink: "#954F72", "xml:lang": "EN-US", class: "container" }
|
58
|
+
if plenary && @htmlcoverpage == html_doc_path("html_unece_titlepage.html")
|
59
|
+
@htmlcoverpage = html_doc_path("html_unece_plenary_titlepage.html")
|
60
|
+
end
|
61
|
+
#@htmlintropage = nil if plenary
|
62
|
+
xml.body **body_attr do |body|
|
63
|
+
make_body1(body, docxml)
|
64
|
+
make_body2(body, docxml)
|
65
|
+
make_body3(body, docxml)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def make_body3(body, docxml)
|
70
|
+
body.div **{ class: "main-section" } do |div3|
|
71
|
+
abstract docxml, div3
|
72
|
+
foreword docxml, div3
|
73
|
+
introduction docxml, div3
|
74
|
+
middle docxml, div3
|
75
|
+
footnotes div3
|
76
|
+
comments div3
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
def html_preface(docxml)
|
81
|
+
super
|
82
|
+
docxml
|
83
|
+
end
|
84
|
+
|
85
|
+
def middle(isoxml, out)
|
86
|
+
clause isoxml, out
|
87
|
+
annex isoxml, out
|
88
|
+
bibliography isoxml, out
|
89
|
+
end
|
90
|
+
|
91
|
+
def clause_parse_title(node, div, c1, out)
|
92
|
+
if node["inline-header"] == "true"
|
93
|
+
inline_header_title(out, node, c1)
|
94
|
+
else
|
95
|
+
div.send "h#{anchor(node['id'], :level) || '1'}" do |h|
|
96
|
+
lbl = anchor(node['id'], :label, false)
|
97
|
+
h << "#{lbl}. " if lbl && !@suppressheadingnumbers
|
98
|
+
insert_tab(h, 1) if lbl && !@suppressheadingnumbers
|
99
|
+
c1&.children&.each { |c2| parse(c2, h) }
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
def introduction(isoxml, out)
|
105
|
+
f = isoxml.at(ns("//introduction")) || return
|
106
|
+
page_break(out)
|
107
|
+
out.div **{ class: "Section3", id: f["id"] } do |div|
|
108
|
+
div.h1(**{ class: "IntroTitle" }) do |h1|
|
109
|
+
h1 << @introduction_lbl
|
110
|
+
end
|
111
|
+
f.elements.each do |e|
|
112
|
+
parse(e, div) unless e.name == "title"
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def foreword(isoxml, out)
|
118
|
+
f = isoxml.at(ns("//foreword")) || return
|
119
|
+
page_break(out)
|
120
|
+
out.div **attr_code(id: f["id"]) do |s|
|
121
|
+
s.h1(**{ class: "ForewordTitle" }) do |h1|
|
122
|
+
h1 << @foreword_lbl
|
123
|
+
end
|
124
|
+
f.elements.each { |e| parse(e, s) unless e.name == "title" }
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
include BaseConvert
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
@@ -13,10 +13,10 @@ module IsoDoc
|
|
13
13
|
@toc = options[:toc]
|
14
14
|
end
|
15
15
|
|
16
|
-
def convert1(docxml, filename, dir)
|
17
|
-
FileUtils.cp html_doc_path('logo.jpg'), File.join(@localdir, "logo.jpg")
|
18
|
-
super
|
19
|
-
end
|
16
|
+
#def convert1(docxml, filename, dir)
|
17
|
+
#FileUtils.cp html_doc_path('logo.jpg'), File.join(@localdir, "logo.jpg")
|
18
|
+
#super
|
19
|
+
#end
|
20
20
|
|
21
21
|
def default_fonts(options)
|
22
22
|
{
|
@@ -14,6 +14,7 @@ module Metanorma
|
|
14
14
|
super.merge(
|
15
15
|
html: "html",
|
16
16
|
doc: "doc",
|
17
|
+
pdf: "pdf",
|
17
18
|
)
|
18
19
|
end
|
19
20
|
|
@@ -31,6 +32,8 @@ module Metanorma
|
|
31
32
|
IsoDoc::Unece::HtmlConvert.new(options).convert(outname, isodoc_node)
|
32
33
|
when :doc
|
33
34
|
IsoDoc::Unece::WordConvert.new(options).convert(outname, isodoc_node)
|
35
|
+
when :pdf
|
36
|
+
IsoDoc::Unece::PdfConvert.new(options).convert(outname, isodoc_node)
|
34
37
|
else
|
35
38
|
super
|
36
39
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-unece
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-11-
|
11
|
+
date: 2019-11-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: htmlentities
|
@@ -303,6 +303,7 @@ files:
|
|
303
303
|
- lib/isodoc/unece/html/htmlstyle.scss
|
304
304
|
- lib/isodoc/unece/html/logo.jpg
|
305
305
|
- lib/isodoc/unece/html/scripts.html
|
306
|
+
- lib/isodoc/unece/html/scripts.pdf.html
|
306
307
|
- lib/isodoc/unece/html/unece.scss
|
307
308
|
- lib/isodoc/unece/html/word_unece_intro.html
|
308
309
|
- lib/isodoc/unece/html/word_unece_plenary_titlepage.html
|
@@ -310,6 +311,7 @@ files:
|
|
310
311
|
- lib/isodoc/unece/html/wordstyle.scss
|
311
312
|
- lib/isodoc/unece/html_convert.rb
|
312
313
|
- lib/isodoc/unece/metadata.rb
|
314
|
+
- lib/isodoc/unece/pdf_convert.rb
|
313
315
|
- lib/isodoc/unece/word_convert.rb
|
314
316
|
- lib/metanorma-unece.rb
|
315
317
|
- lib/metanorma/unece.rb
|