feature: added latex

This commit is contained in:
Prof. Dr. Matthias Jung DL9MJ
2025-03-10 09:37:59 +01:00
parent 49a11637c8
commit 6e4809000a
2 changed files with 23 additions and 10 deletions
+14
View File
@@ -1,5 +1,7 @@
from mistletoe.latex_renderer import LaTeXRenderer from mistletoe.latex_renderer import LaTeXRenderer
from renderer.picture import Picture
from .comment import BlockComment from .comment import BlockComment
from .dash import Dash from .dash import Dash
from .halfwidth_spaces import HalfwidthSpaces from .halfwidth_spaces import HalfwidthSpaces
@@ -22,6 +24,7 @@ class FiftyOhmLaTeXRenderer(LaTeXRenderer):
NonbreakingSpaces, NonbreakingSpaces,
NonbreakingSpacesDots, NonbreakingSpacesDots,
Question, Question,
Picture
) )
self.question_renderer = question_renderer self.question_renderer = question_renderer
@@ -92,3 +95,14 @@ class FiftyOhmLaTeXRenderer(LaTeXRenderer):
def render_question(self, token): def render_question(self, token):
return self.question_renderer(token.question_number) return self.question_renderer(token.question_number)
@staticmethod
def render_picture_helper(id, ref, text, number):
return f"""
\DARCimage{{1.0\linewidth}}{{{id}include}}
\captionof{{figure}}{{{text}}}
\label{{{ref}}}
"""
def render_picture(self, token) :
self.render_picture_helper(token.id, token.ref, token.text, token.number)
+9 -10
View File
@@ -2,6 +2,7 @@ import mistletoe
import pytest import pytest
from renderer.fifty_ohm_html_renderer import FiftyOhmHtmlRenderer from renderer.fifty_ohm_html_renderer import FiftyOhmHtmlRenderer
from renderer.fifty_ohm_latex_renderer import FiftyOhmLaTeXRenderer
from test.util import paragraph from test.util import paragraph
@@ -15,13 +16,11 @@ def test_picture_html():
assert mistletoe.markdown(assertion, FiftyOhmHtmlRenderer) == paragraph(assertions[assertion]) assert mistletoe.markdown(assertion, FiftyOhmHtmlRenderer) == paragraph(assertions[assertion])
#@pytest.mark.latex @pytest.mark.latex
#def test_underline_latex(): def test_picture_latex():
# assertions = { assertions = {
# "<u>Text</u>": "\n\\underline{Text}\n", "[picture:123:abc:Text]": FiftyOhmLaTeXRenderer.render_picture_helper("123", "abc", "Text", "TODO"),
# "<u> Text Text </u>": "\n\\underline{ Text Text }\n", }
# "<u> Text *Text* </u>": "\n\\underline{ Text \emph{Text} }\n",
# } for assertion in assertions:
# assert mistletoe.markdown(assertion, FiftyOhmLaTeXRenderer) == assertions[assertion]
# for assertion in assertions:
# assert mistletoe.markdown(assertion, FiftyOhmLaTeXRenderer) == assertions[assertion]