2

I am creating a short report with quarto in rstudio, rendering it to pdf. I use the quarto titlepages extension to create a title page with a logo and a background image. I can get everything to work except for the size of the title font.
I've been searching in the web for hours, and trying all approaches I could think off, but the font size of the title never changes...can someone give me a hint on what I am doing wrong? This is my YAML:

---
title: "Effect of treatment on the species 1"  
author:  "Author 1 and Author 2"  
date: ' `r paste("Date:",Sys.Date())`'  
lang: gl  
format:  
  titlepage-pdf:  
    documentclass: scrbook  
    titlepage: plain  
    titlepage-geometry:  
      - top=70mm  
      - bottom=30mm  
      - right=30mm  
      - left=30mm  
    titlepage-logo: "images/circularNegro.png"  
    titlepage-bg-image: "images/OsTres.png"  
    titlepage-theme:   
      elements: ["\\titleblock", "\\logoblock", "\\authorblock", "(biólogos colexiados)" ]  
      page-fontfamily: "Helvetica Neue"  
      page-align: center  
      title-fontsize: 30  
      title-align: center  
      title-space-after: 3cm  
      author-fontsize: 16  
      author-style: plain  
      logo-align: center  
      logo-size: 4cm  
      logo-space-after: 1cm  
      bg-image-location: "ULCorner"  
      bg-image-size: 21cm 
  pdf:  
    # Fonts  
    mainfont: Helvetica Neue  
    fontsize: 12pt  
    papersize: A4  
    margin-top: 25mm  
    margin-bottom: 25mm  
    margin-left: 25mm  
    margin-right: 25mm  
    toc: true  
    toc-depth: 2  
    toc-title: Táboa de contidos  
editor: visual 
---  

I tried with title-fontsize: 30 and with title-style: "large" but none of them would change the font size. I also tried changing the document class from article, to scrartcl and scrbook. I did also simplify all the YAML and even remove completely the format: pdf: section of it, but title font size did never change. I finally tried to define title font size with CSS (which I do not know) by including the following chunk after the YAML (based on this question Change title size and color in Quarto (html output)):

```{css, echo=FALSE}
.title {
  font-size: 24px;
  font-family: "Helvetica Neue";
}
```

When I do that I get the following error:

Unable to locate an installed version of Python 3.
shafee
  • 15,566
  • 3
  • 19
  • 47
Asier
  • 125
  • 6
  • 1
    I opened an issue at https://github.com/nmfs-opensci/quarto_titlepages/issues/35 about this. – shafee Feb 10 '23 at 05:11

2 Answers2

3

To my understanding, title-fontsize option is not having any effect on the title font size. Because if we run the following,

---
title: "Effect of treatment on the species 1"  
author:  "Author 1 and Author 2"  
date: last-modified  
lang: gl  
format:  
  titlepage-pdf:  
    documentclass: scrbook
    titlepage: plain  
    titlepage-geometry:  
      - top=70mm  
      - bottom=30mm  
      - right=30mm  
      - left=30mm  
    titlepage-theme:   
      elements: ["\\titleblock", "\\logoblock", "\\authorblock", "(biólogos colexiados)" ]  
      page-align: center 
      title-fontsize: 50
      title-align: center  
      title-space-after: 3cm  
      author-fontsize: 16  
      author-style: plain  
keep-tex: true
---  

And then checking the underlying intermediate tex file, we can see,

\newcommand{\titleandsubtitle}{
% Title and subtitle
{\fontsize{50}{60.0}\selectfont
{\Large{\nohyphens{Effect of treatment on the species 1}}}\par
}%
}
\newcommand{\titlepagetitleblock}{
\titleandsubtitle
}

Therefore, title font size is actually \Large and our specified font size 50 is having no effect at all.

Therefore, one approach to this issue, could be using title-fontstyle which takes tiny, small, large, Large, LARGE, huge, Huge` as font sizes.

---
title: "Effect of treatment on the species 1"  
author:  "Author 1 and Author 2"  
date: last-modified  
lang: gl  
format:  
  titlepage-pdf:  
    documentclass: scrbook
    titlepage: plain  
    titlepage-geometry:  
      - top=70mm  
      - bottom=30mm  
      - right=30mm  
      - left=30mm  
    titlepage-theme:   
      elements: ["\\titleblock", "\\logoblock", "\\authorblock", "(biólogos colexiados)" ]  
      page-align: center 
      title-fontstyle: Huge
      title-align: center  
      title-space-after: 3cm  
      author-fontsize: 16  
      author-style: plain  
---  

title page with Huge title


Now the aforementioned Huge, LARGE, Large etc. font sizes are LaTeX predefined font sizes. If you want to use custom font sizes other than those, you can define a new fontsize command and then pass it to title-fontstyle option.

So we define a new font size command gigantic with a font size 70 and use this in title-fontstyle: gigantic.

---
title: "Effect of treatment on the species 1"  
author:  "Author 1 and Author 2"  
date: last-modified  
lang: gl  
format:  
  titlepage-pdf:  
    documentclass: scrbook
    include-in-header: 
      text: |
        \newcommand{\gigantic}{\fontsize{70}{73}\selectfont}
    titlepage: plain  
    titlepage-geometry:  
      - top=70mm  
      - bottom=30mm  
      - right=30mm  
      - left=30mm  
    titlepage-theme:   
      elements: ["\\titleblock", "\\logoblock", "\\authorblock", "(biólogos colexiados)" ]  
      page-align: center 
      title-fontstyle: gigantic
      title-align: center  
      title-space-after: 3cm  
      author-fontsize: 16  
      author-style: plain  
---  

title page with gigantic title


And lastly some remarks about your attempt of using CSS,

  • You can not use CSS to modify anything that will be rendered as pdf. You have to use either latex commands or pandoc options.

  • And you are facing that error, because you are using css chunk which quarto finds as the very first code chunk in the qmd file while rendering the document and as a consequence, Quarto will try to render this document using jupyter which requires python installation. To avoid this problem, one need to use engine: knitr. But again, you do not need a css chunk while rendering to pdf format at the first place.

shafee
  • 15,566
  • 3
  • 19
  • 47
0

Yes, it is a rather confusing problem that I wasn't sure how to solve. The title-fontsize is being overridden by title-fontstyle. You need to set title-fontstyle: [] This will work:

---
title: "Test page title font size"
date: last-modified  
format:  
  titlepage-pdf:  
    documentclass: scrbook
    titlepage: plain  
    titlepage-theme:
      title-fontsize: 50
      title-align: center
      title-fontstyle: []
keep-tex: true
---

I considered doing a check if title-fontsize is spec-ed and then check if any fontsize is being set in title-fontstyle and disallow that. But I haven't coded that. I am thinking perhaps to just 'outlaw' any fontsize in title-fontstyle and require title-fontsize for that. The only problem is that you also need to set title-fontspacing; there is a default, but it doesn't always look good. Maybe I should just issue a warning if title-fontsize is set and title-fontstyle has a fontsize specified.

Eli Holmes
  • 656
  • 7
  • 10