Advertisement
Guest User

Untitled

a guest
Jan 19th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.28 KB | None | 0 0
  1. % LaTeX predložak za pismene radove na
  2. % Fakultetu elektrotehnike i računarstva.
  3. % Verzija: 1.0
  4. %
  5. % Pokriveni radovi su: Seminar, Završni i Diplomski rad
  6. %
  7. % Opcije:
  8. % - seminar - podesi stil za Seminar (standardna postavka)
  9. % - diplomski - podesi stil za Diplomski rad
  10. % - zavrsni - podesi stil za Završni rad
  11. % - lmodern - koristi font lmodern (standardna postavka)
  12. % - times - koristi font times
  13. % - utf8 - učitaj inputenc paket i opcijom utf8 (standardna postavka)
  14. % - cp1250 - učitaj inputenc paket i opcijom cp1250
  15. % - authoryear - stil citiranja ``(author, year)'' (standardna postavka)
  16. % - numeric - stil citiranja ``[broj]''
  17.  
  18. \NeedsTeXFormat{LaTeX2e}
  19. \ProvidesClass{fer}
  20.  
  21. % Predefinirane vrijednosti opcija
  22. \newif\if@fontlmodern \global\@fontlmoderntrue
  23. \newif\if@fonttimes \global\@fonttimesfalse
  24. \newif\if@radzavrsni \global\@radzavrsnifalse
  25. \newif\if@radseminar \global\@radseminartrue
  26. \newif\if@raddiplomski \global\@raddiplomskifalse
  27. \newif\if@citeauthoryear \global\@citeauthoryeartrue
  28. \newif\if@citenumeric \global\@citenumericfalse
  29. \newif\if@encutf \global\@encutftrue
  30. \newif\if@enccp \global\@enccpfalse
  31.  
  32. % Postavi font
  33. \DeclareOption{lmodern}{\@fontlmoderntrue%
  34. \@fonttimesfalse}
  35. \DeclareOption{times}{\@fonttimestrue%
  36. \@fontlmodernfalse}
  37.  
  38. % Tip rada
  39. \DeclareOption{seminar}{\@radseminartrue%
  40. \@radzavrsnifalse%
  41. \@raddiplomskifalse}
  42. \DeclareOption{zavrsni}{\@radseminarfalse%
  43. \@radzavrsnitrue%
  44. \@raddiplomskifalse}
  45. \DeclareOption{diplomski}{\@radseminarfalse%
  46. \@radzavrsnifalse%
  47. \@raddiplomskitrue}
  48.  
  49. % Encoding
  50. \DeclareOption{utf8}{\@encutftrue%
  51. \@enccpfalse}
  52. \DeclareOption{cp1250}{\@encutffalse%
  53. \@enccptrue}
  54.  
  55. % Način citiranja
  56. \DeclareOption{authoryear}{\@citeauthoryeartrue%
  57. \@citenumericfalse}
  58. \DeclareOption{numeric}{\@citeauthoryearfalse%
  59. \@citenumerictrue}
  60.  
  61. \ProcessOptions
  62.  
  63. \LoadClass[12pt, onecolumn]{report}
  64.  
  65. \RequirePackage[a4paper, left=3.5cm, right=3cm, bottom=3cm, top=3cm]{geometry}
  66.  
  67. % Postavljanje encodinga
  68. \if@encutf \RequirePackage[utf8]{inputenc}
  69. \else \if@enccp \RequirePackage[cp1250]{inputenc} \fi
  70. \fi
  71.  
  72. \RequirePackage[croatian]{babel}
  73. \RequirePackage[T1]{fontenc}
  74. \RequirePackage{graphicx} % Uključeno jer je često korišteno
  75. \RequirePackage{amssymb} % Uključeno jer je često korišteno
  76. \RequirePackage{amsmath} % Uključeno jer je često korišteno
  77. \RequirePackage{fixltx2e}
  78. \RequirePackage{caption}
  79. \RequirePackage{ifthen}
  80. \RequirePackage{url} % Potrebno radi natbiba
  81. \RequirePackage{enumitem} % Potrebno radi izmjene itemize okoline
  82.  
  83. % Numeriranje literature kod seminara
  84. \if@radseminar%
  85. \RequirePackage[nottoc, numbib, chapter]{tocbibind}
  86. \else
  87. \RequirePackage[nottoc]{tocbibind}
  88. \fi
  89.  
  90. % Postavljanje fonta
  91. \if@fonttimes\RequirePackage{times} \fi
  92. \if@fontlmodern\RequirePackage{lmodern} \fi
  93.  
  94. % Postavljanje stila citiranja
  95. \if@citeauthoryear \RequirePackage[authoryear, round]{natbib}
  96. \else \RequirePackage[numbers, square]{natbib}
  97. \fi
  98.  
  99. % Umjesto poziva \RequirePackage[outsidefoot]{pageno}.
  100. % Neke LaTeX distribucije odbijaju automatski instalirati pageno paket.
  101. % Stoga, dio paketa koji se koristi je kopiran u ovu cls datoteku.
  102. \renewcommand{\ps@plain}{%
  103. \renewcommand{\@mkboth}{\@gobbletwo}%
  104. \renewcommand{\@oddhead}{}%
  105. \renewcommand{\@evenhead}{}%
  106. \renewcommand{\@evenfoot}{\reset@font\rmfamily\thepage\hfil}%
  107. \renewcommand{\@oddfoot}{\reset@font\rmfamily\hfil\thepage}}
  108. \pagestyle{plain}
  109.  
  110. \renewcommand{\captionlabelfont}{\bfseries}
  111. \renewcommand{\captionfont}{\small}
  112.  
  113. % 1.5 prored, 1.3 je faktor za množenje
  114. \linespread{1.3}
  115.  
  116. % Promjena naziva poglavlja ``Bibliografija'' -> ``Literatura''
  117. \addto\captionscroatian{%
  118. \def\bibname{Literatura}
  119. }
  120.  
  121. % Podešavanje oznaka kod listi (1. razina je crtica, 2. puni krug)
  122. \renewcommand{\labelitemi}{\textendash}
  123. \renewcommand{\labelitemii}{\textbullet}
  124.  
  125. % http://www.tex.ac.uk/cgi-bin/texfaq2html?label=seccntfmt
  126. % dodaje tocku nakon section broja ali ne i nakon chapter!
  127. % za chapter se koristi jednostavno http://theoval.cmp.uea.ac.uk/~nlct/latex/thesis/node10.html
  128. \renewcommand*{\@seccntformat}[1]{%
  129. \csname the#1\endcsname.\quad
  130. }
  131.  
  132. % http://stackoverflow.com/questions/2426963/modifying-latex-table-of-contents-to-add-a-period-after-chapter-table-figure-numb
  133. % Dodaje u toc tocke
  134. \let \savenumberline \numberline
  135. \def \numberline#1{\savenumberline{#1.}}
  136.  
  137. \renewcommand\theequation{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@equation}
  138. \renewcommand\thefigure{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure}
  139. \renewcommand\thetable{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@table}
  140.  
  141. % Rimski brojevi stranica za zahvalu i tablicu sadržaja.
  142. \renewcommand{\thepage}{\roman{page}}
  143.  
  144. \if@radseminar\else%
  145. % Ispis napomene o umetanju izvornika.
  146. \newcommand{\izvornik}{%
  147. \newpage
  148. \thispagestyle{empty}
  149. \vspace*{\fill}
  150. \hfil \textsl{Umjesto ove stranice umetnite izvornik Va\v{s}eg rada.} \par \hfil
  151. \hfil \textsl{Da bi ste uklonili ovu stranicu obri\v{s}ite naredbu \texttt{\textbackslash izvornik}.} \hfil
  152. \vspace*{\fill}
  153. }
  154. \fi
  155.  
  156. % Dodana zahvala
  157. \newif\if@dodanazahvala \global\@dodanazahvalafalse
  158. \if@radseminar\else%
  159. % Naredba za dodavanje zahvale.
  160. \newcommand{\zahvala}[1]{%
  161. \newpage
  162. \setcounter{page}{3}
  163. \vspace*{\fill}
  164. \hfil {\itshape #1}\hfil
  165. \vspace*{\fill}
  166. \@dodanazahvalatrue
  167. }
  168. \fi
  169.  
  170. % TOC
  171. %\renewcommand\tableofcontents{%
  172. % \if@dodanazahvala\else \setcounter{page}{4} \fi
  173. % \if@radseminar \setcounter{page}{2} \fi
  174. % \chapter*{\contentsname
  175. % \@mkboth{%
  176. % \MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%
  177. % \@starttoc{toc}%
  178. %}
  179.  
  180. \newboolean{atappendix}
  181. \setboolean{atappendix}{false}
  182. \newboolean{secondpart}
  183. \setboolean{secondpart}{false}
  184.  
  185. \renewcommand{\appendix}{
  186. \setboolean{atappendix}{true}
  187. \setcounter{chapter}{0}
  188. \renewcommand{\thechapter}{\Alph{chapter}}
  189. }
  190.  
  191. \renewcommand{\@makechapterhead}[1]{%
  192. \ifthenelse{\boolean{atappendix}}{%
  193. \vspace*{50\p@}%
  194. {\setlength{\parskip}{0em} \parindent \z@ \raggedright \normalfont
  195. \interlinepenalty\@M
  196. \ifnum \c@secnumdepth >\m@ne
  197. \Huge\bfseries Dodatak \thechapter \\ #1
  198. \par\nobreak
  199. \fi
  200. \nobreak
  201. \vskip 40\p@
  202. }
  203. }
  204. {
  205. \ifthenelse{\boolean{secondpart}}
  206. {
  207. }
  208. {
  209. \setcounter{page}{1}
  210. \renewcommand{\thepage}{\arabic{page}}
  211. \setboolean{secondpart}{true}
  212. }
  213.  
  214. \vspace*{50\p@}%
  215. {\setlength{\parskip}{0em} \parindent \z@ \raggedright \normalfont
  216. \interlinepenalty\@M
  217. \ifnum \c@secnumdepth >\m@ne
  218. \Huge\bfseries \thechapter.~#1
  219. \par\nobreak
  220. \fi
  221. \nobreak
  222. \vskip 40\p@
  223. }
  224. }
  225. }
  226.  
  227. \renewcommand{\@makeschapterhead}[1]{%
  228. \ifthenelse{\boolean{atappendix}}{%
  229. \vspace*{50\p@}%
  230. {\setlength{\parskip}{0em} \parindent \z@ \raggedright
  231. \normalfont
  232. \interlinepenalty\@Mdef
  233. \Huge\scshape Dodatak \\ #1\par
  234. \nobreak
  235. \vskip 40\p@
  236. }
  237. }
  238. {%
  239. \vspace*{50\p@}%
  240. {\setlength{\parskip}{0em} \parindent \z@ \raggedright
  241. \normalfont
  242. \interlinepenalty\@M
  243. \Huge\scshape #1\par
  244. \nobreak
  245. \vskip 40\p@
  246. }
  247. }
  248. }
  249.  
  250. \if@radseminar%
  251. \def\voditelj#1{\gdef\@voditelj{#1}}
  252. \def\@voditelj{\@latex@warning@no@line{Voditelj nije naveden.
  253. Koristi \noexpand\voditelj za definiranje}}
  254. \else%
  255. \def\thesisnumber#1{\gdef\@thesisnumber{#1}}
  256. \def\@thesisnumber{\@latex@warning@no@line{Broj rada nije definiran.
  257. Koristi \noexpand\thesisnumber za definiranje}}
  258. \fi
  259.  
  260. \if@titlepage
  261. \renewcommand\maketitle{%
  262. \begin{titlepage}%
  263. \let\footnotesize\small
  264. \let\footnoterule\relax
  265.  
  266. \begin{center}
  267. {\large\sffamily SVEU\v{C}ILI\v{S}TE U ZAGREBU}
  268.  
  269. {\large\bfseries\sffamily FAKULTET ELEKTROTEHNIKE I RA\v{C}UNARSTVA}
  270. \end{center}
  271. \vfill
  272. \begin{center}%
  273. \if@radzavrsni%
  274. {\large\sffamily Raspoznavanje uzoraka \par}%
  275. \else \if@raddiplomski%
  276. {\large\sffamily DIPLOMSKI RAD br.~\@thesisnumber \par}%
  277. \else {\large\sffamily\bfseries SEMINAR \par}%
  278. \fi\fi
  279. \if@radseminar \vskip 3em%
  280. \else \vskip 1em%
  281. \fi
  282. {\huge \bfseries\sffamily \@title \par}%
  283. \vskip 1em%
  284. {\large\sffamily\lineskip .75em%
  285. \begin{tabular}[t]{c}%
  286. \if@radseminar%
  287. {\itshape \@author} \\
  288. Voditelj: {\itshape \@voditelj}
  289. \else
  290. \@author
  291. \fi
  292. \end{tabular}\par}%
  293. \end{center}\par
  294. \vfill
  295. \begin{center}
  296. {\sffamily\large Zagreb,
  297. \ifcase\month\or
  298. sije\v{c}anj\or velja\v{c}a\or o\v{z}ujak\or travanj\or svibanj\or
  299. lipanj\or srpanj\or kolovoz\or rujan\or listopad\or studeni\or
  300. prosinac\fi \space \number\year.%
  301. }
  302. \end{center}
  303. \end{titlepage}%
  304. \setcounter{footnote}{0}%
  305. \global\let\maketitle\relax
  306. % \global\let\@thanks\@empty
  307. % \global\let\@author\@empty
  308. \global\let\@date\@empty
  309. % \global\let\@title\@empty
  310. % \global\let\title\relax
  311. % \global\let\author\relax
  312. \global\let\date\relax
  313. \global\let\and\relax
  314. }
  315. \fi
  316.  
  317. \newdimen\listindentation
  318. \setlength{\listindentation}{3 em}
  319.  
  320. % Podešavanje izemize okoline
  321. % Zahtjeva enumitem paket
  322. \renewenvironment{itemize}%
  323. {
  324. \setlength{\parskip}{0em}
  325. \advance\@itemdepth\@ne
  326. \edef\@itemitem{labelitem\romannumeral\@itemdepth}%
  327.  
  328. \begin{list}{\csname\@itemitem\endcsname}{\setlength{\leftmargin}{\listindentation}\setlength{\itemsep}{0 em}\setlength{\topsep}{0 em}}
  329. }%
  330. {\end{list}}
  331.  
  332. % Naredba \engl
  333. \newcommand{\engl}[1]{(engl.~\emph{#1})}
  334.  
  335. % Sažetak na hrvatskom
  336. \newenvironment{sazetak}
  337. {
  338. \newpage
  339. \vspace*{\fill}
  340. \thispagestyle{empty}
  341. \begin{center}
  342. {\bf \@title}
  343. \end{center}
  344. \hspace*{\fill} {\bf Sa\v{z}etak} \hspace*{\fill} \par
  345. \vspace*{25pt}
  346. }
  347. {
  348. \vspace*{\fill}
  349. }
  350.  
  351. % Ključne riječi na hrvatskom
  352. \newcommand{\kljucnerijeci}[1]
  353. {
  354. \vspace{15pt}
  355. \noindent \textbf{Klju\v{c}ne rije\v{c}i:} #1
  356. }
  357.  
  358. % Ključne riječi na engleskom
  359. \newcommand{\keywords}[1]
  360. {
  361. \vspace{15pt}
  362. \noindent \textbf{Keywords:} #1
  363. }
  364.  
  365. % Sažetak na engleskom
  366. \def\engtitle#1{\gdef\@engtitle{#1}}
  367. \def\@engtitle{\@latex@warning@no@line{Engleski naziv rada nije definiran.
  368. Koristi \noexpand\engtitle za definiranje}}
  369. \renewenvironment{abstract}
  370. {
  371. \vspace*{\fill}
  372. \thispagestyle{empty}
  373. \begin{center}
  374. {\bf \@engtitle}
  375. \end{center}
  376. \hspace*{\fill} {\bf Abstract} \hspace*{\fill} \par
  377. \vspace*{25pt}
  378. }
  379. {
  380. \vspace*{\fill}
  381. }
  382.  
  383. \endinput
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement