ged2doc.html_writer¶
Module which produces HTML output.
Functions
|
This is no-op function, only used to mark translatable strings, to extract all strings run |
Classes
|
Transforms GEDCOM file into nicely formatted HTML page. |
-
class
ged2doc.html_writer.HtmlWriter(flocator, output, tr, encoding=None, encoding_errors='strict', sort_order=<NameOrder.SURNAME_GIVEN: 'last+first'>, name_fmt=0, make_images=True, make_stat=True, make_toc=True, events_without_dates=True, page_width='800px', image_width='300px', image_height='300px', image_upscale=False, tree_width=4)[source]¶ Bases:
ged2doc.writer.WriterTransforms GEDCOM file into nicely formatted HTML page.
This is a sub-class of
Writerclass providing implementation for rendering methods which transform GEDCOM info into HTML constructs. Constructor takes a large number of arguments which configure appearance of the resulting HTML page. After instantiating an object of this type one has to callsave()method to produce output file.- Parameters
- flocator
ged2doc.input.FileLocator File locator instance.
- output
strorio.TextIOBase Name for the output file or file object.
- tr
ged2doc.i18n.I18N Object supporting translation.
- encoding
str, optional GEDCOM file encoding, if
Nonethen encoding is determined from file itself.- encoding_errors
str, optional Controls error handling behavior during string decoding, one of “strict” (default), “ignore”, or “replace”.
- sort_order
ged4py.model.NameOrder, optional Determines ordering of person in output file, one of the constants defined in
ged4py.model.NameOrderenum.- name_fmt
int, optional Bit mask with flags from
ged2doc.namemodule.- make_images
bool, optional If
True(default) then generate images for persons.- make_stat
bool, optional If
True(default) then generate statistics section.- make_toc
bool, optional If
True(default) then generate Table of Contents.- events_without_dates
bool, optional If
True(default) then show events that have no associated dates.- page_width
ged2doc.size.Size Width of the produced HTML page.
- image_width
ged2doc.size.Size Size of the images.
- image_height
ged2doc.size.Size Size of the images.
- image_upscale
bool If True then smaller images will be re-scaled to extend to image size.
- tree_width
int Number of generations in ancestor tree.
- flocator
Methods
save()Produce output document.
-
_interpolate(text)[source]¶ Takes text with embedded references and returns properly escaped text with HTML links.
- Parameters
- text
str Arbitrary text with references.
- text
- Returns
- html
str HTML as text.
- html
-
_render_section(level, ref_id, title, newpage=False)[source]¶ Produces new section in the output document.
This method should also save section reference so that TOC can be later produced when
_render_tocmethod is called.- Parameters
- level
int Section level (1, 2, 3, etc.).
- ref_id
str Unique section identifier.
- title
str Printable section name.
- newpage
bool, optional If
Truethen start new page (for documents that support pagination).
- level
-
_render_person(person, image_data, attributes, families, events, notes)[source]¶ Output person information.
- Parameters
- person
ged4py.model.Individual INDI record representation.
- image_data
bytesorNone Either
Noneor binary image data (typically content of JPEG image).- attributes
list[tuple] List of (attr_name, text) tuples, may be empty.
- families
list[str] List of strings (possibly empty), each string contains description of one family and should be typically rendered as a separate paragraph.
- events
list[tuple] List of (date, text) tuples, may be empty. Date is properly formatted string and does not need any other formatting.
- notes
list[str] List of strings, each string should be rendered as separate paragraph.
- person
Notes
Textual information in parameters to this method can include references to other persons (e.g. mother/father). Such references are embedded into text in encoded format determined by
_person_refmethod. It is responsibility of the subclasses to extract these references from text and re-encode them using proper backend representation.
-
_render_name_stat(n_total, n_females, n_males)[source]¶ Produces summary table.
Sum of male and female counters can be lower than total count due to individuals with unknown/unspecified gender.
- Parameters
- n_total
int Total number of individuals.
- n_females
int Number of female individuals.
- n_males
int Number of male individuals.
- n_total
-
_render_name_freq(freq_table)[source]¶ Produces name statistics table.
- Parameters
- freq_table
list[tuple] List of (name, count) tuples.
- freq_table
-
_render_toc()[source]¶ Produce table of contents using info collected in
_render_section().
-
_abc_impl= <_abc_data object>¶