![如何將公司名稱加入 scrlttr2 中的退貨地址?](https://rvso.com/image/305917/%E5%A6%82%E4%BD%95%E5%B0%87%E5%85%AC%E5%8F%B8%E5%90%8D%E7%A8%B1%E5%8A%A0%E5%85%A5%20scrlttr2%20%E4%B8%AD%E7%9A%84%E9%80%80%E8%B2%A8%E5%9C%B0%E5%9D%80%EF%BC%9F.png)
我從 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 頁 ff.):
\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}%
}