Class: IsoDoc::PdfConvert

Inherits:
Convert show all
Includes:
HtmlFunction::Comments, HtmlFunction::Footnotes, HtmlFunction::Html
Defined in:
lib/isodoc/pdf_convert.rb

Constant Summary

Constants included from HtmlFunction::Html

HtmlFunction::Html::MATHJAX, HtmlFunction::Html::MATHJAX_ADDR

Constants included from HtmlFunction::Comments

HtmlFunction::Comments::COMMENT_IN_COMMENT_LIST, HtmlFunction::Comments::COMMENT_TARGET_XREFS

Constants included from Function::XrefGen

Function::XrefGen::CHILD_EXAMPLES_XPATH, Function::XrefGen::CHILD_NOTES_XPATH, Function::XrefGen::SECTIONS_XPATH

Constants included from Function::Utils

Function::Utils::CLAUSE_ANCESTOR, Function::Utils::NOKOHEAD, Function::Utils::NOTE_CONTAINER_ANCESTOR

Constants included from Function::Table

Function::Table::SW

Constants included from Function::Section

Function::Section::MIDDLE_CLAUSE, Function::Section::TERM_CLAUSE

Constants included from Function::References

Function::References::BIBLIOGRAPHY_XPATH, Function::References::ISO_PUBLISHER_XPATH

Constants included from Function::Lists

Function::Lists::OL_STYLE

Constants included from Function::Cleanup

Function::Cleanup::FIGURE_WITH_FOOTNOTES

Constants included from Function::Blocks

Function::Blocks::EXAMPLE_TBL_ATTR

Instance Attribute Summary

Attributes inherited from Convert

#options

Instance Method Summary collapse

Methods included from HtmlFunction::Html

#datauri, #footnote_backlinks, #html_button, #html_cleanup, #html_cover, #html_footnote_filter, #html_head, #html_intro, #html_main, #html_preface, #html_toc, #htmlstyle, #htmlstylesheet, #make_body1, #make_body2, #make_body3, #mathjax, #move_image1, #move_images, #postprocess, #script_cdata, #term_header, #toHTML, #update_footnote_filter

Methods included from HtmlFunction::Footnotes

#footnote_parse, #footnotes, #get_table_ancestor_id, #make_footnote, #make_generic_footnote_text, #make_table_footnote_link, #make_table_footnote_target, #make_table_footnote_text, #table_footnote_parse

Methods included from HtmlFunction::Comments

#comment_attributes, #comment_cleanup, #comment_link_attrs, #comments, #embed_comment_in_comment_list, #get_comments_from_text, #in_comment, #insert_comment_cont, #make_comment_link, #make_comment_target, #make_comment_text, #move_comment_link_to_from, #move_comment_link_to_from1, #reorder_comments_by_comment_link, #review_note_parse, #skip_comment_wrap, #wrap_comment_cont

Methods inherited from Convert

#convert1, #convert_init, #default_file_locations, #default_fonts, #extract_fonts, #generate_css, #html_doc_path, #metadata_init

Methods included from ClassUtils

#date_range, #liquid, #ns

Methods included from Function::XrefSectGen

#annex_name_lbl, #annex_names, #annex_names1, #back_anchor_names, #clause_names, #initial_anchor_names, #middle_section_asset_names, #preface_clause_name, #preface_names, #preface_names1, #section_names, #section_names1

Methods included from Function::XrefGen

#anchor_names, #anchor_struct, #anchor_struct_label, #anchor_struct_xref, #example_anchor_names, #get_anchors, #hierarchical_asset_names, #hierarchical_figure_names, #list_anchor_names, #list_item_anchor_names, #listlabel, #note_anchor_names, #sequential_asset_names, #sequential_figure_names, #termexample_anchor_names, #termnote_anchor_names, #termnote_label

Methods included from Function::Utils

#attr_code, #date_range, #empty2nil, #extract_delims, #from_xhtml, #get_clause_id, #get_note_container_id, #header_strip, #insert_tab, #liquid, #noko, #ns, #populate_template, #sentence_join, #to_xhtml, #to_xhtml_fragment

Methods included from Function::ToWordHtml

#bookmark_parse, #define_head, #in_sourcecode, #info, #init_file, #make_body, #make_body1, #make_body2, #make_body3, #middle, #middle_title, #note?, #parse, #set_termdomain, #smallcap_parse, #text_parse, #tmpimagedir

Methods included from Function::Terms

#admitted_term_parse, #definition_parse, #deprecated_term_parse, #modification_parse, #para_then_remainder, #term_parse, #termdef_parse, #termdocsource_parse, #termnote_parse, #termref_parse

Methods included from Function::Table

#make_table_attr, #make_tr_attr, #table_parse, #table_title_parse, #tbody_parse, #tfoot_parse, #thead_parse, #tr_parse

Methods included from Function::Section

#annex, #annex_name, #clause, #clause_name, #clause_parse, #clause_parse_title, #external_terms_boilerplate, #foreword, #inline_header_title, #internal_external_terms_boilerplate, #introduction, #scope, #symbols_abbrevs, #symbols_parse, #term_defs_boilerplate, #term_defs_boilerplate_cont, #terms_defs, #terms_defs_title, #terms_parse

Methods included from Function::References

#biblio_list, #bibliography, #bibliography_parse, #date_note_process, #docid_l10n, #docid_prefix, #format_ref, #implicit_reference, #iso_bibitem_entry, #iso_bibitem_entry_attrs, #iso_bibitem_ref_code, #iso_title, #noniso_bibitem, #norm_ref, #norm_ref_preface, #omit_docid_prefix, #prefix_bracketed_ref, #ref_entry_code, #reference_format, #reference_names, #split_bibitems

Methods included from Function::Lists

#dl_parse, #dt_dd?, #dt_parse, #li_parse, #ol_depth, #ol_parse, #ol_style, #ul_parse

Methods included from Function::Inline

#anchor_linkend, #callout_parse, #eref_localities, #eref_parse, #error_parse, #get_linkend, #link_parse, #page_break, #prefix_container, #section_break, #stem_parse, #xref_parse

Methods included from Function::I18n

#eref_localities1, #eref_localities1_zh, #i18n_init, l10n

Methods included from Function::Cleanup

#admonition_cleanup, #cleanup, #example_cleanup, #extract_symbols_list, #figure_aside_process, #figure_cleanup, #figure_get_or_make_dl, #footnote_cleanup, #inline_header_cleanup, #merge_fnref_into_fn_text, #new_fullcolspan_row, #remove_bottom_border, #symbol_key, #symbols_cleanup, #table_cleanup, #table_footnote_cleanup, #table_get_or_make_tfoot, #table_note_cleanup

Methods included from Function::Blocks

#admonition_parse, #annotation_parse, #example_div_parse, #example_label, #example_parse, #figure_key, #figure_name_parse, #figure_parse, #formula_parse, #formula_where, #image_parse, #image_title_parse, #note_label, #note_p_parse, #note_parse, #note_parse1, #para_attrs, #para_parse, #quote_attribution, #quote_parse, #sourcecode_name_parse, #sourcecode_parse

Constructor Details

#initialize(options) ⇒ PdfConvert

Returns a new instance of PdfConvert.



13
14
15
16
17
18
19
20
# File 'lib/isodoc/pdf_convert.rb', line 13

def initialize(options)
  @standardstylesheet = nil
  super
  @scripts = @scripts_pdf if @scripts_pdf
  @tmpimagedir = "_pdfimages"
  @maxwidth = 500
  @maxheight = 800
end

Instance Method Details

#convert(filename, file = nil, debug = false) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/isodoc/pdf_convert.rb', line 22

def convert(filename, file = nil, debug = false)
  file = File.read(filename, encoding: "utf-8") if file.nil?
  @openmathdelim, @closemathdelim = extract_delims(file)
  docxml, outname_html, dir = convert_init(file, filename, debug)
  result = convert1(docxml, filename, dir)
  return result if debug
  postprocess(result, filename, dir)
  FileUtils.rm_rf dir
  ::Metanorma::Output::Pdf.new.convert(filename + ".html", outname_html + ".pdf")
  FileUtils.rm_r ["#{filename}.html", tmpimagedir]
end