in other client

J'essaie de mettre un long texte de deux colonnes dans une boîte tcolorbox avec l'option breakable. Le texte sort de la boîte, et LaTeX ne produit pas de saut de page !

Voici un exemple :

Ouvrir dans l'éditeur Overleaf
\documentclass{article}

\usepackage{multicol,lipsum}

\usepackage[all]{tcolorbox}

\begin{document}

\begin{tcolorbox}[breakable]
\begin{multicols}{2}
\lipsum[1-20]

\end{multicols}

\end{tcolorbox}

\end{document}

Posée 20 Mar '18, 00:28

miyazaki's gravatar image

miyazaki
158211
Taux d'acceptation : 0%

Modifiée 20 Mar '18, 13:22

Pathe's gravatar image

Pathe ♦♦
6.6k5130205

2

L'extension tcolorbox n'est pas compatible avec multicol à 100%, voir la page 373 de la documentation de tcolorbox.

Pour contourner le problème tcolorbox offre la bibliothèque magazine, voir page 387.

(20 Mar '18, 11:17) touhami touhami's gravatar image

@miyazaki Les formules de politesse et les signatures sont à éviter : celle(s) de votre contribution a (ont) été supprimée(s).

(20 Mar '18, 13:23) Pathe ♦♦ Pathe's gravatar image

Merci touhami pour la réponse, le compteur de page numérote les colonnes comme pages séparées.

(20 Mar '18, 16:05) miyazaki miyazaki's gravatar image

Je repose la question autrement : Y a t-il un moyen de créer un environnement avec du texte dans une boîte qui s'étend sur plusieurs pages ?

(23 Mar '18, 00:37) miyazaki miyazaki's gravatar image

C'est simple. Dans votre ECM, il suffit de ne pas utiliser l'environnement multicols.

Je vais essayer de poster une réponse avec multicols.

(23 Mar '18, 01:39) touhami touhami's gravatar image

Voici une idée basée sur l'utilisation de la bibliothèque magazine de tcolorbox

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{multicol}
\usepackage[most]{tcolorbox}

\usepackage{mwe}

\newcounter{mtctr}

\newcommand{\mtdisplay}{%
\boxarraygetsize{\mtsize}%
\setcounter{mtctr}{0}%
\loop 
    \stepcounter{mtctr}%
    \tcbitem\consumeboxarray{\themtctr}
    \ifnum\value{mtctr}<\mtsize
\repeat}

\newcommand{\mtdim}{%
    \the\dimexpr\pagegoal-\pagetotal-1cm\relax/
    \the\dimexpr\pagegoal-\pagetotal-1cm\relax/
    \the\dimexpr\textheight-1cm\relax}

\newenvironment{mttwocols}{%
\ifdim\dimexpr\pagegoal-\pagetotal-6\baselineskip\relax>0pt\else\newpage\null\vskip-\baselineskip\fi
\begin{tcolorbox}[%
    breakable, 
    blanker,
    width=.43\textwidth,
    break at=\mtdim,
    reset box array,
    store to box array]}{%
\end{tcolorbox}
\tcboxeditemize[% 
    blanker,  
    sharp corners, 
    halign=center, 
    raster columns=2,
    raster valign=top]{breakable}%
\mtdisplay
\endtcboxeditemize}

\begin{document}

\section{Foo}
\lipsum[1]

\begin{mttwocols}
\lipsum[1-20]
\end{mttwocols}

\end{document}

Pour aller plus loin.

Remarques il faut compiler deux fois et il faut supprimer le fichier .aux en cas des changements dans mttwocols.

Limitation mttwocols à utiliser une fois par fichier, mais ce n'est pas difficile d'adapter le code pour l'utilisation multiple, je vais essayer d'ajouter ce qu'il faut prochainement.

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{multicol}
\usepackage[most]{tcolorbox}

\newcounter{mtctr}

\newcommand{\mtdisplay}{%
\boxarraygetsize{\mtsize}%
\setcounter{mtctr}{0}%
\loop 
    \stepcounter{mtctr}%
    \tcbitem\consumeboxarray{\themtctr}
    \ifnum\value{mtctr}<\mtsize
\repeat}

\AtBeginDocument{
\providecommand{\mtdim}{%
    \the\dimexpr\pagegoal-\pagetotal-1cm\relax/
    \the\dimexpr\pagegoal-\pagetotal-1cm\relax/
    \the\dimexpr\textheight-1cm\relax}}

\makeatletter  
\newcommand{\mtsetdim}{%
\renewcommand{\mtdim}{%
    \the\dimexpr\pagegoal-\pagetotal-1cm\relax/
    \the\dimexpr\pagegoal-\pagetotal-1cm\relax}
\boxarraygetsize{\mtsize}
\global\let\mtsize\mtsize
\boxarraygetbox{\mtbox}{\mtsize}
\ifnum\mtsize>2
    \setcounter{mtctr}{3}
    \loop
        \ifnum\value{mtctr}<\numexpr\mtsize-1\relax
        \xdef\mtdim{\mtdim/ \the\dimexpr\textheight-1cm\relax} 
        \stepcounter{mtctr}
    \repeat
    \ifodd\value{mtctr}
    \xdef\mtht{\the\dimexpr.5\textheight+.5\ht\mtbox+\baselineskip\relax}
    \else
    \xdef\mtht{\the\dimexpr\textheight-1cm\relax/\the\dimexpr.5\ht\mtbox+\baselineskip\relax}
    \fi
    \xdef\mtdim{\mtdim/ \mtht}  
\fi
\immediate\write\@mainaux{\xdef\string\mtdim{\mtdim}}
}
\makeatother

\newenvironment{mttwocols}{%
\ifdim\dimexpr\pagegoal-\pagetotal-6\baselineskip\relax>0pt\else\newpage\null\vskip-\baselineskip\fi
\begin{tcolorbox}[%
    breakable, 
    blanker,
    width=.43\textwidth,
    break at=\mtdim,
    reset box array,
    store to box array]}{%
\end{tcolorbox}
\mtsetdim
\tcboxeditemize[% 
    blanker,  
    sharp corners, 
    halign=center, 
    raster columns=2,
    raster valign=top]{breakable}%
\mtdisplay
\endtcboxeditemize}

\usepackage{mwe}

\begin{document}

\section{Foo}
\lipsum[1]

\begin{mttwocols}
\lipsum[1-20]
\end{mttwocols}

\end{document}
Lien permanent

Publiée 24 Mar '18, 01:24

touhami's gravatar image

touhami
8.3k210
Taux d'acceptation : 51%

Modifiée 25 Mar '18, 16:22

Merci beaucoup pour le temps et le soin apportés !

(25 Mar '18, 14:49) miyazaki miyazaki's gravatar image

Voir ce fil sur TeX.se

(25 Mar '18, 16:16) touhami touhami's gravatar image

@miyazaki voir les remarques ajoutées.

(25 Mar '18, 16:24) touhami touhami's gravatar image

C'est noté merci, il me faut un peu de temps pour digérer le code !

(25 Mar '18, 19:08) miyazaki miyazaki's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.

Mots-clés de la question :

×7
×4

Question posée : 20 Mar '18, 00:28

Question vue : 2,796 fois

Dernière mise à jour : 25 Mar '18, 19:08

Better site: ProxyBot webproxy https://proxybot.cc/b?q=2j8dknuik8iu8PTSBaBVTkUuShO-yhLO-hp8-hO-yh50hppShO-3h5MhLV-hO-3h53hL3hO-3h53h53hO-3h53h59S
Better site: ProxyBot webproxy https://proxybot.cc/b?q=UCPXiNM5t8jY6U98IsM8s6oSjY6UVuinF7V3p8dnoY
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2I6FCo8sndB8IFSCsT8TdTHo6auwTFXWks7bBXaw5pak9k5p9u53gk55It99paN5ttuyaN03
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118U66UYunkUokikUuF8s6oSiB8dnoYHXaw4-G-l-Vv-R-l-yMv-
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2IF8o81XqXTuaXk86FUS1SXiauQ8TdTHnXnYuw2-ThR-3hLpsXkYfR-6iiuQX6ibkoTlFunCFin6wLiihR-3hLpuBJMNyN
Better site: ProxyBot webproxy https://proxybot.cc/b?q=211181ujYX68PTSFkiqXiUSsCYnCFuSiFnaXSMNNpN5M3
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118U66UYunkUokikUuF8s6oSiB8dnoYHXaw4-G-l-Vv-R-l-yMv-
Better site: ProxyBot webproxy https://proxybot.cc/b?q=1118BuQdCjda8s6oSduSWXau6SsCoBd6nST6FiQBSki7Ski7
Better site: ProxyBot webproxy https://proxybot.cc/b?q=211181ujYX68PTSFkiqXiUSTu6TYuSFakaXSMNt9Ny3t
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2j8dknuik8iu8PTS6ak1kFkSc-f-G-O-A-S
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2kBq8IoSTuFIusnBnkFIXBd3gNN
Better site: ProxyBot webproxy https://proxybot.cc/b?q=kW8kW98Q7ESq1Sk7kBu
Better site: ProxyBot webproxy https://proxybot.cc/b?q=jY6U8YXWua66F8PTSqkXqkXdkii6SkFsdXWuBSyggt5gy58dnoY
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2jk6o6X8s6oSnkUSx-e-Lf-4-Vf-4-S-m-O-f-8uTX
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2jk6o6X8s6oSnkUSx-6iakV2-x-VtMyVR-D2-VMNMN8uTX
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118Xoaj8s6oSnXnYuSnnNg5MMy9S
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2ki7BuQ8s6oS3t3NtS
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2PB8UkE68BTksuSXiauQ8TdTHPBwWuF7
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2PB8UkE68BTksuSXiauQ8TdTHPBwkW9bkaWuFnXBuouinb
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2BnFXTu8s6oSuiVskSBBk
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2YW81XqXTuaXk86FUS1XqXShV-Nhp8-
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2BnFXTu8s6oSuiVUFSYuUkY
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118onCFq8s6oSduYT
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2BnFXTu8s6oSPkVonSBBk
Better site: ProxyBot webproxy https://proxybot.cc/b?q=B6CU6C1XqX8s6oSaShs0hI3hsMhuyhsshashk9hs9hk9haNhjNhIjhk9haIhk9hkkhk9hj5hk9hjyhk9hI3
Better site: ProxyBot webproxy https://proxybot.cc/b?q=XqCtp8iunStN03
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118U66UYunkUokikUuF8s6oSiB8dnoYHXaw4-G-l-Vv-R-l-yMv-
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2jk6o6X8s6oSnkUSx-6ViU8uTX
Better site: ProxyBot webproxy https://proxybot.cc/b?q=211181ujYX68PTSFkiqXiUSTu6TYuSFakaXSMNt9N9N0
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2s6oonu8iunS9MNN
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118U66UYunkUokikUuF8s6oSiB8dnoYHXaw4-G-l-Vv-R-l-yMv-
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118s66Yt58s6oSjjB9SXiauQ8TdTHkTTwI6FCobksnwndFukaWXu1bnXawt9tgy333
Better site: ProxyBot webproxy https://proxybot.cc/b?q=21118s66Yt58s6oSTCjSkaOkInuFOXokUu8TdT
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2XoU850Cq8s6oSXIFkou8TdTHXawsIXnp5NpNbqwbswt
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2kao8juXoU8s6oSUunOka8TdTHT6BXnX6iwTFusXBX6iOp5NQptbqu716FaBw
Better site: ProxyBot webproxy https://proxybot.cc/b?q=au8kW98Q7ESWSfSSo6nduFYuBB8s6oSgLD5M5y
Better site: ProxyBot webproxy https://proxybot.cc/b?q=211181ujYX68PTSFkiqXiUSdukYndskFuSFqiX7SMNt9N9Mt
Better site: ProxyBot webproxy https://proxybot.cc/b?q=o6ua6CPXig8jY6U8IsM8s6oSHnkUwhO-3h5MhDDhO-3h53hLR-hO-3h53h5L
Better site: ProxyBot webproxy https://proxybot.cc/b?q=1118P6quFtM3k8iunS
Better site: ProxyBot webproxy https://proxybot.cc/b?q=211181ujYX68PTSFkiqXiUSdukYndskFuSFqiX7SMNN5tttN
Better site: ProxyBot webproxy https://proxybot.cc/b?q=qF8kW98Q7E
Better site: ProxyBot webproxy https://proxybot.cc/b?q=2nuQiXrCu8IFS6BrkSrCuBnX6iBSyMNNSCiVY6iUVnuQnuVauVTYCBXuCFBVTkUuBVauVauCQVs6Y6iiuBVakiBVCiuVj6XnuVns6Y6Fj6Q