%\iffalse meta-comment % % Copyright 2018 Henrique Baron % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2005/12/01 or later. % % This work has the LPPL maintenance status `maintained'. % % The Current Maintainer of this work is Henrique Baron. % % This work consists of the files ucsmonograph.dtx and ucsmonograph.ins % and the derived file ucsmonograph.cls. % % Classe ucsmonograph % Formata um documento da classe abnTeX2 para o padrão exigido pela Universidade de Caxias do Sul para % monografias. % % DUVIDAS E SUGESTOES: Abra uma issue na pagina do projeto: % https://github.com/HenriqueBaron/ucsmonograph % %\fi % %\iffalse %<*driver> \ProvidesFile{ucsmonograph.dtx} % %\NeedsTeXFormat{LaTeX2e} %\ProvidesClass{ucsmonograph} %<*class> [2019/11/07 v1.3.0 Padrao de monografias da UCS] % % %<*driver> \documentclass{ltxdoc} \usepackage[brazil]{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage{hyperref} \hypersetup{% colorlinks=true, linkcolor=black, } \EnableCrossrefs \CodelineIndex \RecordChanges \begin{document} \DocInput{ucsmonograph.dtx} \end{document} % %\fi % \CheckSum{771} % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z % Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z % Digits \0\1\2\3\4\5\6\7\8\9 % Exclamation \! Double quote \" Hash (number) \# % Dollar \$ Percent \% Ampersand \& % Acute accent \' Left paren \( Right paren \) % Asterisk \* Plus \+ Comma \, % Minus \- Point \. Solidus \/ % Colon \: Semicolon \; Less than \< % Equals \= Greater than \> Question mark \? % Commercial at \@ Left bracket \[ Backslash \\ % Right bracket \] Circumflex \^ Underscore \_ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % %\changes{v1.0.0}{2018/07/31}{Versão inicial} %\changes{v1.1.0}{2018/08/16}{Configuração automática do pacote hyperref; correção na necessidade de chamar o pacote glossaries-extra; geração automática dos bookmarks do PDF} %\changes{v1.2.0}{2018/11/22}{inclusão do pacote icomma; posicionamento vertical com raggedright} %\changes{v1.2.1}{2018/12/10}{Correção de compatibilidade com o pacote substr} % %\GetFileInfo{ucsmonograph.dtx} % %\DoNotIndex{\newcommand,% %\newenvironment,% %\@oldcontentsline,% %\@firstoftwo,% %\@oldforeignlanguage,% %\@olddedicatoria,% %\@oldendedicatoria,% %\@secondoftwo,% %\\,% %\',% %\ABNTEXsubsubsectionfont,% %\ABNTEXsubsubsectionfontsize,% %\ABNTEXsubsubsubsectionfont,% %\ABNTEXsubsubsubsectionfontsize,% %\addto,% %\addtocounter,% %\adjustimage,% %\allowdisplaybreaks,% %\AtBeginDocument,% %\begin,% %\bfseries,% %\boolean,% %\centering,% %\citebrackets,% %\contentsline,% %\contentsname,% %\counterwithout,% %\csname,% %\CurrentOption,% %\DeclareOption,% %\DeclareStringOption,% %\def,% %\documentclass,% %\else,% %\emph,% %\end,% %\endcsname,% %\equal,% %\expandafter,% %\fboxsep,% %\fi,% %\fill,% %\footnotesize,% %\hfill,% %\hspace,% %\ifluatex,% %\ifthenelse,% %\ifx,% %\ignorespaces,% %\itshape,% %\l@section,% %\let,% %\linewidth,% %\listfigurename,% %\listtablename,% %\LoadClass,% %\makeevenhead,% %\makeoddhead,% %\makepagestyle,% %\MakeTextUppercase,% %\mdseries,% %\newboolean,% %\newlength,% %\newlistentry,% %\noindent,% %\normalsize,% %\OR,% %\par,% %\PassOptionsToClass,% %\PassOptionsToPackage,% %\pdfbookmark,% %\ProcessKeyvalOptions,% %\ProcessOptions,% %\raggedright,% %\relax,% %\renewcommand,% %\RequirePackage,% %\restylefloat,% %\rule,% %\setboolean,% %\setfloatadjustement,% %\setfloatlocations,% %\setlength,% %\SingleSpacing,% %\space,% %\su@ExpandTwoArgs,% %\su@IfSubStringInString,% %\textbf,% %\textendash,% %\textwidth,% %\uppercase,% %\vfill,% %\vspace,% %\WithSuffix,% %} % %\title{Classe \textsf{ucsmonograph}\thanks{Esse documento corresponde a \textsf(ucsmonograph)~\fileversion, de \filedate.}} %\author{Henrique Baron \\ \texttt{henrique.baron@gmail.com}} % %\maketitle % %\section{Introdução} % Esta classe foi desenvolvida para formatar monografias segundo o Guia para Elaboração de Trabalhos Acadêmicos da Universidade de Caxias do Sul. % Este código foi desenvolvido tendo por base a versão 2018 do documento, e tem por objetivo simplificar o uso do \LaTeX\ por alunos da UCS que têm pouca experiencia na linguagem, abstraindo algumas configurações de formatação e comandos mais complexos. % % A classe |ucsmonograph| é baseada na classe |abntex2|, que formata documentos acadêmicos segundo as normas ABNT. % O código desenvolvido realiza alterações em algumas macros e expõe outros que são necessários para antender requisitos da UCS, mas que não são oferecidos pela classe |abntex2| por padrão. % %\subsection{Se seu documento possui fórmulas} % Pode ser necessário compilar o trabalho com Lua\LaTeX. % Mesmo para iniciantes no \LaTeX, essa não é uma mudança complicada, e pode ser necessária para atender uma exigência da UCS. % Isso porque o padrão da universidade diz que a fonte deve ser a mesma em \emph{todo} o documento, inclusive nas fórmulas, onde o \LaTeX\ e até mesmo outros editores como o Microsoft Word utilizam uma fonte diferente. % Isso serve para deixar o documento de fato mais legível e mais ''bonito'', e é possível negociar com os responsáveis se existe margem para manter essa diferença de fontes entre texto e equações. % % Caso não seja permitido, é o ponto onde o Lua\LaTeX~entra. % No pdf\LaTeX~não é possível alterar a fonte do texto matemático. % Por conta disso, a classe |ucsmonograph| é preparada para carregar conjuntos de caracteres e a fonte Latin Modern automaticamente se o documento estiver sendo compilado com o Lua\LaTeX. % %\section{Instalação} % %\subsection{Editores \LaTeX\ off-line} % Se você está utilizando um editor \LaTeX\ off-line, basta buscar pela classe |ucsmonograph| no seu \emph{package manager}. % A classe |ucsmonograph| integra as distribuições do MiK\TeX\ e do \TeX Live. % %\subsection{Editores \LaTeX\ on-line} % Para editores \LaTeX\ on-line como o Share\LaTeX\ ou o Overleaf, você precisa fazer o download dos arquivos compilados da classe |ucsmonograph|. % Para isso, vá até a página de lançamentos (\emph{releases}) do projeto no GitHub em \url{https://github.com/HenriqueBaron/ucsmonograph/releases}. % Faça o \emph{download} da última versão da classe, baixando tanto o arquivo |.cls| como o arquivo |.pdf|. % O arquivo |.cls| pode ser carregado para o seu projeto online e utilizado normalmente. % %\section{Utilização} % Para utilizar a classe |ucsmonograph|, é recomendado consultar os manuais da classe |abntex2| e do pacote |abntex2cite|, que é utilizado para as referências bibliográficas. % Este manual descreve apenas os comandos desenvolvidos na própria classe |ucsmonograph| e outras redefinições de comandos que podem ser pertinentes ao usuário. % %\subsection{Chamada da classe e opções}\label{sec:chamada-classe} %\DescribeMacro{\documentclass} % A classe pode ser chamada com as opções-padrão que são nativas do \LaTeX~e são encaminhadas para a classe |abntex2|. % Um exemplo típico para chamar a classe ao iniciar o documento pode ser %\begin{verbatim} % \documentclass[12pt,oneside,english,brazil]{ucsmonograph} %\end{verbatim} % Outras opções que podem ser alteradas ou acrescentadas a essa chamada são exibidas abaixo. % %\DescribeMacro{oneside} % Essa opção pode ser substituída por |twoside| para que o documento seja impresso em frente-e-verso. % Embora seja permitido pelo Guia da UCS, isso é vedado pela especificação de alguns cursos, como em engenharias. % %\DescribeMacro{english,brazil} % As opções de idiomas podem ser alteradas, de modo que \emph{o idioma principal seja sempre o último}. % Ou seja, outros exemplos para este par de opções seriam |spanish,brazil| ou |german,brazil|. % %\DescribeMacro{lmodern} % Habilita a fonte Latin Modern -- que é uma ''evolução'' à fonte Computer Modern, tradicional do \LaTeX~-- e é equivalente a chamar o seguinte código no preâmbulo do trabalho: |\usepackage{lmodern}|. % %\DescribeMacro{cite=} % Define como é o tipo de citação no documento. % O valor dado a essa chave é passado diretamente para a classe |abntex2cite|, e ela pode ser preenchida como: |cite=alf|, que é o valor-padrão, para citações do tipo ''(AUTOR, 2018)''; ou |cite=num| para citações numéricas, no estilo de artigos científicos, que \emph{são permitidas pelo guia da UCS.} % %\DescribeMacro{siglas} % Habilita a produção automática da lista de siglas através de um arquivo |.bib|, semelhante ao de bibliografia. % Isso é feito através da chamada do pacote |glossaries-extra| com a opção |record|, e é preciso rodar o script |bib2gls| para que a lista seja gerada. % Mais informações sobre o uso do |glossaries-extra| com o |bib2gls| podem ser encontradas na documentação deste pacote. % Cabe ressaltar que, pela necessidade de uso desse script, essa opção \emph{não é compatível com editores \LaTeX~on-line}. % % Para o caso dos editores online, a lista de siglas deve ser criada manualmente com o ambiente |siglas|, documentado no manual da classe |abntex2|. % %\DescribeMacro{simbolos} % De maneira semelhante à opção |siglas|, habilita a geração automática da lista de símbolos. % Essa opção também \emph{não é compatível com editores \LaTeX~on-line}. % % Também para o caso dos editores online, a lista de símbolos pode ser feita manualmente no ambiente |simbolos|, documentado no manual da classe |abntex2|. % %\subsection{Exemplo básico} % Para o desenvolvimento de uma monografia com a classe |ucsmonograph|, algumas propriedades do documento devem ser definidas, como o autor, título, entre outros. % Existem macros implementadas nesta classe e na classe |abntex2| (que é utilizada como base) disponibilizadas para atribuir estas propriedades, % e que devem ser chamadas no começo do documento. % Seja neste manual ou no manual da classe |abntex2|, estas funções estão documentadas. % De toda forma, um exemplo básico da chamada destas, para servir como ponto de partida, é exibido abaixo: %\begin{verbatim} % \documentclass[12pt,oneside,english,brazil,lmodern,cite=num]{ucsmonograph} % \usepackage[utf8]{inputenc} % \usepackage[T1]{fontenc} % % \titulo{Modelagem numérica de vibração em rolamentos defeituosos} % \autor{Henrique Baron} % \data{2018} % \instituicao{Universidade de Caxias do Sul} % \local{Caxias do Sul} % \preambulo{Trabalho de conclusão de curso apresentado à Universidade de Caxias do Sul % como requisito parcial à obtenção do grau de Engenheiro Mecânico.} % \areadoconhecimento{Área do conhecimento de ciências exatas e engenharias} % \orientador{Prof. Me. Pedro da Silva} % Orientador do trabalho % \avaliadori{Prof. Me. Paulo Oliveira} % Avaliador da banca, da instituição % \avaliadorii{Profa. Dra. Maria Pereira} % Avaliador da banca, da instituição % \avaliadorext[Empresa X]{Cristiane Silveira} % Avaliaodr da banca, de instituição externa % % Palavras-chave que aparecem no resumo em português % \palavraschave{Vibra\c{c}\~ao. Modelagem. Defeito. Rolamento.} % % Palavras-chave em idioma estrangeiro (o mesmo configurado nas opções da classe!) % \palavraschave[english]{Vibration. Modelling. Defect. Bearing.} % % \begin{document} % \imprimircapa % \imprimirfolhaderosto % \imprimirfolhadeaprovacao{29/11/2018} % % \end{document} %\end{verbatim} % %\subsection{Quadros e lista de quadros} % Por padrão, o \LaTeX~já oferece meios de criar tabelas e a lista de tabelas. % Para o caso dos quadros, que são um elemento obrigatório pelo Guia da UCS, não há nenhum recurso desenvolvido, nem na classe |abntex2|. % Para isso, o ambiente |quadro| foi criado na classe |ucsmonograph|. % %\DescribeEnv{quadro} % É um ambiente flutuante semelhante a |figure| ou |table|. % Dentro dele pode ser inserida a imagem de um quadro diretamente, com a macro |\incluirimagem|, ou pode ser criado manualmente o quadro com o ambiente |tabular| e utilizando a macro |caption| para definir uma legenda. % %\DescribeMacro{\listofquadros} % Gera a lista de quadros, inserindo a entrada para a Lista de Quadros no sumário. % É recomendado utilizar a macro |\listofquadros*|, que não insere a Lista de Quadros no sumário, conforme prescreve o Guia da UCS. % %\DescribeMacro{\listofquadros*} % Gera a lista de quadros, sem colocar essa entrada no sumário. % %\section{Macros redefinidas e implementadas} % As subseções seguintes descrevem macros e ambientes que foram implementados na classe |ucsmonograph|, % ou redefinições de comandos da classe |abntex2| que foram realizadas nesta classe. % %\subsection{Redefinições da classe abn\TeX 2} % Alguns comandos e ambientes expostos pela classe |abntex2| foram redefinidos ou modificados na classe |ucsmonograph|, e essas alterações são apresentadas a seguir. % %\DescribeMacro{\autor} % A função macro |\autor|\marg{nome} foi estendida para incluir o nome do autor automaticamente nas propriedades do PDF. % Isso elimina a necessidade de utilizar a macro |\hypersetup| do pacote |hyperref| e alterar a chave |pdfauthor|. % % Na verdade, essa alteração, em conjunto com as modificações realizadas nas macros |\titulo|, |\preambulo|, |\orientador| e a criação da macro |\palavraschave| eliminam a necessidade de configuração do pacote |hyperref| com a macro |\hypersetup|. % %\DescribeMacro{\titulo} % A função da macro |\titulo|\marg{nome} foi estendida de maneira semelhante à macro |\autor|. % %\DescribeMacro{\preambulo} % A função da macro |\preambulo|\marg{assunto} foi estendida de maneira semelhante à macro |\autor|. % %\DescribeMacro{\orientador} % A função da macro |\orientador|\marg{nome} foi estendida de maneira semelhante à macro |\autor|. % %\DescribeEnv{resumo} % O ambiente |resumo| foi totalmente redefinido na classe |ucsmonograph|. % Ele continua recebendo um parâmetro opcional, no entanto, agora este parâmetro deve receber o nome da língua em que o resumo será escrito, % caso seja diferente do idioma padrão do documento. % Com isso, o padrão de hifenização do idioma selecionado é aplicado a todo o texto contido no ambiente. % % Conforme a norma ABNT, o resumo do trabalho deve ser apresentado no idioma vernáculo (no caso da UCS, o português brasileiro), % e em um idioma estrangeiro. % Dessa maneira, o ambiente |resumo| deve ser utilizado duas vezes no documento: uma delas não leva o argumento opcional, % enquanto a outra deve receber o idioma em que o resumo é apresentado. % Um exemplo com as duas chamadas do ambiente é mostrado abaixo: %\begin{verbatim} % \begin{resumo} % O presente trabalho demonstra a aplicação da Teoria da Relatividade... % \end{resumo} % % \begin{resumo}[english] % The present work demonstrates the application of the Relativity Theory... % \end{resumo} %\end{verbatim} % Com isso, o título \emph{RESUMO} e a expressão \emph{Palavras-chave} também são adaptados ao idioma escolhido. % É importante que o idioma estrangeiro selecionado tenha sido incluído \emph{também nas opções da classe}, % como é mostrado na Seção \ref{sec:chamada-classe}. % % Por fim, as palavras-chave do documento, definidas com a macro\\ %|\palavraschave|\oarg{idioma}\marg{palavras}, % são incluídas automaticamente no fim do resumo. % As palavras-chave também devem ser definidas para os dois idiomas do resumo, o que fará com que o conjunto certo % de palavras-chave seja exibido. % %\DescribeEnv{dedicatoria} % O ambiente |dedicatoria| foi modificado para que não seja necessário aplicar qualquer formatação, nem escrever dentro de um ambiente |minipage|, como sugere o manual da classe |abntex2|. % Dessa maneira, a dedicatória pode ser escrita simplesmente como: %\begin{verbatim} % \begin{dedicatoria} % Dedico este trabalho a minha família etc. % \end{dedicatoria} %\end{verbatim} % %\DescribeEnv{epigrafe} % O ambiente |epigrafe| foi modificado da mesma forma que o ambiente |dedicatoria|, para que o posicionamento do texto seja feito automaticamente como pede o Guia da UCS. % Portanto, o ambiente pode ser utilizado da seguinte maneira: %\begin{verbatim} % \begin{epigrafe} % ''Uma mente que se abre a uma nova ideia nunca mais volta ao tamanho % original.'' % \vspace{12pt} % % \textbf{Albert Einstein} % \end{epigrafe} %\end{verbatim} % % O guia solicita que o nome do autor seja destacado em negrito. % A mudança desta parte e o espaçamento do nome para o resto do texto devem ser feitos manualmente, como mostrado no exemplo acima. % %\DescribeMacro{\fonte} % Essa macro foi redefinida para que o texto seja alinhado à esquerda -- e não centralizado como na definição original na classe |abntex2| -- e para que o texto ''Fonte'' seja separado do argumento passado pelo usuário por dois pontos, e não por um travessão. % % A função do parâmetro opcional desta macro também foi modificada. % Agora a sua chamada é feita como |\fonte|\oarg{largura}\marg{fonte}. % O parâmetro opcional \meta{largura} é utilizado para definir a lagura da linha em que o texto da fonte será escrito. % Se essa macro for utilizada depois de um ambiente |tabular|, a |ucsmonograph| detectará a largura da tabela, fazendo com que o texto da fonte fique alinhado corretamente à esquerda. % Se um valor apropriado não puder ser determinado, o texto da fonte terá a largura da linha (fornecido pela macro |\linewidth|). % O parâmetro opcional permite, enfim, que o usuário defina uma largura customizada para a linha onde a fonte será escrita. % % A função do argumento opcional para a classe |abntex2| é a de mudar o texto ''Fonte''. % Essa mudança não é possível na classe |ucsmonograph|. % %\subsection{Outras redefinições} % Macros fornecidas por outros pacotes ou classes e que foram alteradas na classe |ucsmonograph| são descritas aqui. % %\DescribeMacro{\foreignlanguage} % Foi alterada para colocar em itálico o texto em idioma estrangeiro. % Como essa macro considera o padrão de hifenização da linguagem definida no parâmetro obrigatório \marg{language}, é recomendado utilizá-la sempre que se desejar digitar conteúdo em um idioma diferente do padrão do documento. % %\subsection{Comandos específicos} % A classe |ucsmonograph| define alguns comandos próprios, que são detalhados aqui. % %\DescribeMacro{\palavraschave} % Define quais são as palavras-chave do trabalho, que aparecerão no resumo e também nas propriedades do PDF gerado. % Esta macro foi criada para ser utilizada de maneira similar às macros |\autor|, |\titulo|, |\preambulo| e |\orientador| que são fornecidas pela classe |abntex2|. % Ela deve ser chamada, portanto, \emph{no preâmbulo do seu código}, isto é, antes de |\begin{document}|. % % A macro |\palavraschave| recebe também um argumento opcional, que define o idioma das palavras-chave fornecidas. % Como as palavras-chave são exibidas no \emph{resumo}, que deve ser incluído em dois idiomas, % esta macro também deve ser chamada duas vezes: uma sem o parâmetro opcional, % que indica que são as palavras-chave no idioma principal do documento; % e outra com o nome do idioma estrangeiro que é utilizado no resumo do trabalho. % A chamada duplicada desta macro é exibida no exemplo abaixo: %\begin{verbatim} % \palavraschave{Vibração. Modelagem. Defeito. Rolamento.} % \palavraschave[english]{Vibration. Modelling. Defect. Bearing.} %\end{verbatim} % % É importante que o segundo idioma que é passado como parâmetro para a macro tenha sido declarado como opção ao chamar a classe, % como é mostrado na Seção \ref{sec:chamada-classe}. % %\DescribeMacro{\imprimirpalavraschave} % Esta macro simplesmente exibe as palavras-chave configuradas com o comando\\ % |\palavraschave|\oarg{idioma}\marg{palavras}, % precedidas da expressão \emph{Palavras-chave}, destacada em negrito, % conforme especificado pelo guia da UCS. % %\DescribeMacro{\aredoconhecimento} % Define a área do conhecimento do trabalho desenvolvido, que é impressa na capa do trabalho. % Esta macro possui apenas um argumento. % %\DescribeMacro{\avaliadori} % Esta macro também tem apenas um argumento, e define o primeiro avaliador da banca avaliadora. % O nome desse avaliador é impresso na folha de aprovação com a macro |\imprimirfolhadeaprovacao|. % %\DescribeMacro{\avaliadorii} % É semelhante à macro |\avaliadori|, e define o segundo avaliador da banca examinadora, para ser impresso na folha de aprovação. % A instituição deste avaliador é preenchida automaticamente nessa folha com o conteúdo da macro |\instituicao|. % % Portanto, se o segundo avaliador for de uma instituição externa ou empresa, a macro |\avaliadorext| deve ser utilizada. % %\DescribeMacro{\avaliadorext} % É semelhante às macros anteriores de avaliadores, definindo o avaliador de instituição externa, se ele existir. % A instituição que este avaliador representa é definida diretamente como argumento opcional da macro |\imprimirfolhadeaprovacao|. % %\DescribeMacro{\imprimirfolhadeaprovacao} % Gera a folha de aprovação no padrão solicitado pela UCS, e recebe um ou dois argumentos: %\begin{verbatim} % \imprimirfolhadeaprovacao[inst.aval.ext.]{data aprov.} %\end{verbatim} % O parâmetro opcional \meta{inst. aval. ext.} define a instituição ou empresa de onde vem o avaliador convidado. % Caso não preenchida, a instituição é definida automaticamente com o conteúdo da macro |\instituicao|. % O nome da instituição impresso abaixo do nome dos outros avaliadores é sempre preenchido com o nome da instituição definido na macro |\instituicao|. % % O parâmetro obrigatório define a data de aprovação que é impressa na folha, que corresponde à data de defesa do trabalho. % % Para a banca examinadora, são impressos os nomes definidos com as macros |\orientador|, |\avaliadori|, |\avaliadorii| e |\avaliadorext|. % Se algum destes nomes não tiver sido definido nas macros, a macro |\imprimirfolhadeaprovacao| não gerará erros, apenas reajustará a página sem exibi-los. % Isso permite que seja impressa a folha de aprovação com diferentes números de avaliadores, com ou sem um avaliador de instituição externa. % %\DescribeMacro{\incluirimagem} % Encapsula o comando |\includegraphics|, padrão do \LaTeX, acrescentando alguns elementos gráficos. % Esta macro deve ser utilizada dentro de um ambiente |figure| e é chamada da seguinte forma: %\begin{verbatim} % \incluirimagem[escala]{caminho}{descrição}{fonte e ano} %\end{verbatim} % O parâmetro opcional \meta{escala} é um valor decimal que define a escala de aumento ou redução da imagem. % O valor padrão é 1. % Os outros parâmetros indicam o caminho para o arquivo de imagem, a descrição -- que aparecerá acima da imagem, após o número -- e o nome da fonte e ano da imagem, que aparecem abaixo da ilustração, em fonte reduzida. % %\DescribeMacro{\incluirimagem*} % Possui a mesma função da macro |\incluirimagem|, porém não adiciona uma legenda na parte superior da imagem e não a inclui na lista de figuras. % Ela tem, portanto, um argumento a menos na sua chamada: %\begin{verbatim} % \incluirimagem*[escala]{caminho}{fonte e ano} %\end{verbatim} % Deve-se atentar que o uso dessa macro \emph{não} está de acordo com a especificação do guia da UCS. % Ela tem a função de auxiliar a inclusão de imagens em partes do documento como anexos ou apêndices, cujo conteúdo interno não deve ser referenciado no sumário. % %\DescribeMacro{\incluirsiglas} % Faz a chamada para o arquivo |.bib| que contém as definições de siglas. % Essa macro só é definida se a opção |siglas| estiver habilitada, e leva o parâmetro obrigatório \marg{caminho}, que dá o caminho para o arquivo |.bib|. % %\DescribeMacro{\listofsiglas*} % Gera a lista de siglas. % O nome da macro foi deixado parcialmente em inglês para ficar de acordo com o padrão de macros de listas como |\listoffigures| ou |\listoftables|, e ela não tem versão sem asterisco. % Este comando só é definido se a opção |siglas| estiver habilitada. % Caso contrário, a lista de siglas deve ser construída manualmente com o ambiente |siglas|, descrito no manual da classe |abntex2|. % %\DescribeMacro{\incluirsimbolos} % Faz a chamada para o arquivo |.bib| que contém as definições de símbolos. % Essa macro só é definida se a opção |simbolos| estiver habilitada, e leva o parâmetro obrigatório \marg{caminho}, de maneira similar à macro |\incluirsiglas|. % %\DescribeMacro{\listofsimbolos*} % Gera a lista de símbolos. % O nome desta macro é parte em inglês também para manter o padrão de outras macros de listas do \LaTeX, e não tem versão sem asterisco. % Este comando só é definido se a opção |simbolos| estiver habilitada. % Caso contrário, a lista de símbolos deve ser construída manualmente com o ambiente |simbolos|, descrito no manual da classe |abntex2|. % %\StopEventually{} % %\section{Implementação} % Esta seção descreve a implementação do código. % É utilizada apenas como registro comentado do código produzido, e não é necessário ao usuário lê-la. %\subsection{Inicialização} % %\begin{macro}{Variaveis} % Declaração das variáveis: pacote |lmodern| (para uso da fonte Latin Modern) habilitado; criação automática da lista de siglas ativa; e criação automática da lista de símbolos ativa. % \begin{macrocode} \RequirePackage{ifthen} \newboolean{@lmodernAtivo} \setboolean{@lmodernAtivo}{false} \newboolean{@siglasAtivo} \setboolean{@siglasAtivo}{false} \newboolean{@simbolosAtivo} \setboolean{@simbolosAtivo}{false} % \end{macrocode} %\end{macro} % %\begin{macro}{Opcoes} % Declaração de opções do tipo par key-value, trazidas pelo pacote |kvoptions|. % \begin{macrocode} \RequirePackage{kvoptions} \DeclareStringOption[alf]{cite} \ProcessKeyvalOptions* % \end{macrocode} % Declaração de outras opções, e carregamento da classe-base |abntex2|. % \begin{macrocode} \DeclareOption{lmodern}{% \setboolean{@lmodernAtivo}{true}% } \DeclareOption{siglas}{% \setboolean{@siglasAtivo}{true}% } \DeclareOption{simbolos}{% \setboolean{@simbolosAtivo}{true}% } % \end{macrocode} % Para a classe |abntex2| são passadas as configurações |openright|, para que o documento seja folheado da direita para a esquerda; |a4paper|, para impressão em folha A4; |chapter=TITLE| e |section=TITLE|, para que os títulos de |chapter| e |section| sejam passados para letra maiúscula, como pede o padrão da UCS. % \begin{macrocode} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{abntex2}} \ProcessOptions\relax \LoadClass[openright,a4paper,chapter=TITLE,section=TITLE]{abntex2}% % \end{macrocode} %\end{macro} % %\begin{macro}{Pacotes} % Inclusão e configuração de pacotes.\\ % Se o documento está sendo compilado com LuaLaTeX, altera-se a fonte do modo matemático para ser igual à fonte do texto, e não ser em itálico. % \begin{macrocode} \RequirePackage{ifluatex} \ifluatex \RequirePackage[math-style=upright]{unicode-math} \setboolean{@lmodernAtivo}{true} \fi % \end{macrocode} % Referências a bibliografia no padrão ABNT. % Opções: substituir listas com mais de dois autores por "et al." e escrever o "et al." em itálico.\\ %Se estiver configurada citação numérica, configura para que as citações sejam feitas entre colchetes e permite as citações múltiplas como [8-11], por exemplo. % \begin{macrocode} \RequirePackage[\ucsmonograph@cite,abnt-etal-list=3,abnt-etal-text=it,% abnt-full-initials=no]{abntex2cite} \ifthenelse{\equal{\ucsmonograph@cite}{num}}{% \citebrackets[]% \RequirePackage{cite}% }{} % \end{macrocode} % Código necessário para evitar conflito no pacote substr pelo uso dele por ambos os pacotes abntex2cite e glossaries. % \begin{macrocode} \let\su@ExpandTwoArgs\relax \let\IfSubStringInString\relax \let\su@IfSubStringInString\relax % \end{macrocode} % Configurações gerais do pacote |hyperref|. % \begin{macrocode} \hypersetup{% unicode=true, pdfcreator={LaTeX with ucsmonograph}, colorlinks=true, linkcolor=black, citecolor=black, } % \end{macrocode} % Chamada de outros pacotes. % \begin{macrocode} \ifthenelse{\boolean{@lmodernAtivo}}{% \RequirePackage{lmodern} }{} \RequirePackage{caption} \RequirePackage[top=3cm,left=3cm,bottom=2cm,right=2cm]{geometry} \raggedbottom \RequirePackage{etoolbox} \RequirePackage{indentfirst} \RequirePackage[absolute]{textpos} \RequirePackage{calc} \RequirePackage{amsmath} \allowdisplaybreaks \RequirePackage{xparse} \RequirePackage{graphicx} \RequirePackage{float} \RequirePackage{icomma} \RequirePackage{adjustbox} \newlength\larguraimagem \newlength\larguratabular \newlength\largurafonte \RequirePackage{chngcntr} \counterwithout{equation}{chapter} \RequirePackage{suffix} % \end{macrocode} % Carregamento e configuração condicional do pacote |glossaries-extra| de acordo com o uso de qualquer uma das opções |simbolos| ou |siglas|. % Configura, para esse pacote, um novo estilo de abreviação para siglas em outros idiomas, além de definir a largura da linha de descrição na lista a exibir % Passagem das opções para o pacote |glossaries-extra| em função das opções |siglas| ou |simbolos|. % \begin{macrocode} \ifthenelse{\boolean{@siglasAtivo}}{% \PassOptionsToPackage{acronyms}{glossaries-extra}% } \ifthenelse{\boolean{@simbolosAtivo}}{% \PassOptionsToPackage{symbols}{glossaries-extra}% } \ifthenelse{\boolean{@siglasAtivo} \OR \boolean{@simbolosAtivo}}{% \PassOptionsToPackage{record,toc=false,nonumberlist,style=long}{glossaries-extra}% }{} \RequirePackage{glossaries-extra} \setlength\glsdescwidth\linewidth% % \end{macrocode} % Configura no pacote |glossaries-extra| um novo estilo de abreviação para siglas em outros idiomas. % \begin{macrocode} \ifthenelse{\boolean{@siglasAtivo}}{% \setabbreviationstyle[acronym]{long-short}% \setabbreviationstyle[foreignabbreviation]{long-short-user}% }{} % \end{macrocode} %\end{macro} % %\subsection{Definição de constantes} %Declaração das constantes de texto da classe. %\begin{macro}{\palavraschavename} % Constante que armazena a expressão \textit{Palavras-chave}, no idioma em que o texto estiver sendo escrito. % \begin{macrocode} \newcommand{\palavraschavename}{Palavras-chave:} \addto\captionsenglish{ \renewcommand\palavraschavename{Keywords:} } \addto\captionsgerman{ \renewcommand\palavraschavename{Stichw\"orter:} } \addto\captionsspanish{ \renewcommand\palavraschavename{Palabras-llave:} } % \end{macrocode} %\end{macro} % %\subsection{Lista de quadros} % Mostra a implementação da lista de quadros, que é um elemento obrigatório em monografias da UCS, mas não é implementado na classe |abntex2|. %\begin{macro}{Quadros} % Macros para os nomes e criação do novo float |quadro|. % \begin{macrocode} \newcommand{\quadroname}{Quadro} \newcommand{\listquadroname}{Lista de quadros} \newfloat{quadro}{\quadroname}{loq}[chapter] % \end{macrocode} % Redefine o estilo e configura que não é o package float o responsável pela sua formatação. % \begin{macrocode} \restylefloat*{quadro} % \end{macrocode} % Ajuste do posicionamento do quadro e atribuição do arquivo de extensão .LOQ. % \begin{macrocode} \setfloatadjustment{quadro}{\centering} \setfloatlocations{quadro}{hbtp} \newlistof{listofquadros}{loq}{\listquadroname} \newlistentry{quadro}{loq}{0} % \end{macrocode} % Configurações de exibição e numeração nas listas e no corpo do trabalho. % \begin{macrocode} \renewcommand{\cftquadroname}{\quadroname\space} \renewcommand*{\cftquadroaftersnum}{\hfill\textendash\hfill} \renewcommand{\fnum@quadro}{\quadroname\ \thequadro} \counterwithout{quadro}{chapter} % \end{macrocode} % Estende o conteúdo da macro |\listofquadros| para criar o bookmark no PDF automaticamente. % \begin{macrocode} \let\@oldlistofquadros\listofquadros \def\listofquadros{% \pdfbookmark[0]{\listquadroname}{loq} \@oldlistofquadros } % \end{macrocode} %\end{macro} % %\subsection{Modificações sobre a classe abnTeX2} % Aqui, as alterações de medidas e redefinições de comandos oferecidos pela classe |abntex2| são exibidos. % Essas mudanças foram realizadas para adequar os padrões dessa classe à especificação da UCS. % %\begin{macro}{abntheadings} % Redefinição do estilo abntheadings, que coloca no cabeçalho das páginas o nome do capítulo/seção e uma linha horizontal, além do número de página. % O padrão da UCS pede somente o número de página. % \begin{macrocode} \makepagestyle{abntheadings} \makeevenhead{abntheadings}{\ABNTEXfontereduzida\thepage}{}{} \makeoddhead{abntheadings}{}{}{\ABNTEXfontereduzida\thepage} % \end{macrocode} %\end{macro} % %\begin{macro}{\list...name} %\changes{v1.1.1}{2018/09/18}{Correção do nome da lista de símbolos} % Nomes de elementos pré-textuais que precisam ser alterados % \begin{macrocode} \addto\captionsbrazil{% \renewcommand{\listfigurename}{Lista de figuras}% \renewcommand{\listadesimbolosname}{Lista de s\'{i}mbolos}% } % \end{macrocode} %\end{macro} % %\begin{macro}{\ABNTEX...font} % Redefinição de fontes e tamanhos para os capítulos e seções, para o corpo do documento. % \begin{macrocode} \renewcommand{\ABNTEXchapterfont}{\bfseries} \renewcommand{\ABNTEXchapterfontsize}{\normalsize} \renewcommand{\ABNTEXsectionfont}{\ABNTEXchapterfont\mdseries} \renewcommand{\ABNTEXsectionfontsize}{\normalsize} \renewcommand{\ABNTEXsubsectionfont}{\ABNTEXsectionfont\bfseries} \renewcommand{\ABNTEXsubsectionfontsize}{\normalsize} \renewcommand{\ABNTEXsubsubsectionfont}{\ABNTEXsubsectionfont\mdseries} \renewcommand{\ABNTEXsubsubsectionfontsize}{\normalsize} \renewcommand{\ABNTEXsubsubsubsectionfont}{\ABNTEXsubsubsectionfont\itshape} \renewcommand{\ABNTEXsubsubsubsectionfontsize}{\normalsize} % \end{macrocode} %\end{macro} % %\begin{macro}{\cft...font} % Redefinição de fontes e tamanhos para os capítulos e seções, NO SUMÁRIO. % Como o guia da UCS solicita que a apresentação dos títulos seja idêntica no sumário e no texto, as fontes declaradas acima são utilizadas, o que não é o padrão da classe abnTeX2. % \begin{macrocode} \renewcommand{\cftchapterfont}{\ABNTEXchapterfont} \renewcommand{\cftsectionfont}{\ABNTEXsectionfont} \renewcommand{\cftsubsectionfont}{\ABNTEXsubsectionfont} \renewcommand{\cftsubsubsectionfont}{\ABNTEXsubsubsectionfont} \renewcommand{\cftparagraphfont}{\ABNTEXsubsubsubsectionfont} % \end{macrocode} %\end{macro} % %\begin{macro}{\linespread} %\changes{v1.1.2}{2018/09/28}{Corrigido espaçamento entre linhas para o equivalente a 1.5 do MS Word} % Espaçamento entre linhas e entre parágrafos. % Para 12pt, o espaçamento equivalente a 1.5 (do MS Word) é 1.4, obtido experimentalmente. % \begin{macrocode} \linespread{1.4} % \end{macrocode} %\end{macro} % %\begin{macro}{\parskip} % \begin{macrocode} \setlength\parskip{0pt} % \end{macrocode} %\end{macro} % %\begin{macro}{\parindent} %\changes{v1.1.2}{2018/09/28}{Aumentada indentação} % Recuo da primeira linha do parágrafo em 1.5 cm. % \begin{macrocode} \setlength\parindent{1.5cm} % \end{macrocode} %\end{macro} % %\begin{macro}{\afterchapskip} %\changes{v1.1.0}{2018/08/16}{Corrigido espaçamento abaixo} %\changes{v1.1.2}{2018/09/28}{Corrigido espaçamento abaixo} % Alteração do espaçamento entre o título dos capítulos e das seções e o corpo do texto. % \begin{macrocode} \setlength\afterchapskip\baselineskip % \end{macrocode} %\end{macro} % %\begin{macro}{\setaftersecskip} %\changes{v1.1.2}{2018/09/28}{Corrigido espaço abaixo} % \begin{macrocode} \setaftersecskip\baselineskip \setaftersubsecskip\baselineskip \setaftersubsubsecskip\baselineskip \setafterparaskip\baselineskip % \end{macrocode} %\end{macro} % %\begin{macro}{\textfloatsep} %\changes{v1.1.2}{2018/09/28}{Corrigido o valor de espaçamento} % Modificação no espaçamento entre os floats e o texto. % \begin{macrocode} \setlength\textfloatsep{1.5\baselineskip} \setlength\floatsep{1.5\baselineskip} \setlength\intextsep{1.5\baselineskip} % \end{macrocode} %\end{macro} % %\begin{macro}{\abovedisplayskip} %\changes{v1.1.2}{2018/09/28}{Corrigido o espaçamento acima e abaixo de equações} % Ajusta os espaçamentos verticais acima e abaixo das equações. % \begin{macrocode} \AtBeginDocument{% \setlength\abovedisplayskip{1\baselineskip plus 5pt minus 5pt} \setlength\belowdisplayskip{1\baselineskip plus 5pt minus 5pt} \setlength\abovedisplayshortskip{1\baselineskip plus 5pt minus 5pt} \setlength\belowdisplayshortskip{1\baselineskip plus 5pt minus 5pt} \setlength\jot{2ex} } % \end{macrocode} %\end{macro} % %\begin{macro}{enumerate} %\changes{v1.1.2}{2018/09/28}{Ajustar parâmetros de acordo com o padrão da UCS} %\changes{v1.2.1}{2018/12/10}{Criar um length para configurar os enumerates} % Configuração das listas para atender ao padrão da UCS. % \begin{macrocode} \newlength\@enumerateindent \setlength\@enumerateindent{\parindent+0.6cm} \setlist[enumerate,1]{labelindent=\parindent,leftmargin=\@enumerateindent,nosep,label=\alph*)} % \end{macrocode} %\end{macro} % %\begin{macro}{itemize} % \begin{macrocode} \setlist[itemize,1]{nosep,label=--} % \end{macrocode} %\end{macro} % %\begin{environment}{thebibliography} %\changes{v1.1.2}{2018/09/28}{Corrigido o espaçamento entre as referências} % Modificação do espaçamento entre cada referência na bibliografia. % \begin{macrocode} \let\@oldthebibliography\thebibliography \def\thebibliography#1{% \@oldthebibliography{#1} \setlength\parskip{0pt} \setlength\itemsep\baselineskip } % \end{macrocode} %\end{environment} % %\begin{macro}{\printchapternum} %\changes{v1.1.2}{2018/09/28}{Corrigir o espaçamento após o número de seção} % As macros que escreve o número do capítulo e da seção no corpo do trabalho foram levemente modificadas para reduzir o espaçamento entre o número do capítulo/seção e o seu título. % \begin{macrocode} \renewcommand{\printchapternum}{% \tocprintchapter \setboolean{abntex@innonumchapter}{false} \chapnumfont% \space\thechapter% \ifthenelse{\boolean{abntex@apendiceousecao}}{% \tocinnonumchapter \ABNTEXcaptiondelim% }{} } % \end{macrocode} %\end{macro} % %\begin{macro}{\@seccntformat} % \begin{macrocode} \renewcommand{\@seccntformat}[1]{\csname the#1\endcsname\ } % \end{macrocode} %\end{macro} % %\begin{macro}{\imprimircapa} %\changes{v1.1.2}{2018/09/28}{Mudar o conteúdo para negrito} %\changes{v1.2.0}{2018/11/22}{Mudança do layout gerado} % O comando que gera a capa precisou ser completamente reescrito para atender ao padrão requisitado pela UCS. % \begin{macrocode} \renewcommand{\imprimircapa}{% \pdfbookmark[0]{Capa}{Capa}% \begin{capa}% \bfseries\centering% \expandafter\uppercase\expandafter{\imprimirinstituicao}\\% \expandafter\uppercase\expandafter{\@areadoconhecimento} \vfill % \end{macrocode} % Nome em uma caixa de texto, posicionada da seguinte maneira:\\ % largura: largura A4 - margens = 210-30-20 = 160mm\\ % posição horizontal: começo da margem esquerda = 30mm\\ % posição vertical: altura A4/4 + margem superior / 2 = 294mm/4 + 15mm\\ % \begin{macrocode} \begin{textblock*}{160mm}(30mm, 297mm/4+15mm)% \expandafter\uppercase\expandafter{\theauthor}% \end{textblock*}% % \end{macrocode} % Título em uma caixa de texto, posicionada no centro vertical da folha (297mm/2) % \begin{macrocode} \begin{textblock*}{160mm}(30mm, 297mm/2)% \expandafter\uppercase\expandafter{\thetitle}% \end{textblock*}% \vfill \expandafter\uppercase\expandafter{\imprimirlocal}\\ \expandafter\uppercase\expandafter{\thedate}% \end{capa}% } % \end{macrocode} %\end{macro} % %\begin{environment}{folhaderosto} %\changes{v1.3.0}{2019/08/29}{Redefinir os ambientes internos de folha de rosto} % Os ambientes |folhaderosto| e |folhaderosto*| da classe |abntex2| foram redefinidos para corrigir um erro provocado por comandos frágeis. % Um erro era gerado se não fosse deixada uma linha em branco (quebra de parágrafo) após o comando |imprimirfolhadefosto|. % \begin{macrocode} \renewenvironment{folhaderosto}[1]{\clearpage\PRIVATEbookmarkthis{#1}}{\cleardoublepage} \renewenvironment{folhaderosto*}[1]{\clearpage\PRIVATEbookmarkthis{#1}}{\newpage} % \end{macrocode} %\end{environment} % %\begin{macro}{\imprimirfolhaderosto} %\changes{v1.3.0}{2019/08/29}{Redefinir o comando para imprimir a folha de rosto} % O comando |\imprimirfolhaderosto| da classe |abntex2| foi redefinido para corrigir um erro provocado por comando frágil. % Um erro era gerado se não fosse deixada uma linha em branco após o comando. % \begin{macrocode} \renewcommand{\imprimirfolhaderosto}[1][\folhaderostoname]{% \@ifstar{\imprimirfolhaderostostar#1}{% \imprimirfolhaderostonostar#1} } % \end{macrocode} %\end{macro} % %\begin{macro}{\folhaderostocontent} %\changes{v1.1.1}{2018/09/18}{Corrigir justificação do nome do orientador} %\changes{v1.1.2}{2018/09/28}{Mudar o conteúdo para negrito} %\changes{v1.2.0}{2018/11/22}{Mudança do layout gerado} % Da mesma forma, a macro interna da classe |abntex2| que gera o conteúdo da folha de rosto precisou ser redefinida para ficar semelhante à capa, também remodelada. % \begin{macrocode} \renewcommand{\folhaderostocontent}{% \bfseries\centering% \expandafter\uppercase\expandafter{\theauthor}% \vfill \vfill % \end{macrocode} % Título em uma caixa de texto, posicionada no centro vertical da folha (297mm/2) % \begin{macrocode} \begin{textblock*}{160mm}(30mm, 297mm/2)% \expandafter\uppercase\expandafter{\thetitle}% \end{textblock*}% \vfill \abntex@ifnotempty{\imprimirpreambulo}{% \hspace{.45\textwidth}% \begin{minipage}{.5\textwidth}% \mdseries% \SingleSpacing% \imprimirpreambulo% \vspace{\onelineskip}% \imprimirorientadorRotulo~\imprimirorientador% \end{minipage}% }% \vfill \bfseries \expandafter\uppercase\expandafter{\imprimirlocal}\\ \expandafter\uppercase\expandafter{\thedate}% } % \end{macrocode} %\end{macro} % %\begin{macro}{\fonte} %\changes{v1.1.1}{2018/09/18}{Reimplementada para justificar texto à esquerda} %\changes{v1.1.2}{2018/09/28}{Corrigido o espaçamento vertical antes da fonte} % Modificação para permitir que a fonte seja alinhada à esquerda. % Como o texto deve ficar alinhado com a imagem ou a tabela/quadro, um parâmetro opcional com a largura do texto foi criado. % O valor padrão para este parâmetro é a largura da linha. % O parâmetro opcional na definição original deste comando, que altera o texto ''Fonte'' não é mais utilizado. % \begin{macrocode} \renewcommand{\ABNTEXcaptionfontedelim}{: } \renewcommand{\fonte}[2][\larguratabular]{% \ifthenelse{\equal{\strip@pt#1}{0}}{% \setlength\largurafonte\linewidth }{% \setlength\largurafonte{#1} } \centering% \begin{minipage}[h]{\largurafonte} \vspace{2pt} \raggedright\footnotesize\fontename% \ABNTEXcaptionfontedelim\ignorespaces #2 \end{minipage} } % \end{macrocode} %\end{macro} % %\begin{environment}{dedicatoria} %\changes{v1.1.0}{2018/08/16}{Aplicação de melhorias} % Extensão da macro |dedicatoria| para isentar o usuário da necessidade de formatar manualmente a posição do texto. % \begin{macrocode} \let\@olddedicatoria\dedicatoria \let\@oldenddedicatoria\enddedicatoria \def\dedicatoria{% \@olddedicatoria% \vspace*{\fill}% \hspace{.5\textwidth}% \begin{minipage}[b]{.45\textwidth}% \SingleSpacing% } \def\enddedicatoria{% \end{minipage}% \@oldenddedicatoria% } % \end{macrocode} %\end{environment} % %\begin{environment}{epigrafe} %\changes{v1.3.0}{2019/08/29}{Redefinição do ambiente de epígrafe} % Extensão do ambiente |epigrafe| para isentar o usuário da necessidade de formatar manualmente a posição do texto. % \begin{macrocode} \let\@oldepigrafe\epigrafe \let\@oldendepigrafe\endepigrafe \def\epigrafe{% \@oldepigrafe % \vspace*{\fill}% \hspace{0.5\textwidth}% \begin{minipage}[b]{.45\textwidth}% \SingleSpacing\itshape\raggedleft% } \def\endepigrafe{% \end{minipage}% \@oldendepigrafe } % \end{macrocode} %\end{environment} % %\begin{environment}{resumo} %\changes{v1.3.0}{2019/09/02}{Redefinição do ambiente resumo} % O ambiente |resumo| foi totalmente redefinido para que o idioma do resumo seja selecionado como um argumento opcional. % \begin{macrocode} \renewcommand\abstractnamefont\chaptitlefont \newboolean{@abstractotherlanguage} \setboolean{@abstractotherlanguage}{false} \DeclareRobustCommand\resumo{\@ifnextchar[{\@@resumo}{\@resumo}} \def\@resumo{% \let\@oldabstractname\abstractname \PRIVATEbookmarkthis{\abstractname} \def\abstractname{\MakeUppercase{\@oldabstractname}} \begin{abstract} \SingleSpacing } \def\@@resumo[#1]{% \begin{otherlanguage}{#1} \setboolean{@abstractotherlanguage}{true} \let\@oldabstractname\abstractname \PRIVATEbookmarkthis{\abstractname} \def\abstractname{\MakeUppercase{\@oldabstractname}} \begin{abstract} \SingleSpacing } \def\endresumo{% \vspace{\onelineskip}\par \imprimirpalavraschave \end{abstract} \PRIVATEclearpageifneeded \ifthenelse{\boolean{@abstractotherlanguage}}{\end{otherlanguage}}{} \setboolean{@abstractotherlanguage}{false} \def\abstractname\@oldabstractname } % \end{macrocode} %\end{environment} % %\begin{macro}{\imprimirpalavraschave} %\changes{v1.3.0}{2019/11/07}{Criação do comando} % O comando |\imprimirpalavraschave| foi criado para formatar o texto que contém as palavras-chave do documento. % \begin{macrocode} \newcommand\imprimirpalavraschave{% \textbf{\palavraschavename}\ \@palavraschavecontent} % \end{macrocode} %\end{macro} % %\begin{macro}{\autor} % Extensão da macro que define o nome do título, para que isso seja automaticamente passado para o pacote |hyperref|. % \begin{macrocode} \let\@oldtitulo\titulo \renewcommand{\titulo}[1]{% \@oldtitulo{#1} \hypersetup{% pdftitle={#1} } } % \end{macrocode} %\end{macro} %\begin{macro}{\autor} % Extensão da macro para o autor, semelhante à macro |\titulo|. % \begin{macrocode} \let\@oldautor\autor \renewcommand{\autor}[1]{% \@oldautor{#1} \hypersetup{% pdfauthor={#1} } } % \end{macrocode} %\end{macro} % %\begin{macro}{\preambulo} % Extensão da macro para o preâmbulo (assunto), semelhante à macro |\titulo|. % \begin{macrocode} \let\@oldpreambulo\preambulo \renewcommand{\preambulo}[1]{% \@oldpreambulo{#1} \hypersetup{% pdfsubject={#1} } } % \end{macrocode} %\end{macro} % %\subsection{Outras redefinições} % Aqui modificações e redefinições de outros comandos que não pertencem à classe |abntex2| são redefinidos. % %\begin{environment}{tabular} % Extensão do ambiente |tabular| para incluir o conteúdo dentro de uma |adjustbox| e armazenar a largura do quadro ou tabela. % Essa medida pode ser utilizada pela macro |\fonte| para formatação da largura. % \begin{macrocode} \let\@oldtabular\tabular \let\@oldendtabular\endtabular \def\tabular{% \begin{adjustbox}{gstore width=\larguratabular} \@oldtabular } \def\endtabular{% \@oldendtabular \end{adjustbox} } % \end{macrocode} %\end{environment} % %\begin{macro}{\listoffigures} % Estende a macro da lista de figuras para incluir o bookmark no PDF automaticamente. % \begin{macrocode} \let\@oldlistoffigures\listoffigures \def\listoffigures{% \pdfbookmark[0]{\listfigurename}{lof} \@oldlistoffigures } % \end{macrocode} %\end{macro} % %\begin{macro}{\listoftables} % Estende a macro da lista de tabelas para incluir o bookmark no PDF automaticamente. % \begin{macrocode} \let\@oldlistoftables\listoftables \def\listoftables{% \pdfbookmark[0]{\listtablename}{lot} \@oldlistoftables } % \end{macrocode} %\end{macro} % %\begin{macro}{\tableofcontents} % Estende a macro do sumário para incluir o bookmark no PDF automaticamente. % \begin{macrocode} \let\@oldtableofcontents\tableofcontents \def\tableofcontents{% \pdfbookmark[0]{\contentsname}{toc} \@oldtableofcontents } % \end{macrocode} %\end{macro} % %\begin{macro}{\glsxtruserparen} % Essa macro, trazida pelo pacote |glossaries-extra| define o conteúdo entre parênteses quando a key |user1| estiver preenchida. % Essa redefinição só acontece se a geração de lista de siglas estiver ativa. % \begin{macrocode} \ifthenelse{\boolean{@siglasAtivo}}{% \renewcommand{\glsxtruserparen}[2]{% \glsxtrfullsep{#2}% \glsxtrparen {#1\ifglshasfield{\glsxtruserfield}{#2}{, \emph{\glscurrentfieldvalue}}{}}% }% % \end{macrocode} %\begin{macro}{\glsuserdescription} % Define o texto longo (descrição) que será exibido na lista de siglas % \begin{macrocode} \renewcommand{\glsuserdescription}[2]{% \ifglshasfield{\glsxtruserfield}{#2}{\emph{\glscurrentfieldvalue}}{#1}% } }{} % \end{macrocode} %\end{macro} %\end{macro} % %\begin{macro}{\contentsline} % Macro responsável por definir o conteúdo da linha no sumário, é redefinida para que os nomes das seções no sumário sejam escritos em letra maiúscula. % \begin{macrocode} \let\@oldcontentsline\contentsline \def\contentsline#1#2{% \expandafter\ifx\csname l@#1\endcsname\l@section \expandafter\@firstoftwo \else \expandafter\@secondoftwo \fi {% \@oldcontentsline{#1}{\MakeTextUppercase{#2}}% }{% \@oldcontentsline{#1}{#2}% }% } % \end{macrocode} %\end{macro} % %\begin{macro}{\foreignlanguage} % Extensão da macro que inicia um texto em língua estrangeira, alterando-a para que o conteúdo seja destacado em itálico. % \begin{macrocode} \let\@oldforeignlanguage\foreignlanguage \renewcommand{\foreignlanguage}[2]{\@oldforeignlanguage{#1}{\emph{#2}}} % \end{macrocode} %\end{macro} % %\subsection{Comandos específicos desta classe} % No final do código são definidos os comandos produzidos pela classe |ucsmonograph| propriamente dita. % %\begin{macro}{\@palavraschavecontent} % É uma macro utilizada como variável, que armazena as palavras-chave definidas pelo usuário. % \begin{macrocode} \newcommand{\@palavraschavecontent}{} % \end{macrocode} %\end{macro} % %\begin{macro}{\palavraschave} %\changes{v1.3.0}{2019/11/07}{Adicionar parâmetro opcional de idioma ao comando} % Redefine o conteúdo da macro |\@palavraschavecontent| e configura também esse conteúdo no pacote |hyperref|. % Se o parâmetro opcional for utilizado, o conteúdo é armazenado para ser utilizado no resumo em outros idiomas, % e o hyperref não é configurado neste caso. % \begin{macrocode} \DeclareRobustCommand\palavraschave{\@ifnextchar[{\@@palavraschave}{\@palavraschave}} \def\@palavraschave#1{% \renewcommand\@palavraschavecontent{#1} \hypersetup{% pdfkeywords={#1} } } \def\@@palavraschave[#1]#2{ \expandafter\addto\csname captions#1\endcsname{ \renewcommand\@palavraschavecontent{#2} } } % \end{macrocode} %\end{macro} % %\begin{macro}{\@areadoconhecimento} % É uma macro utilizada como variável, que armazena o texto da área do conhecimento que deve aparecer na folha de rosto. % \begin{macrocode} \newcommand\@areadoconhecimento{} % \end{macrocode} %\end{macro} % %\begin{macro}{\areadoconhecimento} %\changes{v1.2.0}{2018/11/22}{Nova macro} % Redefine o conteúdo da macro |\@areadoconhecimento|, cujo conteúdo é exibido na folha de rosto do trabalho. % \begin{macrocode} \newcommand\areadoconhecimento[1]{% \renewcommand\@areadoconhecimento{#1} } % \end{macrocode} %\end{macro} % %\begin{macro}{\@avaliadori} % Macro utilizada como variável que contém o nome do primeiro avaliador da banca, exibido na folha de aprovação. % \begin{macrocode} \newcommand\@avaliadori{} % \end{macrocode} %\end{macro} % %\begin{macro}{\avaliadori} %\changes{v1.2.0}{2018/11/22}{Nova macro} % Redefine o conteúdo da macro |\@avaliadori|, cujo conteúdo é exibido na folha de aprovação. % \begin{macrocode} \newcommand\avaliadori[1]{% \renewcommand\@avaliadori{#1} } % \end{macrocode} %\end{macro}] % %\begin{macro}{\@avaliadorii} % Macro utilizada como variável que contém o nome do segundo avaliador da banca, exibido na folha de aprovação. % \begin{macrocode} \newcommand\@avaliadorii{} % \end{macrocode} %\end{macro} % %\begin{macro}{\avaliadorii} %\changes{v1.2.0}{2018/11/22}{Nova macro} % Redefine o conteúdo da macro |\@avaliadorii|, cujo conteúdo é exibido na folha de aprovação. % \begin{macrocode} \newcommand\avaliadorii[1]{% \renewcommand\@avaliadorii{#1} } % \end{macrocode} %\end{macro} % %\begin{macro}{\@avaliadorext} % Macro utilizada como variávei que contém o nome do avaliador externo da banca, se houver. % \begin{macrocode} \newcommand\@avaliadorext{} % \end{macrocode} %\end{macro} % %\begin{macro}{\avaliadorext} %\changes{v1.2.0}{2018/11/22}{Nova macro} % Redefine o conteúdo da macro |\@avaliadorext|, cujo conteúdo é exibido na folha de aprovação, se a macro contiver algum texto. % \begin{macrocode} \newcommand\avaliadorext[1]{% \renewcommand\@avaliadorext{#1} } % \end{macrocode} %\end{macro} % %\begin{macro}{\imprimirfolhadeaprovacao} %\changes{v1.1.2}{2018/09/28}{Removido o nome do orientador abaixo da natureza do trabalho} %\changes{v1.2.0}{2018/11/22}{Modificados os argumentos da função e o layout gerado} % Imprime a folha de aprovação. % \begin{macrocode} \newcommand{\imprimirfolhadeaprovacao}[2][\imprimirinstituicao]{% \begin{folhadeaprovacao}% \begin{center}% \bfseries % \ABNTEXchapterfont % \expandafter\uppercase\expandafter{\theauthor} \par % \vfill \expandafter\uppercase\expandafter{\thetitle}\par % \end{center} \abntex@ifnotempty{\imprimirpreambulo}{% \hspace{.45\textwidth} % \begin{minipage}{.5\textwidth}% \mdseries% \SingleSpacing% \imprimirpreambulo% \vspace{24pt} \par % \bfseries Aprovado(a) em #2 % \end{minipage}% } \vfill \flushbottom \noindent\textbf{Banca Examinadora} % \begin{SingleSpace} % \vspace*{\ABNTEXsignskip}% \noindent% \imprimirorientador\\ \imprimirinstituicao \ifthenelse{\not\equal{\@avaliadori}{}}{% \par \vspace*{\ABNTEXsignskip}% \noindent\@avaliadori\\ \imprimirinstituicao }{} \ifthenelse{\not\equal{\@avaliadorii}{}}{% \par \vspace*{\ABNTEXsignskip}% \noindent\@avaliadorii\\ \imprimirinstituicao }{} \ifthenelse{\not\equal{\@avaliadorext}{}}{% \par \vspace*{\ABNTEXsignskip} \noindent\@avaliadorext\\ #1 % }{} \end{SingleSpace} % \end{folhadeaprovacao} % } % \end{macrocode} %\end{macro} % %\begin{macro}{\incluirimagem} % Inserção de uma figura com descrição e fonte. % \begin{macrocode} \newcommand{\incluirimagem}[4][1]{% \caption{#3}% \adjustimage{scale=#1,fbox=1.5pt {\fboxsep} 1pt,gstore width=\larguraimagem,center}{#2} \fonte[\larguraimagem-14pt]{#4} } % \end{macrocode} %\end{macro} % %\begin{macro}{\incluirimagem*} %\changes{v1.2.0}{2018/11/22}{Nova macro} % Inserção de uma figura sem descricão, apenas com fonte. % \begin{macrocode} \WithSuffix\newcommand\incluirimagem*[3][1]{% \adjustimage{scale=#1,fbox=1.5pt {\fboxsep} 1pt,gstore width=\larguraimagem,center}{#2} \fonte[\larguraimagem-14pt]{#3} } % \end{macrocode} %\end{macro} % %\begin{macro}{\incluirsiglas} % Inclusão do arquivo para a lista de siglas. % A macro só é definida se a opção |siglas| tiver sido habilitada. % \begin{macrocode} \ifthenelse{\boolean{@siglasAtivo}}{% \newcommand{\incluirsiglas}[1]{% \GlsXtrLoadResources[% src = {#1}, sort = {pt-BR}, type = {acronym}, entry-type-aliases={% make @foreignabbreviation act like @abbreviation foreignabbreviation=abbreviation}, field-aliases={% foreignlong=user1, nativelong=long}, category={same as original entry}% requires bib2gls v1.4+ ] }% % \end{macrocode} %\begin{macro}{\listofsiglas*} % Exibição da lista de siglas. % Também só é definida com a opção |siglas| habilitada.\\ % Por algum motivo, o comando |\printunsrtglossary| incrementa o contador table em uma unidade. % Por isso foi preciso utilizar a instrução para decrementá-lo logo em seguida.\\ % O comando foi criado com * para manter o padrão dos outros comandos de lista utilizados. % \begin{macrocode} \WithSuffix\newcommand\listofsiglas*{% \pdfbookmark[0]{\listadesiglasname}{loa} \printunsrtglossary[type=acronym,title=\listadesiglasname]% \addtocounter{table}{-1}% }% }{} % \end{macrocode} %\end{macro} %\end{macro} % %\begin{macro}{\incluirsimbolos} % Inclusão do arquivo para a lista de símbolos. % A macro só é definida se a opção |simbolos| tiver sido habilitada. % \begin{macrocode} \ifthenelse{\boolean{@simbolosAtivo}}{% \newcommand{\incluirsimbolos}[1]{% \GlsXtrLoadResources[% src = {#1}, sort = {use}, type = {symbols} ]% }% % \end{macrocode} %\begin{macro}{\listofsimbolos*} % Exibição da lista de símbolos. % Também só é definida com a opção |simbolos| habilitada.\\ % Por algum motivo, o comando |\printunsrtglossary| incrementa o contador table em uma unidade. % Por isso foi preciso utilizar a instrução para decrementá-lo logo em seguida.\\ % O comando foi criado com * para manter o padrão dos outros comandos de lista utilizados. % \begin{macrocode} \WithSuffix\newcommand\listofsimbolos*{% \pdfbookmark[0]{\listadesimbolosname}{los} \printunsrtglossary[type=symbols,title=\listadesimbolosname]% \addtocounter{table}{-1}% }% }{} % \end{macrocode} %\end{macro} %\end{macro} % %\Finale %\PrintChanges %\PrintIndex