This series covers basic formatting in LaTeX. Part 1 introduced lists. Part 2 covered tables. In part 3, you will learn about another great feature of LaTeX: the flexibility of granular document formatting. This article covers customizing the page layout, table of contents, title sections, and page style.
Page dimension
When you first wrote your LaTeX document you may have noticed that the default margin is slightly bigger than you may imagine. The margins have to do with the type of paper you specified, for example, a4, letter, and the document class: article, book, report, and so on. To modify the page margins there are a few options, one of the simplest options is using the fullpage package.
This package sets the body of the page such that the page is almost full.
Fullpage package documentation
The illustration below demonstrates the LaTeX default body compared to using the fullpage package.
Another option is to use the geometry package. Before you explore how the geometry package can manipulate margins, first look at the page dimensions as depicted below.
one inch + \hoffset
one inch + \voffset
\oddsidemargin = 31pt
\topmargin = 20pt
\headheight = 12pt
\headsep = 25pt
\textheight = 592pt
\textwidth = 390pt
\marginparsep = 35pt
\marginparwidth = 35pt
\footskip = 30pt
To set the margin to 1 (one) inch using the geometry package use the following example
In addition to the above example, the geometry command can modify the paper size, and orientation. To change the size of the paper, use the example below:
\usepackage[a4paper, total={7in, 8in}]{geometry}
To change the page orientation, you need to add landscape to the geometry options as shown below:
By default, a LaTeX table of contents is titled “Contents”. There are times when you prefer to relabel the text to be “Table of Content”, change the vertical spacing between the ToC and your first section of chapter, or simply change the color of the text.
To change the text you add the following lines to your preamble, substitute english with your desired language :
\usepackage[english]{babel}
\addto\captionsenglish{
\renewcommand{\contentsname}
{\bfseries{Table of Contents}}}
To manipulate the virtual spacing between ToC and the list of figures, sections, and chapters, use the tocloft package. The two options used in this article are cftbeforesecskip and cftaftertoctitleskip.
The tocloft package provides means of controlling the typographic design of the ToC, List of Figures and List of Tables.
cftbeforesecskip is the spacing between the sections in the ToC, while cftaftertoctitleskip is the space between text “Table of Contents” and the first section in the ToC. The below image shows the differences between the default and the modified ToC.
Default ToC Customized ToC
Borders
When using the package hyperref in your document, LaTeX section lists in the ToC and references including \url have a border, as shown in the images below.
To remove these borders, include the following in the preamble, In the previous section, “Table of Contents,” you will see that there are not any borders in the ToC.
To modify the title section font, style, and/or color, use the package titlesec. In this example, you will change the font size, font style, and font color of the section, subsection, and subsubsection. First, add the following to the preamble.
Taking a closer look at the code, \titleformat*{\section} specifies the depth of section to use. The above example, uses up to the third depth. The {\Huge\bfseries\color{darkblue}} portion specifies the size of the font, font style and, font color
Page style
To customize the page headers and footers one of the packages, use fancyhdr. This example uses this package to modify the page style, header, and footer. The code below provides a brief description of what each option does.
\pagestyle{fancy} %for header to be on each page
\fancyhead[L]{} %keep left header blank
\fancyhead[C]{} %keep centre header blank
\fancyhead[R]{\leftmark} %add the section/chapter to the header right
\fancyfoot[L]{Static Content} %add static test to the left footer
\fancyfoot[C]{} %keep centre footer blank
\fancyfoot[R]{\thepage} %add the page number to the right footer
\setlength\voffset{-0.25in} %space between page border and header (1in + space)
\setlength\headheight{12pt} %height of the actual header.
\setlength\headsep{25pt} %separation between header and text.
\renewcommand{\headrulewidth}{2pt} % add header horizontal line
\renewcommand{\footrulewidth}{1pt} % add footer horizontal line
The results of this change are shown below:
Header Footer
Tips
Centralize the preamble
If write many TeX documents, you can create a .tex file with all your preamble based on your document categories and reference this file. For example, I use a structure.tex as shown below.
$ cat article_structure.tex
\usepackage[english]{babel}
\addto\captionsenglish{
\renewcommand{\contentsname}
{\bfseries{\color{darkblue}Table of Contents}}
} % Relable the contents
%\usepackage[margin=0.5in]{geometry} % specifies the margin of the document
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx} % allows you to add graphics to the document
\usepackage{hyperref} % permits redirection of URL from a PDF document
\usepackage{fullpage} % formate the content to utilise the full page
%\usepackage{a4wide}
\usepackage[export]{adjustbox} % to force image position
%\usepackage[section]{placeins} % to have multiple images in a figure
\usepackage{tabularx} % for wrapping text in a table
%\usepackage{rotating}
\usepackage{multirow}
\usepackage{subcaption} % to have multiple images in a figure
%\usepackage{smartdiagram} % initialise smart diagrams
\usepackage{enumitem} % to manage the spacing between lists and enumeration
\usepackage{fancyhdr} %, graphicx} %for header to be on each page
\pagestyle{fancy} %for header to be on each page
%\fancyhf{}
\fancyhead[L]{}
\fancyhead[C]{}
\fancyhead[R]{\leftmark}
\fancyfoot[L]{Static Content} %\includegraphics[width=0.02\textwidth]{virgin_voyages.png}}
\fancyfoot[C]{} % clear center
\fancyfoot[R]{\thepage}
\setlength\voffset{-0.25in} %Space between page border and header (1in + space)
\setlength\headheight{12pt} %Height of the actual header.
\setlength\headsep{25pt} %Separation between header and text.
\renewcommand{\headrulewidth}{2pt} % adds horizontal line
\renewcommand{\footrulewidth}{1pt} % add horizontal line (footer)
%\renewcommand{\oddsidemargin}{2pt} % adjuct the margin spacing
%\renewcommand{\pagenumbering}{roman} % change the numbering style
%\renewcommand{\hoffset}{20pt}
%\usepackage{color}
\usepackage[table]{xcolor}
\hypersetup{ pdfborder = {0 0 0}} % removes the red boarder from the table of content
%\usepackage{wasysym} %add checkbox
%\newcommand\insq[1]{%
% \Square\ #1\quad%
%} % specify the command to add checkbox
%\usepackage{xcolor}
%\usepackage{colortbl}
%\definecolor{Gray}{gray}{0.9} % create new colour
%\definecolor{LightCyan}{rgb}{0.88,1,1} % create new colour
%\usepackage[first=0,last=9]{lcg}
%\newcommand{\ra}{\rand0.\arabic{rand}}
%\newcolumntype{g}{>{\columncolor{LightCyan}}c} % create new column type g
%\usesmartdiagramlibrary{additions}
%\setcounter{figure}{0}
\setcounter{secnumdepth}{0} % sections are level 1
\usepackage{csquotes} % the proper was of using double quotes
%\usepackage{draftwatermark} % Enable watermark
%\SetWatermarkText{DRAFT} % Specify watermark text
%\SetWatermarkScale{5} % Toggle watermark size
\usepackage{listings} % add code blocks
\usepackage{titlesec} % Manipulate section/subsection
\titleformat{\section}{\Huge\bfseries\color{darkblue}} % update sections to bold with the colour blue \titleformat{\subsection}{\huge\bfseries\color{darkblue}} % update subsections to bold with the colour blue
\titleformat*{\subsubsection}{\Large\bfseries\color{darkblue}} % update subsubsections to bold with the colour blue
\usepackage[toc]{appendix} % Include appendix in TOC
\usepackage{xcolor}
\usepackage{tocloft} % For manipulating Table of Content virtical spacing
%\setlength\cftparskip{-2pt}
\setlength\cftbeforesecskip{2pt} %spacing between the sections
\setlength\cftaftertoctitleskip{30pt} % space between the first section and the text ``Table of Contents''
\definecolor{navyblue}{rgb}{0.0,0.0,0.5}
\definecolor{zaffre}{rgb}{0.0, 0.08, 0.66}
\definecolor{white}{rgb}{1.0, 1.0, 1.0}
\definecolor{darkblue}{rgb}{0.0, 0.2, 0.6}
\definecolor{darkgray}{rgb}{0.66, 0.66, 0.66}
\definecolor{lightgray}{rgb}{0.83, 0.83, 0.83}
%\pagenumbering{roman}
In your articles, refer to the structure.tex file as shown in the example below:
To enable watermarks in your LaTeX document, use the draftwatermark package. The below code snippet and image demonstrates the how to add a watermark to your document. By default the watermark color is grey which can be modified to your desired color.
\usepackage{draftwatermark} \SetWatermarkText{\color{red}Classified} %add watermark text \SetWatermarkScale{4} %specify the size of the text
Conclusion
In this series you saw some of the basic, but rich features that LaTeX provides for customizing your document to cater to your needs or the audience the document will be presented to. With LaTeX, there are many packages available to customize the page layout, style, and more.
Square Enix Is Offering Up To 50% Off Final Fantasy, Trials Of Mana And More
Damien has over a decade of professional writing experience under his belt, as well as a repulsively hairy belly. Rumours that he turned down a role in The Hobbit to work on Nintendo Life are, to the best of our knowledge, completely and utterly unfounded.
Spike Chunsoft’s Summer Sale Offers Up To 80% Off Selected Switch Titles
Damien has over a decade of professional writing experience under his belt, as well as a repulsively hairy belly. Rumours that he turned down a role in The Hobbit to work on Nintendo Life are, to the best of our knowledge, completely and utterly unfounded.
Posted by: xSicKxBot - 07-25-2020, 05:37 AM - Forum: Lounge
- No Replies
Watch This Bird Completely Destroy A Valorant Player's Day Live On Stream
A lot can go wrong while playing video games on stream: The audio and video could cut out, your account could get banned, mom or dad could knock on the door and interrupt your focus, etcetera. For Australian streamer LyNcHy_AU, though, none of these things happened. Instead, a bird flew in and disrupted his flow.
A magpie, a black-and-white spotted bird common in Australian and regarded as one of the most intelligent animals in the world, flew into Lynchy's Valorant stream as he was seemingly prepared to take out an enemy player. Before he could square his aim and pull the trigger, the magpie pulled a trigger of its own: crashing directly into Lynchy's face, knocking his headphones off and causing him to yelp in the process. It's a hilarious moment of nature striking back against humanity, and it was captured live on stream.
There's an extremely loud thud just before the magpie enters Lynchy's stream, entering from the right of the screen and flying into his home. After attempting to confront the bird, yelling at it to "get out of here," the bird clapped back, seemingly disagreeing with Lynchy's brazen inhospitality.
New Story DLC For The Outer Worlds Is Coming To Nintendo Switch In The Future
Obsidian Entertainment has officially revealed its first expansion for The Outer Worlds. Peril on Gorgon is coming to the PC, PlayStation 4, and Xbox One on 9th September, so what about a Switch release?
According to the publisher Private Division, Nintendo’s hybrid system will also be receiving this DLC in the future (thanks, Nintendo Life user Raccoonius):
IGN: It will be released for PS4, Xbox One and PC versions of the game on September 9. A Switch version will follow at a later date.
The Washington Post: For those hoping this DLC comes to Switch, Obsidian confirmed that they are having an “open conversation” about it, and plan to port the DLC to the device at a later, unspecified date.
Here’s what players can expect when it does arrive, along with the official trailer (above):
A severed arm and a mysterious message lead the crew of the Unreliable to the Gorgon Asteroid, formerly the site of one of Halcyon’s most ambitious and disastrous scientific undertakings, now a lawless den of monsters and marauders. Wealthy recluse Minnie Ambrose tasks the crew with finding answers about Dr. Olivia Ambrose, her mother and the doomed project’s disgraced director, but they are soon ensnared in an intrigue that will change the colony forever.
The last update for Switch owners was back in June when Private Division said a patch was in the works, and the team at Virtuos was looking to further improve the Nintendo version’s performance.
Would you be interested in trying out this DLC on the Switch? Leave a comment down below.
Sega Brings Phantasy Star Online 2: New Genesis To Nintendo Switch In 2021
Another title announced during the Xbox Games Showcase, which also happens to be making its way to the Nintendo Switch in 2021 is Sega’s Phantasy Star Online 2: New Genesis. According to Xbox Wire, this is the “latest entry” in the PSO2 universe – although, it’s also been described as an “update” by Sega.
The bad news is this free-to-play game remains exclusive to Japan on this particular platform. This is all because the Nintendo version is cloud-based. It follows on from the release of Phantasy Star Online 2 Cloud on the hybrid system in 2018.
New Genesis celebrates the 20th anniversary of the series and is an overhaul of PSO2 – with improved game design, gameplay, and a graphics engine that’s been completely reworked. At the same time, it promises to keep all the “time-tested” elements intact – to ensure it offers a familiar online action-RPG experience players know and love.
Above is an English trailer for the North American release on Xbox One, Xbox Series X, and PC. Would you like to see Sega somehow get this up and running on the Switch in the west? Have you played the second game? Tell us downbelow.
Just 10 Days After Launch, EA's Rocket Arena Is On Sale For $10
Rocket Arena, a new online shooter published by Electronic Arts, released on July 14. Even though time seems to be jumbled nowadays, just 10 days have passed since its launch. And, well, the Mythic edition is already discounted to $10, down from $40, making this the fastest and most substantial discount we've seen on a new game recently.
The deal is available on the PS4 and Xbox One versions at Best Buy, but you can also get it for $10 on PS4 at Amazon. At $40, Rocket Arena probably may not have been worth it, but for this price, it's certainly more tempting if you're looking for a new multiplayer game.
[www.indiegala.com] Join our Crypto Sale, and get an EXTRA 30% OFF on all bundles and 15% OFF on all store deals when paying with a supported cryptocurrency! (ends on 24 July)
WWE SummerSlam Will No Longer Take Place In Boston
In a year like 2020 it's no surprise to hear of events being cancelled, postponed, and moved around, but this one still might come as a disappointment to Bostonian wrestling fans. According to a statement posted on WWE's website, SummerSlam 2020, scheduled for August 23, will no longer be held in Boston.
"In coordination with our local partners, government officials, and TD Garden, WWE’s SummerSlam and related events will no longer take place in Boston," the statement on the website reads. "Refunds are available at the original point of purchase. We are grateful to the city of Boston for their longstanding partnership and look forward to holding WWE events at TD Garden in the future."
Under Boston's re-opening plan, large-scale indoor events like SumerSlam aren't allowed to take place until phase 4 of re-opening, which isn't likely to trigger until a COVID-19 vaccine or effective treatment becomes available. The city is in phase 3 as of early July.
Hot on the heels of yesterdays announcement that Bolt for Unity is now free, today we have the release of Unity 2020.1. There are several new features and improvements in this release including:
improvements to the package management system and package curation
new packages in preview including
Profile Analyzer
Kinematica
Cinemachine 2.6
2D Physics improvements, including the 2D Physics Sample being updated.
UI improvements including focused inspector, prefab improvements and more
new verified packages including:
Cinemachine 2.5
Input System
camera stacking in the URP
lightmapper improvements
AR foundation SDK and platform support improvements
device simulator greater device support
other fixes, improvements and features
For more details be sure to check out the Unity blog or the much more in-depth Unity 2020.1 release notes. Learn more about this release in the video below.