tbl-widths: option not respected in PDF rendering #8569
Replies: 2 comments 2 replies
-
Note, that I cannot reproduce the issue: ![]() |
Beta Was this translation helpful? Give feedback.
-
Thanks a lot for helping, @mcanouil , and sorry for expressing my problem poorly… I worked on a reproducible example and it helped me identify my problem properly. I also modified my code according to your remark and replaced The real issue I have is that when I define the column width at the code cell level as in the example, using the HTML output doesn’t respect the column widths I indicated, but seems to manage an automatic width and there is no text overflow, but in PDF it’s not the case and the text overflows. If I define the Do you have an idea how I can correct my code? Here is a reproducible example: ---
title: "xxx"
format:
html:
df-print: kable
pdf:
df-print: kable
---
```{r}
#| label: merged-teachers-display-full-discourse
#| output: true
#| echo: false
#| tbl-colwidths: [15,10,68,7]
# df creation
In <- c("00:01:26.879", "00:03:43.729", "00:05:22.180", "00:18:38.790", "00:20:18.560", "00:23:26.200")
Text <- c("Ouais, mais il a neigé, hein, au Jura, ouais. Est-ce que vous avez pu sortir un crayon, si jamais, s'il vous plaît? Ouais, super. OK, merci. Alors on va faire un petit récap euh… dans l'ensemble, sur ce qu'on a fait les deux dernières séances. Donc la première séance, on a fait du code binaire. Le code binaire, ça se trouve où dans l'ordinateur ou dans d'autres outils? Qui sait? Qui? Quelle partie de l'ordinateur c'est le code binaire, enfin de ce qu'on en avait discuté un petit peu? Alors c'est à peu près tout ce qui est dans l'ordinateur. Le processeur de l'ordinateur, c'est en code binaire. Donc dès que vous avez quelque chose qui va dans l'ordinateur, le code binaire, c'est le cerveau de l'ordinateur. Lui il ne réfléchit que en zéros et en uns. Ensuite on avait vu la dernière séance… euh… le code… c'était quoi le nom du code avec la roue? Le nom d'un personnage célèbre, oui au fond?", "Ouais. Ah voilà, ouais. Alors quand c'est chiffré de bout en bout, ça veut dire que y a un code secret pour que… c'est pas, n'im… que… il n'y a personne d'autre, qu'il n'y ait personne d'autre qui puisse prendre votre message et le décoder. Donc il y a un… le message il a été chiffré, comme nous on l'a fait avec le code César. D'accord? Et puis quand vous envoyez des messages sur WhatsApp, est-ce qu'il y a des enfants qui ont WhatsApp dans la classe? Voilà. Alors parfait. Pis les autres, vous connaissez? Tout le monde connaît WhatsApp. Alors sur WhatsApp, quand vous envoyez un message, c'est écrit aussi chiffré de bout en bout, ça veut dire que y a un code secret, qui chiffre de bout en bout. Tu peux passer. Voilà, alors là, c'est ce qu'on a fait: première séquence avec euh… microprocesseur, donc cerveau de l'ordinateur qui est tout ce qui est dans l'ordinateur, c'est en zéros et uns. Euh… séance suivante… Ah! Mais on a, ça peut, fais voir, ça va apparaître? Les… le code César. Et puis aujourd'hui et puis la prochaine fois, on va faire ça: vous croyez qu'il est en train de faire quoi? Oui? On en avait parlé un petit peu. Il y en a qui reconnaissent? C'est écrit… du, du, du… PHP Python. Oui, oui?", "Voilà. Exactement. Et puis, ça va servir au fait que euh… chaque fois qu'on veut que l'ordinateur fasse quelque chose, on ne va pas lui écrire toutes les instructions à chaque fois, puis que ça prenne beaucoup, beaucoup de pages, on va essayer de… de… il y a des choses qui se fassent automatiquement et puis qu'on ait, qu'on… que le code il soit réduit, euh pour… Enfin… qui… l'ordinateur, il fasse beaucoup de choses, mais avec peu de code pour ça prenne peu de place. Donc quand on programme, en fait, on va s'adresser à l'ordinateur dans le langage de l'ordinateur. Donc ça peut être plein de sortes de langages de programmation différents, C++, Java, Python pour qu'on parle la langue de l'ordinateur, pour qu'il comprenne ce qu'on lui dit. Le binaire, c'est aussi une des langues de l'ordinateur. OK?", "Left. Donc c'est L… LT. Euh… y a encore une commande qui est importante. Deux… deux lignes en-dessous. C'est CS efface tout et retourne à la position de départ. Donc ça, on va aussi beaucoup l'utiliser. Donc ça vous gardez sous vos yeux. Parce que ça, c'est les commandes, c'est… c'est le langage dans lequel vous devrez vous adresser à la tortue…", "Vous pouvez effacer. C'est un petit exercice pour voir si vous avez réussi. Ah. OK? Pourquoi ça ne fonctionne pas? Reculez de 100. BK et pis là le nombre, il est en orange. Est-ce qu'elle va comprendre si on écrit nombre? Est-ce qu'elle comprend le français? Non? La deuxième c'est le nombre de pas que tu dois reculer, ouais.", "Si j'écris KB 100, est-ce que ça fonctionne? Est-ce qu'il y a quelqu'un qui a essayé? Oui? Qu'est-ce que ça a donné? Pourquoi ça fonctionne pas? Si. Pourquoi est-ce que l'ordinateur il n'arrive pas à comprendre que back, ben on a juste fait une erreur d'écriture, et pis que ce n'est pas grave, il a qu'à lire à l'envers. Oui?" )
Speaker <- c("teacher4", "teacher4", "teacher4", "teacher4", "teacher4", "teacher4")
Comment_didactic <- c("anthropomorphisme: [00:02:16] le code binaire, c'est le cerveau de l'ordinateur [00:02:19][2.6]", "anthropomorphisme: [00:04:27] microprocesseur, donc cerveau de l'ordinateur qui est tout ce qui est dans l'ordinateur [00:04:31][3.9]", "anthropomorphisme: [00:05:59] pour qu'on parle la langue de l'ordinateur, pour qu'il comprenne ce qu'on lui dit [00:06:05][5.8]", "anthropomorphisme: [00:19:03] le langage dans lequel vous devrez vous adresser à la tortue [00:19:06][3.1]", "anthropomorphisme: [00:20:38] Est-ce qu'elle va comprendre si on écrit nombre? Est-ce qu'elle comprend le français? [00:20:43][5.0]", "anthropomorphisme: [00:23:36] Pourquoi est-ce que l'ordinateur il n'arrive pas à comprendre que back, ben on a juste fait une erreur d'écriture, et pis que ce n'est pas grave, il a qu'à lire à l'envers. Oui? [00:23:44][8.1]")
merged_teachers_comments_dida_for_display<- data.frame(In, Text, Speaker, Comment_didactic)
# df display
library(knitr)
kable(merged_teachers_comments_dida_for_display)
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Description
I have a Quarto document in R in which I display a four-columns dataframe as a table.
In an R code chunk, I just call the dataframe to display it and in the code chunk options, I use
#| tbl-colwidths: [15,10,68,7]
to specify the width of the four columns.
The rendering works properly when I render to HTML, but not in PDF. In PDF, the widths are not respected and the text overflows from its dedicated column.
My exact same code was working properly with Quarto 1.3 and the problem appeared after upgrading to Quarto 1.4, so my impression is that it’s somehow related to the update.
Here is an abstract of my code:
Here are the software versions running on my machine:
Quarto version: 1.4.549
R version 4.3.2 (2023-10-31) -- "Eye Holes"
Rstudio: Version 2023.12.1+402 (2023.12.1+402)
MacOS Sonoma 14.3
Apple M1 Pro
Here is the output in PDF showing the overflow:
And here is the output in HTML which is correct:
Does anybody know where this problem comes from and how I can solve it?
Thanks a lot for helping!
Gabriel
Beta Was this translation helpful? Give feedback.
All reactions