Open kevinrue opened 6 months ago
I can't replicate the issue. I made this simple foo.qmd
slide deck:
---
title: "Bug"
format: revealjs
---
## The normal distribution
### Notation
$${\mathcal{N}}(\mu ,\sigma^{2})$$
Then I rendered it to pdf with renderthis::to_pdf("foo.html")
, and I got a pdf with everything looking correct.
If I use the specific mathjax setting you used, like this:
format:
revealjs:
html-math-method: mathjax
Then yes I get the error. But I didn't need to use it to get the latex math to render properly.
Before I even get to renderthis
, I clearly need to update something because this is what I get when rendering your example:
Not sure if it's quarto, RStudio, or a package that I need to update. I'll do the rounds!
Silly question, but have you tried opening the rendered html page in a browser? I've had issues in the past where the RStudio viewer doesn't render the same as an actual browser like Chrome.
Not a silly question at all :) Indeed I noticed that web browser (I mostly use Chrome) display the equations properly (as in this case) even when the RStudio viewer doesn't.
Although, hold that thought... I think I'm getting closer to the issue:
renderthis::to_pdf("foo.html")
still produces a PDF that has a missing symbol square instead of the 'N'.So basically, RStudio is doing something when serving the HTML on localhost that isn't present in the HTML file itself and thus can't be exported into the PDF by renderthis.
Who do I poke now with these new details? :)
renderthis should be using chrome by default. If you open the html file in chrome and try to print from chrome, it should look correct. If it does, then there's something going on in RStudio. I'd also try just re-installing everything to see if there's a version issue somewhere.
These days, there are more than a few web features that are common practice that require a running web server to use. One of those is loading scripts and resources from external hosts. That's why the Render button fires up a local web server for the preview. Opening the file directly, on the other hand, causes these features break when you open the file with file:///path/to/your/slides.html
.
One way around this is to use the Render button to launch the preview server and then use the URL for the preview in to_pdf()
:
renderthis::to_pdf("http://localhost:7756/index.html", "my-slides.pdf")
if you open the html file in chrome and try to print from chrome, it should look correct
If I open the 'localhost' HTML that looks ok, then yes, the PDF looks OK too. That's essentially what I've done when I described
Note that weirdly enough, if I click the 'Print' button in the RStudio 'Presentation' tab, and manually (not programmatically) print it from there, the PDF contains the equation formatted properly.
However, like I said the HTML file itself, opened in a web browser without serving it from RStudio has the issue, and thus a PDF made from that one has the issue too.
which basically leads to @gadenbuie 's related workaround
renderthis::to_pdf("http://localhost:7756/index.html", "my-slides.pdf")
The actual issue isn't really 'fixed' but I entirely agree with
These days, there are more than a few web features that are common practice that require a running web server to use.
I've got other fires to put out so I think I'll leave it at that until I've got more time to investigate further and/or chase up RStudio/Posit people who might have an opinion on the possibility of making self-contained HTML files in this scenario.
Cheers both!
Hello.
Thanks a lot for this package which I've been using happily for several years.
For some months now, I've been having an issue with some (but not all) symbols in LaTeX equations.
Initially, it seemed to be a quarto issue.
For instance, the following:
was producing
Which led me to the fix here
But now, that the LaTeX equation displays correctly in the HTML presentation,
renderthis::to_pdf()
throw the following error and fails to produce the PDF.Note that weirdly enough, if I click the 'Print' button in the RStudio 'Presentation' tab, and manually (not programmatically) print it from there, the PDF contains the equation formatted properly.
Any suggestion?