IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Beamer Discussion :

[Beamer] Comment aligner à droite le texte arabe des Frames


Sujet :

Beamer

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [Beamer] Comment aligner à droite le texte arabe des Frames
    Bonjour à tout les Beameriens !
    je fais une présentation ARABE avec beamer, en m’appuyant sur le package Polyglossia et le moteur de compilation Xelatex
    Le problème est que le texte est horizontalement centré, alors qu'il doit être aligné à droite, et pire, les item des listes sont alignés à gauche !

    On peut bricoler une solution en mettant le texte arabe dans un bloc ou dans Minipage, mais je veux une solution professionnelle en modifiant les environnements Frame et itemize s'il le faut

    Merci d'avance, et tout avis même approximatif est le bienvenu

    Mon code Latex
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    \documentclass{beamer}
    \usetheme{Copenhagen}
     
    \usepackage{polyglossia}
    \setdefaultlanguage[numerals=maghrib, calendar=gregorian]{arabic}
    \newfontfamily\arabicfont[Script=Arabic,Scale=1]{Amiri}
    \newfontfamily\arabicfontsf[Script=Arabic,Scale=1]{Amiri}
    \newfontfamily\arabicfonttt[Script=Arabic,Scale=1]{Amiri}
     
    \title{العنوان}
    \author{الطالب الفلاني}
     
    \begin{document}
     
    \frame{\titlepage}
    \begin{frame}{عنوان البلوك الرئيسي}
    	كلمة أولى وشرح أول ثم
    \begin{itemize}
    	\item لا شيء 
    	\item لا شيء 	
    \end{itemize}
    \end{frame}
     
    \end{document}
    une image pour se donner une idée
    Nom : Ashampoo.png
Affichages : 1813
Taille : 25,1 Ko

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 344
    Points : 561
    Points
    561
    Par défaut
    Bonjour,

    J'ai répondu à une discussion similaire, mais pour justifier le texte. Je suppose que la solution est quasiment la même en modifiant la commande d'alignement pour obtenir quelque chose comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    % !TEX TS-program = xelatex
     
    \documentclass[11pt]{beamer}
     
    \usepackage{fontspec}
    \usepackage{lipsum}
     
    % ------------------ début modification ------------------ 
    \usepackage{etoolbox}
     
    \apptocmd{\frame}{\raggedleft}{}{}
    % ------------------- fin modification ------------------- 
     
    \usetheme{Dresden}
     
     
    \begin{document}
     
    	\begin{frame}{Lorem ipsum}
    		\lipsum[66]
    	\end{frame}
     
    \end{document}
    Dans le sujet original, les listes ne s'alignaient pas, dis moi si le soucis se pose aussi
    La FAQ apporte souvent la solution aux problèmes
    Avant de demander de l'aide, pensez à faire un ECM ! Un problème bien expliqué est un problème à moitié résolu .

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Merci chère Benoists
    Malheureusement les listes sont encore collées à gauche, même avec l'anglais et PdfLaTeX (voire le code qui suit)
    Je m'attendais à une modification de \frame avec la commande \setbeamertemplate{...}{...}, est-ce possible?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    % !TEX TS-program = pdflatex
     
    \documentclass[11pt]{beamer}
    \usetheme{Dresden}
     
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{lipsum}
    % ------------------ début modification ------------------ 
    \usepackage{etoolbox}
     
    \apptocmd{\frame}{\raggedleft}{}{}
    % ------------------- fin modification ------------------- 
    \begin{document}
     
    	\begin{frame}{Lorem ipsum}
    		\lipsum[66]
    		\begin{itemize}
    			\item mot 
    		\end{itemize}
    	\end{frame}
     
    \end{document}
    Nom : 1.PNG
Affichages : 3385
Taille : 47,4 Ko

  4. #4
    Expert éminent sénior

    Avatar de -Nikopol-
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2013
    Messages
    2 174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 2 174
    Points : 11 289
    Points
    11 289
    Billets dans le blog
    5
    Par défaut
    Bonsoir, après quelques recherches, il semblerait qu'aucune classe beamer ne soit véritablement adaptée pour l'écriture en arabe.
    Le code suivant devrait pour résoudre le problème des listes et des énumérations.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    % compile with xelatex
    \documentclass[20pt]{beamer}
    \usetheme{Warsaw}
    \usepackage{enumitem}
    \usepackage{fontspec}
    \usepackage{polyglossia}
    \setbeamertemplate{frametitle}[default][right]% align the frametitle to the right
    \setdefaultlanguage{english}
    \setotherlanguage[calendar=gregorian,numerals=maghrib]{arabic}
    \newfontfamily\arabicfont[Script=Arabic,Scale=1]{Amiri}
    \newfontfamily\arabicfontsf[Script=Arabic,Scale=1]{Amiri}
     
    %~~~~~~~~~~~~~~~~define bullet for enumerate~~~~~~~~~~~~~
     
    \newcommand{\myenum}[1]
    {
     \par\vspace{3pt}\LR{\hspace*{3pt}%
      \begin{pgfpicture}{-1ex}{-0.65ex}{1ex}{1ex}
        \usebeamercolor[fg]{item projected}
        {\pgftransformscale{1.8}\pgftext{\normalsize \pgfuseshading{bigsphere}}}
        {\pgftransformshift{\pgfpoint{0pt}{0.5pt}}
          \pgftext{\usebeamerfont*{item projected}\textcolor{white}{#1}}}
      \end{pgfpicture}%
      \hspace{1pt}%
    }}
     
    %~~~~~~~~~~~~~~~~~~define bullet for itemize~~~~~~~~~~~~~~~
     
    \newcommand{\myitem}{\par\vspace{3pt}\hspace{5mm}\LR{\hspace*{3pt}%
      \begin{pgfpicture}{-1ex}{-0.65ex}{1ex}{1ex}
        \usebeamercolor[fg]{item projected}
        {\pgftransformscale{1.1}\pgftext{\normalsize\pgfuseshading{bigsphere}}}
          \end{pgfpicture}%
      \hspace{1pt}%
    }}
     
    %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     
    \begin{document}
     
    \begin{frame}
    \frametitle{\textarabic{الشريحة الأولى}}
    \begin{minipage}{0.95\textwidth}
    \begin{Arabic}
     
    \begin{enumerate}[label=\protect\myenum{\arabic*}]
    \item نص عربي 
     
    \pause
     
    \item نص عربي
    \end{enumerate}    
    \pause    
    \begin{itemize}[label=\protect\myitem , rightmargin=5mm ]
    \item نص عربي 
     
    \pause
     
    \item نص عربي
    \end{itemize}
     
    \end{Arabic}
    \end{minipage}
     
    \end{frame}
    \end{document}
    Nom : beamer.PNG
Affichages : 1738
Taille : 28,0 Ko

    Code trouvé sur LaTeXStack Exchange

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Oui Nikopol, c'est à peu près la solution qui se balade sur internet
    mais le souci qui me préoccupe le plus est de trouver le code tex, le plus minimale, et le plus professionnel possible

    Merci bien pour l'effort et le temps que tu as pris pour me répondre

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/11/2007, 10h16
  2. Comment aligné à gauche du texte en PHP
    Par freedom.ghost dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 02/02/2007, 10h45
  3. Réponses: 4
    Dernier message: 13/01/2007, 18h35
  4. Réponses: 1
    Dernier message: 07/09/2006, 19h56
  5. DBGrid, comment dessiner dans les titres des colonnes
    Par dleu dans le forum Bases de données
    Réponses: 9
    Dernier message: 04/11/2004, 17h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo