import kutil
import html_util
import tex_util

class Document(klammer_base.Klammer_base):
    def __init__(self, K):
        super().__init__(K)

    def html(self):
        if self.include_css == "true":
            css_code, css_files = html_util.css(self.css, self._sks_enabled)
            head = html_util.head(self.title, css_files=css_files, css_code=css_code)
        else:
            head = head = html_util.head(self.title, include_fonts=self.include_fonts == "true")
        return html_util.page(head, self.body)

    def tex(self):
        ragged_right = self.ragged_right in {"true", "True", "1"}
        return tex_util.page(
            self.title, self.subtitle, self.leading, self.pointsize, ragged_right, self.body)

    def txt(self):
        return self.body
