Re: Usare un font typewriter di default

#3630
Up
0
Down
::


Ciao a tutti.

Riporto il codice che ho utilizzato per passare agevolmente da una formattazione tradizionale ad una 30×60.

Premetto che uso Latex da poco tempo e vi prego di non inorridire per la rozzezza del mio codice.

Questo è il documento .tex di partenza:

`
\documentclass[12pt,a4paper,openany, twoside]{mwbk}

%%% Pacchetti base
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[italian]{babel}
\frenchspacing
%\usepackage{newcent} % newcent, palatino, times \larg{37em} !!!

%%% Fancy Headings
\usepackage{fancyhdr}
\pagestyle{fancy}
%% Personalizza fancy
\fancyhead{}
\fancyhead[LE]{Luca Di Gialleonardo}
\fancyhead[RE]{P~S~I}
\fancyhead[LO]{\leftmark}
\fancyhead[RO]{\rightmark}
\cfoot{\thepage}
%% Cambia Mark
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter}{#1}}

%%% Comandi veloci
\newcommand{\e}[1]{\emph{#1}} % Per creare del testo enfatizzato
\newcommand{\spazio}{\bigskip \noindent}

%%%%% Conversione in CARTELLA %%%%%
\addtolength{\headwidth}{1cm}
%% TESTO NORMALE %% Disattiva se 30×60
\usepackage[rilegatura=1cm]{layaureo}
%% TESTO CARTELLA %%
% \usepackage{cartella}
% \larg{37em}

%%% Title Page
\title{P~S~I}
\author{Luca Di Gialleonardo}
\date{\small Romanzo}

%%%%%%%%%%%%%%%%%%%%%%%%%%%% Inizio Documento %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}

% \sloppy % Attivare solo in modalità 30×60 %%%%%%%%%%%%

\frontmatter
\maketitle

\tableofcontents

\mainmatter

\include{00prologo}

`

Con questo preambolo ho un testo standard.

Se voglio passare al 30×60, imposto il oneside (ma solo per semplicità), decommento le righe:

`
\usepackage{cartella}

\sloppy
`

e commento la riga che attiva il layaureo.

Questo è il contenuto del pacchetto cartella.sty:

`
\ProvidesPackage{cartella}[2004/07/30 v0.1 costruzione cartella 30×60]

%% TESTO CARTELLA %%
\renewcommand{\rmdefault}{\ttdefault} % Carattere monospazio
\setlength{\parindent}{0pt} % Togli indentazione
\linespread{1.6} % Interlinea doppia
\usepackage[htt]{hyphenat} % Sillabazione per carattere monospazio
\setlength{\textwidth}{32em} % Righe di 60 caratteri DEFAULT
\newcommand{\larg}[1]{\setlength{\textwidth}{#1}
\setlength{\headwidth}{\textwidth}} % rivedi larghezza
\setlength{\headwidth}{\textwidth} % Correzione larghezza intestazione
`

In questo modo ottengo pagine con caratteri monospazio di 60 righe e con un massimo di 30 battute per riga.
Ho dovuto aggiungere il comando \larg perché se utililizzo il pacchetto newcent (ma anche palatino e altri) viene utilizzato il courier come carattere monospazio e la larghezza di 32em della pagina non è più sufficiente per avere righe di 30 battute. Utilizzando questi pacchetti devo decommentare la righa \larg{37em} nel preambolo del documento per correggere il tutto.
Ma ho un dubbio: mi pare di aver capito che l’unità di misura em equivale alla larghezza della lettera m (o M?) nel font di default. Pensavo che settando la larghezza del testo a 30em avrei ottenuto il risultato cercato, ma sbagliavo. Ciò avviene perché la ridefinizione dell’rmdefault, non cambia il font di base?

In ogni caso spero di non aver commesso gravi errori e che qualcuno di voi possa darmi buoni consigli per migliorare il codice.
Magari si potrebbe creare un pacchetto come si deve e metterlo a disposizione degli altri, forse non sono l’unico ad avere questa esigenza.

Grazie mille a tutti, Luca.

Go to top