scrlttr2 の返品/返送先住所に会社名を追加するにはどうすればいいですか?

scrlttr2 の返品/返送先住所に会社名を追加するにはどうすればいいですか?

私はKOMAスクリプトガイドの166-167ページから簡単な例を引用しました。(PDF)私は今、自分の名前の前(または後)の行に会社名を入れたいと思っています。私は素朴に、

\setkomavar{fromname}{John Public}

\setkomavar{fromname}{Company Name\\John Public}

しかし、これではコンパイルが失敗します。エラーメッセージは次のようになります。

! Undefined control sequence.
\@gnewline ...\@nolnerr \else \unskip \reserved@e 
                                                  {\reserved@f #1}\nobreak \...
l.24 \closing{Expecting an invitation}

その結果、\closing{}コマンドを削除するとドキュメントは正しくレンダリングされますが、当然ながら閉じられなくなります。実際には閉じられるかどうかは気にしておらず、通常どおり動作することだけを望んでいることに注意してください。

質問:

  • from変数、つまり返信先住所に会社名を適切に追加するにはどうすればよいですか?
  • この奇妙なエラーの原因は何ですか?

完全な例:

\documentclass[foldmarks=true,foldmarks=blmtP,
fromalign=false,fromrule=afteraddress,
fromphone,fromemail,
version=last]{scrlttr2}
\usepackage[english]{babel}
\begin{document}
%\setkomavar{fromname}{John Public}
\setkomavar{fromname}{Company Name\\John Public}
\setkomavar{fromaddress}{Valley 2\\
54321 Public-Village}
\setkomavar{fromphone}{0\,12\,34~56\,78}
\setkomavar{fromemail}{[email protected]}
\begin{letter}{%
Joana Public\\
Hillside 1\\
12345 Public-City%
}
\opening{Dear chairman,}
the last general meeting was about one year ago.
I want to remind you, that the constitution of our
club advises you to make a general meeting every
six month. Because of this I expect the executive
board to detain such a meeting immediately.
\closing{Expecting an invitation}
\ps PS: I hope you accept this as an friendly
demand note.
\setkomavar*{enclseparator}{Enclosure}
\encl{Compendium of the constitution with the
general meeting paragraphs.}
\cc{executive board\\all members}
\end{letter}
\end{document}

答え1

0. ハッキング

(当面の間)あなたの問題を解決できるかもしれないハックは、\linebreakの代わりにを使用することです\\

\documentclass{scrlttr2}
\begin{document}
\setkomavar{fromname}{Company Name\linebreak\ John Public} % \_ before name typeset
%                                                               the `back address`
%                                                               correctly.
\begin{letter}{empfaenger}
    \opening{Hallo}
    text
    \closing{schluss}
\end{letter}
\end{document}

(私の場合はうまくいきましたが、あなたの場合は違うかもしれません!)

1. 署名に会社名を記載する

署名に会社名を追加するには、KOMA 変数を再定義してみてくださいsignature。私のシステムの設定方法は次のとおりです。

一般企業では.LCO

\newkomavar{companyname}
\setkomavar{companyname}{Incognito Ltd}

\setkomavar{fromname}{Nomen Nescio}
\setkomavar{signature}{\usekomavar{fromname}\\%
                       \footnotesize{\chairPerson}}



\providecaptionname{UKenglish}{\salutation}{Yours sincerely\linebreak\ Company Ltd.}
\providecaptionname{norsk}{\salutation}{Med vennlig hilsen\linebreak\ Company Ltd.}

私の個人的な.LCO

\setkomavar{fromname}{My Name}
\providecaptionname{UKenglish}{\chairPerson}{General Counsel/attorney at law \textsc{mna}}
\providecaptionname{norsk}{\chairPerson}{juridisk direkt\o r/advokat \textsc{mna}}

を使用すると\closing、必要な出力が得られます。会社の.LCOと個人の.LCOをテンプレート.texファイルに読み込みます。\providecaptionnameを使用すると、複数の言語を使用することができます。の代わりにbabelを使用します。\linebreak\\\

\renewcommand{\raggedsignature}{\raggedright}

2. 裏面の会社名

裏面の住所行に会社名を記載するには(マニュアルの 160 ページ以降を参照):

\newkomavar{companyname}
\setkomavar{companyname}{Incognito Ltd}

\setkomavar{backaddress}{%
     \usekomavar{companyname}\\%
     \usekomavar{fromname}\\%
     \usekomavar{fromaddress}%    % remember to define this
  } 
\setkomavar{backaddressseparator}{$\cdot$} % or a comma

3. 最初のページのヘッダーに会社名を表示する

これを実現するには再定義する必要がありますfirsthead:

\setkomavar{firsthead}{%
      \centering\usekomavar{companyname}\\%
      \usekomavar{fromname}\\%
      \rule{12em}{0.75pt}\\%
      \usekomavar{fromaddress}%
  }

関連情報