Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Προσπαθώ εδώ και μερικές μέρες να δημιουργήσω σκακιστικά διαγράμματα με χρήση latex και σκοντάφτω σε κάποια σημεία...

i)  Δεν μπορώ να αλλάξω το φόντο των κομματιών από το default σε άλλο, π.χ. maya

ii) Δεν μπορώ στον οριζόντιο άξονα να βάλω συντεταγμένες από το ελληνικό αλφάβητο

iii) Δοκίμασα να αφήσω τις συντεταγμένες στα αγγλικά και μου "μεταφράζει" τα γράμματα σε ελληνικά (τα οποία δεν είναι αυτά που θέλω στο ii)). Μάλλον γιατί εχώ φορτώσει ελληνικά με το babel, αλλά δεν ξέρω πως να το φτιάξω.

Ο κώδικας latex:
 

\documentclass{scrartcl}

\title{Lawan Tanding}

\usepackage{courier}

\usepackage[english,greek]{babel}

\newcommand{\en}{\selectlanguage{english}}

\newcommand{\gr}{\selectlanguage{greek}}

\usepackage[lmargin=1cm,tmargin=1cm]{geometry}

\usepackage[utf8]{inputenc}

\usepackage{tgcursor}

\renewcommand*\familydefault{\ttdefault} %% Only if the base font of the document is to be typewriter style

\usepackage[LSBC3,T1]{fontenc}

\usepackage{chessfss}

\usepackage[svgnames]{xcolor}

\usepackage{xskak}

\usepackage{chessboard}

\usepackage{multicol}



\begin{document}

\normalfont



\pagecolor{white!20}

\color{DarkSlateGray}

\vfill

\large \fontsize{22}{22}\selectfont

\begin{center}

\textsf{ΣΚΑΚΙΣΤΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ}\\

\bigbreak

\bigbreak

\end{center}

\newchessgame



\fenboard{r2k1b1r/pp1Q2pp/4p3/1B4q1/8/2P5/P5PP/R4RK1 w - - 0 20}

\setfigfontfamily {maya}

\setboardfontencoding{LSBC3}

\setboardfontfamily {alfonso}

\chessboard[showmover=false,

blackfieldmaskcolor=CornflowerBlue!60,

blackfieldcolor=CornflowerBlue!60,

addfontcolors]



\end{document}

 

Δημοσ.

@Oxygene

Το έχω δοκιμάσει και εγώ πιο παλιά, δεν είχα ασχοηθεί πολύ και το παράτησα. Από όσο θυμάμαι είχα καταλήξει ότι δεν είναι τελείως straightforward. Δεν θα είναι δηλαδή απλά μια εντολή. Θα θέλει αλλαγές στα πακέτα. Καλύτερα ρώτα στο tex stackexchange

Δημοσ. (επεξεργασμένο)

Έριξα ένα μάτι ακόμα.

Αναφορά σε κείμενο

i)  Δεν μπορώ να αλλάξω το φόντο των κομματιών από το default σε άλλο, π.χ. maya

ii) Δεν μπορώ στον οριζόντιο άξονα να βάλω συντεταγμένες από το ελληνικό αλφάβητο

iii) Δοκίμασα να αφήσω τις συντεταγμένες στα αγγλικά και μου "μεταφράζει" τα γράμματα σε ελληνικά (τα οποία δεν είναι αυτά που θέλω στο ii)). Μάλλον γιατί εχώ φορτώσει ελληνικά με το babel, αλλά δεν ξέρω πως να το φτιάξω.

 

i) Μήπως αντί για φόντο εννοείς (σκακιστική) γραμματοσειρά; Αν ναι, είσαι σίγουρος ότι την έχεις εγκατεστημένη;

ii) Δεν υποστηρίζεται από τα xskak και chessboard. Ξανακοίταξα τον κώδικα, δεν νομίζω ότι θα είναι και εύκολο να γίνει αλλαγή.

iii) Σε πειράζει να χρησιμοποιήσεις xelatex; Αν όχι

\documentclass{article}

\usepackage{chessboard}
\usepackage{fontspec}
\setmainfont[%
    Kerning=On,
    Mapping=tex-text,
]{Minion Pro}

\begin{document}

This is some english text \\
Ελληνικό κείμενο 

\chessboard[setfen=5rk1/pp3N1p/4P3/2P5/3Q1PK1/P7/1Pr3pq/R3R3 w - - 0 0,
            showmover]

\end{document}

compilation με

xelatex foo.tex

Αν δεν έχεις την Minion Pro, αντικατέστησ;έ την με όποια OpenType ελληνική γραμματοσειρά έχεις στο σύστημά σου.

Επεξ/σία από pmav99
Δημοσ.

i) Ναι και ναι

ii) Το κατάφερα με μια μικρή αλλαγή στον κώδικα, πρόσθεσα το \usepackage{moreenum} και το labelbottomformat=\greek{filelabel} στο \chessboard. Το μόνο μου παράπονο είναι ότι δείχνει τις ελληνικές συντεταγμένες με πλαγιαστή γραμματοσειρά...

iii) Δεν το δοκίμασα ακόμη

 

Δημοσ. (επεξεργασμένο)

Α! δεν το είχα δει το labelbottomformat! Πολύ ωραία! Άρα σίγουρα γίνεται.

Η πλαγιαστή γραμματοσειρά είναι γιατί είναι math mode. Βάλε πχ
 

\begin{equation}
\alpha = \beta + \gamma
\end{equation}

και θα δεις ότι είναι η ίδια γραμματοσειρά.

Anyway για pdflatex δες αυτό:

\documentclass[12pt,headsepline]{article}

\usepackage[utf8]{inputenc}
\usepackage{textalpha}
\usepackage[english,greek]{babel}
\usepackage{xskak}
\usepackage{chessboard}

% Define an enum counter for the greek rank labels
\makeatletter
\newcommand{\greekrank}[1]{\expandafter\@greekrank\csname c@#1\endcsname}
\newcommand{\@greekrank}[1]{%
  \ifcase#1\or%
  \textalpha\or\textbeta\or\textgamma\or\textdelta\or\textepsilon\or%
  \textzeta\or\texteta\or\texttheta\or\textiota\or\textkappa\or%
  \textlambda\or\textmu\or\textnu\or\textxi\or\textomicron\or\textpi\or%
  \textrho\or\textsigma\or\texttau\or\textupsilon\or\textphi\or%
  \textchi\or\textpsi\or\textomega\else\@ctrerr\fi%
}
\makeatother

% Define custom formats for ranks and files
\newcommand{\rankfmt}{%
  {\makebox[0pt][l]{%
    \footnotesize\bfseries\sffamily\arabic{ranklabel}}}}

\newcommand{\filefmt}{%
  {\makebox[0pt][c]{%
      \footnotesize\bfseries\sffamily\greekrank{filelabel}}}}

% Define a command for displaying chessboards from FENs
\newcommand{\fen}[1]{%
  \chessboard[
    setfen=#1,
    hlabelformat=\rankfmt,
    vlabelformat=\filefmt,
    showmover
  ]%
}

% Define a command for displaying chessboards from PGNs
\newcommand{\pgn}[1]{%
  \newchessgame%
  \hidemoves{#1}
  \chessboard[
    hlabelformat=\rankfmt,
    vlabelformat=\filefmt,
    showmover
  ]%
}


\begin{document}

\selectlanguage{english}
Chess Board when english text is active

\fen{8/3k2p1/1p3pP1/p1pK1P2/P1P5/1P6/8/8 w - - 9 49}

\selectlanguage{greek}
Σκακιέρα όταν το ελληνικό κείμενο είναι ενεργό.

\fen{8/3k2p1/1p3pP1/p1pK1P2/P1P5/1P6/8/8 w - - 9 49}

\end{document}

 

edit

Για τις γραμματοσειρές νομίζω ότι πρέπει να εγκατασταθεί το πακετο enpassant που υπάρχει μόνο στο miktex και βαριέμαι να το βάλω με το χέρι. Εσύ πως το έβαλες;

https://ctan.org/pkg/enpassant

https://ctan.org/tex-archive/fonts/chess/enpassant

https://tex.stackexchange.com/questions/446040/how-to-set-figurine-font-on-chessboard-with-solid-grey-black-squares

edit

Παράδειγμα και με xelatex

Spoiler

\documentclass[12pt,draft]{scrartcl}

\usepackage[a4paper,xetex]{geometry}

%%------------------------------------------------------------------------------
% Languages
%%------------------------------------------------------------------------------
%% Greek language hyphenation rules
%\usepackage{xgreek}
%% Change hyphenation rules automatically when switching from greek to english glyphs.
%\usepackage[Greek,Latin]{ucharclasses}
%\setTransitionsForGreek{\setlanguage{greek}}{\setlanguage{english}}

%%------------------------------------------------------------------------------
% Fonts
%%------------------------------------------------------------------------------
\usepackage{fontspec}
\setmainfont[%
    Kerning=On,
    Mapping=tex-text,
]{Times New Roman}
\setsansfont[%
    Kerning=On,
    Mapping=tex-text,
]{Arial}
%\usepackage{microtype}         % advanced kerning rules

\usepackage{xskak}
\usepackage{chessboard}

% Define an enum counter for the greek rank labels
%
% For some reason plain greek letters are not accepted directly after
% the \or so we define the \letter command which basically does nothing
% i.e. it just returns its input.
\makeatletter
\newcommand{\letter}[1]{#1}
\newcommand{\greekrank}[1]{\expandafter\@greekrank\csname c@#1\endcsname}
\newcommand{\@greekrank}[1]{%
  \ifcase#1
  \or\letter{α}\or\letter{β}\or\letter{γ}\or\letter{δ}\or\letter{ε}\or\letter{ζ}%
  \or\letter{η}\or\letter{θ}\or\letter{ι}\or\letter{κ}\or\letter{λ}\or\letter{μ}%
  \or\letter{ν}\or\letter{ξ}\or\letter{ο}\or\letter{π}\or\letter{ρ}\or\letter{σ}%
  \or\letter{τ}\or\letter{υ}\or\letter{φ}\or\letter{χ}\or\letter{ψ}\or\letter{ω}%
  \else\@ctrerr\fi
}
\makeatother

% Define custom formats for ranks and files
\newcommand{\rankfmt}{%
  {\makebox[0pt][l]{%
    \footnotesize\bfseries\sffamily\arabic{ranklabel}}}}

\newcommand{\filefmt}{%
  {\makebox[0pt][c]{%
    %\footnotesize\bfseries\sffamily\greekrank{filelabel}\mdseries\rmfamily}}}
    \footnotesize\bfseries\sffamily\greekrank{filelabel}}}}

% Define a command for displaying chessboards from FENs
\newcommand{\fen}[1]{%
  \chessboard[
    setfen=#1,
    hlabelformat=\rankfmt,
    vlabelformat=\filefmt,
    showmover
  ]%
}

% Define a command for displaying chessboards from PGNs
\newcommand{\pgn}[1]{%
  \newchessgame%
  \hidemoves{#1}
  \chessboard[
    hlabelformat=\rankfmt,
    vlabelformat=\filefmt,
    showmover
  ]%
}

\begin{document}

\section{Διάγραμμα από pgn}

Ελληνικό και english text

\pgn{1.e4 e5 2.Nf3 Nc6 3.Bb5 a6}

\section{Διάγραμμα από fen}

Ελληνικό και english text

\fen{k3r3/1p4Q1/p1p4p/8/4q3/6PP/PP4PK/8 b - - 0 32}

\end{document}

 

 

Επεξ/σία από pmav99
  • 1 χρόνο αργότερα...
Δημοσ. (επεξεργασμένο)

Για να μην ανοίγω άσκοπα νέο νήμα.

Εγκατέστησα πρόσφατα το MikTex και μετά το Texmaker. Πρώτος στόχος να γράψω απλώς μία πρόταση στα ελληνικά.

 

 

Ενώ εγκατέστησα την πλήρη έκδοση του MikTex και το Texmaker πιο μετά.

Έψαξα και βρήκα αυτό

\documentclass[10pt]{article} \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage[english,greek]{babel} \usepackage[utf8]{inputenc} \begin{document} Γεια σου κόσμε \end{document}

 

 

με τις παραπάνω εντολές για ελληνικά βγάζει και το εξής

documentclass[10pt]{article}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[english,greek]{babel}
\usepackage[utf8]{inputenc}

\begin{document}


Γεια σου κόσμε

\end{document}

Package inputenc Warning: inputenc package ignored with utf8 based engines. To ίδιο συνέβη και με χρήση παρόμοιων εντολών με ένα πακέτο iso... κλπ.

Eπίσης κάτω δεξια στο Texmaker γραφει Utf8.

 

 

Έψαξα και άλλη εντολή,
documentclass[12pt]{article}
\usepackage{xltxtra}
\usepackage{xgreek}

\begin{document}
Έχει καλή μέρα
Ωραίος καιρός
\end{document}


Αυτη ετρεξε αλλα το αποτελεσμα ήταν να εμφανιζεται το "Ε          Ω" δηλαδή το αρχικό γράμμα της πρώτης λέξης των δύο γραμμών .
 

Μπορεί κάποιος να δοκιμάσει και τα δύο να δει τι θα προκύψει; 

Επεξ/σία από Perastikos111

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...