In your MWE you set footskip=1cm
(distance between the text area and the baseline of the footer) and footheight=2cm
(height of the footer box). Therefore the footer overlaps the text area.
The first letter page uses page style empty
. Header and footer on this page are positioned by pseudolength (see the KOMA-Script documentation).
There are some possibilities to get the same footer (same content and same position) on all pages, eg.
- Change the position of the footer layers for the page style used on second, third etc. page using the pseudolengths of the first page.
- Define a new layer using the pseudolengths of the first page and declare a new layer page style including this layer.
- Use page style
plain
on the first letter page. Then option firstfoot=false
is needed to disable the default footer of the first letter page.
- etc.
Here are two examples for the third possibility:
plain
as alias of plain.letter
:
\documentclass[
headheight=3cm,
%footheight=2cm,% <- remove this!!
parskip=full,
british
]{scrartcl}
\usepackage[
margin=2cm,
marginparsep=0cm,
marginparwidth=0cm,
footskip=1cm,
]{geometry}
%\usepackage{showframe}
\usepackage[%
foldmarks=false,
fromalign=right,
fromrule=off,
refline=dateleft,
fromphone=false,
fromemail=true,
backaddress=false,
subject=underlined,
pagenumber=footright,
firstfoot=false% <- added!
]{scrletter}% <- loads package scrlayer-scrpage automatically
\usepackage[T1]{fontenc}
\usepackage[en-GB]{datetime2}
\DTMlangsetup[en-GB]{ord=raise}
\usepackage{babel}
\usepackage{lipsum}% dummy text
\usepackage[pdflang=en-GB]{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=black,
filecolor=magenta,
urlcolor=blue
}
\renewcommand*\pagemark{\usekomafont{pagenumber}{\thepage\ of \letterlastpage}}% <- changed
\let\letterpagemark\pagemark
\AddToHook{cmd/opening/after}{\thispagestyle{plain}}% <- added
\setkomavar{myref}[Internal \#]{Testref1234}
\setkomavar{date}[Date]{\today}
\setkomavar{yourref}[Your \#]{Testref5678}
\setkomavar{fromname}{A N Other}
\setkomavar{signature}{A N Other}
\renewcommand*{\raggedsignature}{\raggedright}
\setkomavar{fromaddress}{Building Number\\Street\\State\\ZIP Code}
\setkomavar{subject}{Testing letter}
\begin{document}
\begin{letter}{A. Person\\Someplace\\ZIP CODE}
\opening{test}
\lipsum[1-9]\footnote{\lipsum[2]}
\closing{cheers}
\end{letter}
\end{document}
plain
as alias of plain.scrheadings
:
\documentclass[
headheight=3cm,
%footheight=2cm,% <- remove this!!
parskip=full,
british]{scrartcl}
\usepackage[
margin=2cm,
marginparsep=0cm,
marginparwidth=0cm,
footskip=1cm
]{geometry}
%\usepackage{showframe}
\usepackage[%
foldmarks=false,
fromalign=right,
fromrule=off,
refline=dateleft,
fromphone=false,
fromemail=true,
backaddress=false,
subject=underlined,
pagenumber=footright,
firstfoot=false% <- added!
]{scrletter}% <- loads package scrlayer-scrpage automatically
\usepackage[T1]{fontenc}
\usepackage[en-GB]{datetime2}
\DTMlangsetup[en-GB]{ord=raise}
\usepackage{babel}
\usepackage{lipsum}% dummy text
\usepackage[pdflang=en-GB]{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=black,
filecolor=magenta,
urlcolor=blue
}
\renewcommand*\letterpagestyle{}% <- added
\clearpairofpagestyles
\ofoot*{\pagemark}% <- changed
\renewcommand*\pagemark{\usekomafont{pagenumber}{\thepage\ of \letterlastpage}}% <- changed
\let\letterpagemark\pagemark
\AddToHook{cmd/opening/after}{\thispagestyle{plain}}% <- added
\setkomavar{myref}[Internal \#]{Testref1234}
\setkomavar{date}[Date]{\today}
\setkomavar{yourref}[Your \#]{Testref5678}
\setkomavar{fromname}{A N Other}
\setkomavar{signature}{A N Other}
\renewcommand*{\raggedsignature}{\raggedright}
\setkomavar{fromaddress}{Building Number\\Street\\State\\ZIP Code}
\setkomavar{subject}{Testing letter}
\begin{document}
\begin{letter}{A. Person\\Someplace\\ZIP CODE}
\opening{test}
\lipsum[1-9]\footnote{\lipsum[2]}
\closing{cheers}
\end{letter}
\end{document}

For additional suggestions and information see also
Update:
If the page number must not be on the same vertical position on all pages, you can use firstfoot=true
(default, eg. remove firstfoot=false
) and KOMA-Script variable firstfoot
:
\documentclass[
headheight=3cm,
%footheight=2cm,% <- remove this!!
parskip=full,
british
]{scrartcl}
\usepackage[
margin=2cm,
marginparsep=0cm,
marginparwidth=0cm,
footskip=1cm,
]{geometry}
%\usepackage{showframe}
\usepackage[%
foldmarks=false,
fromalign=right,
fromrule=off,
refline=dateleft,
fromphone=false,
fromemail=true,
backaddress=false,
subject=underlined,
pagenumber=footright
]{scrletter}% <- loads package scrlayer-scrpage automatically
\usepackage[T1]{fontenc}
\usepackage[en-GB]{datetime2}
\DTMlangsetup[en-GB]{ord=raise}
\usepackage{babel}
\usepackage{lipsum}% dummy text
\usepackage[pdflang=en-GB]{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=black,
filecolor=magenta,
urlcolor=blue
}
\renewcommand*\pagemark{\usekomafont{pagenumber}{\thepage\ of \letterlastpage}}% <- changed
\let\letterpagemark\pagemark
\setkomavar{firstfoot}{\raggedleft\pagemark}
\setkomavar{myref}[Internal \#]{Testref1234}
\setkomavar{date}[Date]{\today}
\setkomavar{yourref}[Your \#]{Testref5678}
\setkomavar{fromname}{A N Other}
\setkomavar{signature}{A N Other}
\renewcommand*{\raggedsignature}{\raggedright}
\setkomavar{fromaddress}{Building Number\\Street\\State\\ZIP Code}
\setkomavar{subject}{Testing letter}
\begin{document}
\begin{letter}{A. Person\\Someplace\\ZIP CODE}
\opening{test}
\lipsum[1-9]\footnote{\lipsum[2]}
\closing{cheers}
\end{letter}
\end{document}