[[oktatas:szövegszerkesztés:latex|< LaTeX]]
====== LaTeX szakdolgozat ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2019, 2022
* Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: https://szit.hu
===== Bevezetés =====
Rövid leírás, hogyan kezdjünk szakdolgozatot írni LaTeX-ben.
Miért írnál LaTeX-ben szakdolgozatot? A LaTeX a szöveg-, bekezdés-, oldalformázási
feladatokat megoldja helyetted. Neked csak dolgozatra kell koncentrálnod,
és meg kell adnod, hogy mi fejezet cím, szakasz cím stb. Minden mást a LaTeX
intéz helyetted.
===== Az alap struktúra kialakítása =====
Ajánlott osztályok:
* report
* memoir
==== A preambulum ====
\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[magyar]{babel}
\usepackage{graphicx}
\graphicspath{ {images/} }
Jöhet a cím szerző és dátum információ:
\title{
{Szakdolgozat cím}\\
{\large Intézmény neve}\\
{\includegraphics{iskola_logo.png}}
}
\author{Nagy JÁnos}
\date{2019-01-02}
A \maketitle paranccsal le fogjuk generálni a címoldalt.
\begin{document}
\maketitle
\end{document}
==== Az első lépések ====
\chapter*{Áttekintés}
Ide jön az áttekintés...
\chapter*{Ajánlás}
Ide jön az ajánlás...
\chapter*{Nyilatkozat}
Nyilatkozat jön ide...
\chapter*{Köszönet}
Köszönet...
\tableofcontents
==== A tartalmi rész ====
Az egyes fejezeteket külön állományba tesszük.
Minden fejezet a "fejezetek" nevű könyvtárba kerül.
Az input parancsot a gyökér dokumentumban használjuk.
Mielőtt használjuk ezt a parancsot, készítsük el a
"fejezetek" nevű könyvtárat.
\chapter{Bevezetés}
\input{fejezetek/bevezetes}
\chapter{Második fejezet}
\input{fejezetek/fejezet02}
\chapter{Harmadik fejezet}
\input{fejezetek/fejezet03}
\chapter{Negyedik fejezet}
\input{fejezetek/fejezet04}
\chapter{Befejezés}
\input{fejezetek/befejezes}
==== Utolsó lépés ====
\appendix
\chapter{Függelék cím}
\input{fejezetek/fuggelek}
==== Végül a teljes fődokumentum ====
\documentclass[12pt,twoside]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[magyar]{babel}
\usepackage{graphicx}
\graphicspath{ {images/} }
\title{
{Szakdolgozat cím}\\
{\large Intézmény neve}\\
{\includegraphics{logo.png}}
}
\author{Nagy János}
\date{2019-01-02}
\begin{document}
\maketitle
\chapter*{Áttekintés}
Ide jön az áttekintés...
\chapter*{Ajánlás}
Ide jön az ajánlás...
\chapter*{Nyilatkozat}
Ide jön a nyilatkozat...
\chapter*{Köszönet}
Ide jön a köszönet...
\tableofcontents
\chapter{Bevezetés}
\input{fejezetek/bevezetes}
\chapter{Második fejezet}
\input{fejezetek/fejezet02}
\chapter{Harmadik fejezet}
\input{fejezetek/fejezet03}
\chapter{Negyedik fejezet}
\input{fejezetek/fejezet04}
\chapter{Befejezés}
\input{fejezetek/befejezes}
\end{document}
===== A lapok testreszabása =====
A geometry és a fancyhdr csomagokat használjuk a testreszabáshoz.
Az első lépés a dokumentumot kétoldalasra állítása, hogy
nyomtatáskor mindkét oldalra nyomtassunk.
Ehhez adjuk hozzá documentclass parancshoz a twoside kapcsolót:
\documentclass[12pt,twoside]{report}
==== A geometry csomag ====
Betöltjük a geometry csomagot, majd szögletes zárójelben, leírjuk
a lap elrendezését. Elsőként beállítjuk a papírméretet, amely
a4paper lesz. A szöveg szélességét a width kulcsszóval állítjuk,
egy egyenlőségjel után milliméterben megadjuk a szélességét.
Ezt követően az alsó és felső margót határozzuk meg:
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm]{geometry}
Az eredményben megfigyelhető, hogy a belső margók kisebbek lesznek,
mint a külső margók. Ez a twoside kapcsolónak köszönhető.
Ha ennek ellenére a kötésmargónak szeretnénk kicsit többet, azt a
bindingoffset kapcsolóval tehetjük meg:
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}
==== A fancyhdr csomag ====
A fancyhdr csomaggal előlábat és élőfejet adunk a dokumentumunknak.
Elsőként betöltjük a fancyhdr csomagot, majd beállítjuk oldalstílusnak:
\usepackage{fancyhdr}
\pagestyle{fancy}
Ha megnézzük az eredményt, láthatjuk, hogy minden oldal kapott élőfejet és
élőlábat. Az élőfej alapértelmezésként tartalmazza a fejezet- és
szakaszcímeket.
Egy fejezet kezdő oldalán nem jelenik meg előfej. Ha a szöveg átnyúlik a
következő oldalakra, akkor már látni fogjuk az élőfejet.
Ha elégedettek vagyunk az eredménnyel, akkor így is hagyhatjuk.
Ha szeretnénk testre szabni az élőfejet és az élőlábat, akkor
a fancyhdr csomag fancyhead és fancyfoot parancsát fogjuk használni.
A kapcsos zárójelben megadjuk a tartalmat, a szögletes zárójelben
megmondjuk mi jelenjen meg. A fancyhdr csomag lehetővé teszi
a R, L és C betűk használatával a jobb, bal és középső részre
való hivatkozást. A páratlan oldalakra az O, a páros oldalakra az
E betűvel hivatkozhatunk.
\fancyhead{} % először mindent törlünk
\fancyhead[RO,LE]{A kívánt cím}
% megadjuk mindkét élőfejben páratlan oldalon "A kívánt cím" szöveg legyen,
% a páros baloldalon szintén ez a szöveg
Egyszerre az élőfej és az élőláb:
\fancyhead{}
\fancyhead[RO,LE]{A szakdolgozat címe}
\fancyfoot{}
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,RE]{Fejezet \thechapter}
\fancyfoot[CO,CE]{Nagy János}
A parancsok sorra:
* töröljük az egész élőfejet
* RO -- páratlan oldalon a "A szakdolgozat címe" szöveg jobboldalon
* LE -- páros oldalon a "A szakdolgozat címe" szöveg baloldalon
* töröljük az egész élőlábat
* LE -- páros oldalon balra az oldalszám
* RO -- páratlan oldalon jobbra az oldalszám
* LO -- páratlan oldalon balra a "Fejezet " szöveg és a fejezet száma
* RE -- páros oldalon jobbra a "Fejezet " szöveg és a fejezet száma
* CO,CE -- páratlan és páros oldalon középen a "Nagy János" szöveg
Nézzük meg az eredményt.
A fejlécek és láblécek vonalvastagsága:
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0.5pt}
Így a láblécben is megjelenik egy vonal.
==== Oldalstílus ====
Ha szeretnénk egy oldalon a fejlécet és láblécet eltüntetni:
\pagestyle{empty}
Ha az oldalszámot meg akarjuk hagyni, csak az élőfej és az élőlábat
szeretnénk eltüntetni:
\pagestyle{plain}
Ügyeljünk arra, hogy ez a következő oldalak stílusát is megváltoztatja.
==== A végül a teljes fődokumentum ====
\documentclass[12pt,twoside]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[magyar]{babel}
\usepackage{graphicx}
\graphicspath{ {images/} }
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm]{geometry}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead{}
\fancyhead[RO,LE]{A szakdolgozat címe}
\fancyfoot{}
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,RE]{Fejezet \thechapter}
\fancyfoot[CO,CE]{Nagy János}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
\title{
{Szakdolgozat cím}\\
{\large Intézmény neve}\\
{\includegraphics{logo.png}}
}
\author{Nagy János}
\date{2019-01-02}
\usepackage{lipsum}
\begin{document}
\maketitle
\chapter*{Áttekintés}
Ide jön az áttekintés...
\chapter*{Ajánlás}
Ide jön az ajánlás...
\chapter*{Nyilatkozat}
Ide jön a nyilatkozat...
\chapter*{Köszönet}
Ide jön a köszönet...
\tableofcontents
\chapter{Bevezetés}
\input{fejezetek/bevezetes}
\chapter{Második fejezet}
\input{fejezetek/fejezet02}
\chapter{Harmadik fejezet}
\input{fejezetek/fejezet03}
\chapter{Negyedik fejezet}
\input{fejezetek/fejezet04}
\chapter{Befejezés}
\input{fejezetek/befejezes}
\end{document}
===== Ábrák, alábrák és táblázatok =====
==== Kép ====
A képet abba a könyvtárba kell elhelyezni, amit megadunk
a **\graphicspath** paranccsal.
\usepackage{graphicx}
\graphicspath{ {images/} }
\begin{figure}[h]
\centering
\includegraphics[scale=0.5]{kepfajl}
\caption{Példa kép}
\label{fig:példakép01}
\end{figure}
A **\caption** parancs feliratot szúr be a kép számára.
A **\label** egy hivatkozás célját készíti el. Egy **\ref** vagy egy **\pageref**
hivatkozásban hivatkozhatunk a \label parancsban megadott szövegre.
A felirat és az ábrajegyzékbe beírt szöveg eltérhet:
\caption{jegyzékbe kerülő cím}{cím}
Táblázatok jegyzéke:
\listoftables
Ábrák jegyzéke:
\listoffigures
===== Bibliográfia =====
Lásd \cite{Programozás} és \cite[29.~oldal]{Adatbázis}
...
\begin{thebibliography}{2}
\bibitem{Programozás} Nagy János, Piros Géza:
Bevezetés a programozásba, Budapest, 1995, Patent Kiadó.
\bibitem{Adatbázis} Táncos Mihály, Fronter Attila:
Adatbázis-fejlesztés, Budapest, 2009, Pátra Könyvkiadó.
\end{thebibliography}
===== Címoldal =====
A címoldalt kicsit átalakíthatjuk. Külön állományba írhatjuk a leírását,
például egy cimlap.tex fájlba.
A fődokumentumban a maketitle parancsot cseréljük le egy input parancsra,
amellyel beemeljük az új címlapot.
%\maketitle
\input{fejezetek/cimlap}
\begin{titlepage}
\begin{center}
\vspace*{1cm}
\textbf{Szakdolgozat címe}
\vspace{0.5cm}
Szakdolgozat alcíme
\vspace{1.5cm}
\textbf{Nagy János}
\vfill
Diplomamunka
\vspace{0.8cm}
\includegraphics[width=0.2\textwidth]{logo}
Szakma neve\\
Iskola neve\\
Ország\\
Dátum
\end{center}
\end{titlepage}
Megváltoztathatjuk a fontméreteket is:
\tiny
\scriptsize
\footnotesize
\small
\normalsize
\large
\Large
\LARGE
\huge
\Huge
\begin{titlepage}
\begin{center}
\vspace*{1cm}
\Huge
\textbf{Szakdolgozat címe}
\vspace{0.5cm}
\LARGE
Szakdolgozat alcíme
\vspace{1.5cm}
\textbf{Nagy János}
\vfill
Diplomamunka
\vspace{0.8cm}
\includegraphics[width=0.2\textwidth]{logo}
\Large
Szakma neve\\
Iskola neve\\
Ország\\
Dátum
\end{center}
\end{titlepage}
===== Összefoglaló =====
\newpage
\thispagestyle{plain}
\begin{center}
\Large
\textbf{A szakdolgozat címe}
\vspace{0.4cm}
\large
A szakdolgozat alcíme
\vspace{0.4cm}
\textbf{Nagy János}
\vspace{0.9cm}
\textbf{Összefoglalás}
\end{center}
Lorem ipsum dolor set amet ...
===== Eredmény =====
==== PDF ====
==== Forrás ====
===== Függelék =====
==== Egyszerűsített példa ====
\documentclass[a4paper]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[magyar]{babel}
\usepackage{graphicx}
\graphicspath{ {images/} }
\author{Nagy János}
\title{Hogyan írjuk jól formázott szakdolgozatot}
\begin{document}
\maketitle
\tableofcontents
\chapter{A használt nyelv bemutatása}
\section{Programozási nyelvek}
A programozási nyelvek...
\chapter{A program bemutatása}
\section{Hasonló programok}
Hasonló programokat találunk számtalant...
\end{document}
===== Források =====
* [[https://www.overleaf.com/learn/latex/How_to_Write_a_Thesis_in_LaTeX_(Part_1):_Basic_Structure]]
* http://kb.mit.edu/confluence/pages/viewpage.action?pageId=3907016