make pdf file generation work
This commit is contained in:
@@ -94,22 +94,22 @@ gif_to_img_tpl = Mustache.mt"""
|
||||
<img src="data:image/gif;base64,{{{:data}}}" class="card-img-top" alt="{{{:alt}}}">
|
||||
"""
|
||||
|
||||
|
||||
function ImageFile(f::AbstractString, caption, alt, width)
|
||||
fcontent = occursin(r"^http", f) ? read(download(f), String) : read(f, String)
|
||||
data = base64encode(fcontent)
|
||||
content = Mustache.render(gif_to_img_tpl, data=data, alt=alt)
|
||||
caption = Markdown.parse(caption)
|
||||
ImageFile(f, caption, alt, width, content)
|
||||
end
|
||||
|
||||
|
||||
function Base.show(io::IO, m::MIME"text/html", x::ImageFile)
|
||||
content = x.content
|
||||
if content == nothing
|
||||
data = (read(x.f, String))
|
||||
content = gif_to_image(data=data, alt="figure")
|
||||
end
|
||||
caption = sprint(io -> show(io, "text/html", x.caption))
|
||||
|
||||
caption = (Markdown.html ∘ Markdown.parse)(x.caption)
|
||||
print(io, """<div class="d-flex justify-content-center">""")
|
||||
print(io, " <figure>")
|
||||
print(io, content)
|
||||
@@ -122,6 +122,24 @@ function Base.show(io::IO, m::MIME"text/html", x::ImageFile)
|
||||
""")
|
||||
end
|
||||
|
||||
import TextWrap
|
||||
function Base.show(io::IO, m::MIME"text/plain", x::ImageFile)
|
||||
|
||||
caption = (TextWrap.wrap ∘ Markdown.plain ∘ Markdown.parse)(x.caption)
|
||||
println(io, """
|
||||
---------------------------------
|
||||
|
|
||||
| see online version for |
|
||||
| image |
|
||||
| |
|
||||
--------------------------------
|
||||
""")
|
||||
println(io, caption)
|
||||
return nothing
|
||||
end
|
||||
|
||||
|
||||
|
||||
# hack to work around issue
|
||||
# import Markdown
|
||||
# import CalculusWithJulia
|
||||
@@ -189,4 +207,13 @@ function Base.show(io::IO, ::MIME"text/html", x::HTMLoutput)
|
||||
end
|
||||
print(io, txt)
|
||||
end
|
||||
|
||||
function Base.show(io::IO, m::MIME"text/plain", x::HTMLoutput)
|
||||
|
||||
caption = (TextWrap.wrap ∘ Markdown.plain ∘ Markdown.parse)(x.caption)
|
||||
println(io, "Content available in online version")
|
||||
println(io, caption)
|
||||
return nothing
|
||||
end
|
||||
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user