Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
mdframed 안에서의 들여쓰기 막는 방법이 궁금합니다.
2014.10.29 11:58
댓글 6
-
그로몹
2014.10.29 12:18
-
하늘연
2014.10.29 13:15
텍 코드를 사용하실 때, 텍의 특성을 한가지 이해하시는 게 좋습니다.
Global하게 모두다 할 것인가, local하게 할 것인가에 따라 명령어를 짜는 구조가 다릅니다. 심지어 입력하는게 같다고 할지라도요.
\begin{mdframed}[style=graybox]
\setlength{\parindent}{0cm}
주재료 : \textbf{生薑 \tu{100g}}, 桂皮 \tu{3쪽}, 물 \tu{12컵}
부재료 : 꿀 \tu{5큰술}, 대추채\tu{(약간)}
\end{mdframed}
여기같은 경우는 environment로 싸여있기 때문에, 저기안에만 local하게 parindent값을 0으로 만들수 있습니다.환경이 없을 때에는 중괄호로 묶어서 해야 합니다.
-
nanim
2014.10.29 13:43
기본적으로 위 두 분 말씀과 같습니다만,
mdframed의 기능을 사용해서 locally parindent를 조절하려면 다음처럼 startcode를 넣어주면 됩니다.
\mdfdefinestyle{graybox}{font=\small\em,linecolor=gray,backgroundcolor=gray!10,startcode={\setlength{\parindent}{0pt}}}
2번은, BoldItalicFont가 설정되지 않았기 때문에 생기는 일이고요,
oblivoir 매뉴얼에 상세하게 실려 있는 대로,
\setkomainfont(HCR Batang LVT)(* Bold)(HCR Dotum LVT)[BoldItalicFont={HCR Dotum LVT Bold}]
생강계피차 마셔보고 싶네요.
-
안개나무
2014.10.29 14:52
그로몹님, 하늘연님, nanim님. 답변 모두 감사합니다. 잘 해결되었습니다.TeX Live 2014 사용, xelatex으로 컴파일 했습니다. (제가 오늘은 잘 잊어버리는 날인가보네요. 이것 저것.. ^^ )1. 자동 들여쓰기 : 사실, hwp에서 변환(?) 작업을 하는 중이라서 작업이 된 것도 있지만 아직 소스가 많이 남았습니다. 눈으로 보면서 줄바꿈을 확인하여 `\\`를 일일히 삽입하려니 한숨이 나와서 질문 올렸습니다. nanim님이 말씀해주신 설정을 찾고 있었는데 mdframed 메뉴얼에선 못찾겠더군요. 잘 해결되었습니다.2. 저는 함초롬 폰트 페밀리에 nomal, bold가 있어서 한글단에서 한번 설정하면 한자단도 자동으로 따라갈 줄 알았습니다.그로몹님의 글을 보고,> \setkomainfont(HCR Batang LVT)(* Bold)(HCR Dotum LVT)(HCR Batang LVT)(HCR Batang LVT Bold)(HCR Dotum LVT)으로 지정해고 보니 글자가 진하게 안나오고,> \setkomainfont(HCR Batang LVT)(* Bold)(HCR Dotum LVT)(HCR Batang LVT)(HCR Dotum LVT Bold)(HCR Dotum LVT)돋움 bold로 지정해보니 글자가 진하게 나왔습니다. 아마 함초롱 바탕체 Bold에 한자 글꼴이 없었나봅니다.물론 nanim님이 말씀해주신대로 설정해도 잘 되었습니다.감사합니다. -
Progress
2014.10.29 18:03
아까 점심 먹고 작성하다가 급하게 어딜 갔다왔는데 아까워서 올립니다.
% mdframed6.tex
\documentclass[a4paper,hcr]{oblivoir}
% 클래스 옵션으로 hcr을 지정하면 바탕은 함초롬바탕 LVT, 돋움은 함초롬돋움 LVT를 자동으로 지정해준다.
% \documentclass[a4paper]{oblivoir} % hcr을 쓰지 않으면 한글/한자의 바탕과 돋움은 다음 중 하나의 방법으로 지정한다.
% \setkomainfont(HCR Batang LVT)(HCR Batang LVT Bold)()
% \setkosansfont(HCR Dotum LVT)(HCR Dotum LVT Bold)()
% \setkomainfont(HCR Batang LVT)(* Bold)()
% \setkosansfont(HCR Dotum LVT)(* Bold)()
% \setkomainfont(HCR Batang LVT)(* Bold)
% \setkosansfont(HCR Batang LVT)(* Bold)
% \setmainhangulfont{HCR Batang LVT}
% \setsanshangulfont{HCR Batang LVT}
% \setmainhanjafont{HCR Batang LVT}
% \setsanshanjafont{HCR Batang LVT}
\newfontfamily\fallbackhanjafont[Script=CJK,Language=Korean]{HanaMinB}
% \RequirePackage[dvipsnames,svgnames,x11names]{xcolor}
\usepackage[dvipsnames*,svgnames,x11names]{xcolor}
% 보통 문서에서는 \usepackage를 쓴다. \RequirePackage는 어떤 패키지에 내에서 다른 패키지를 호출할 때 사용하는 것이라 한다.
% dvipsnames*와 같이 애스터리스크(*)를 붙여봤다. 왜 그런지는 xcolor 매뉴얼을 참고하라.
\usepackage[framemethod=tikz,xcolor]{mdframed}
% 기존 환경에 surroundwithframed로 테두리 두르기
\newenvironment{recipe}{\parindent=0pt}{}
\mdfdefinestyle{graybox}{font=\small,linecolor=gray,backgroundcolor=gray!10,}
\surroundwithmdframed[style=graybox]{recipe}
% 그냥 일반적인 환경에서 startcode 옵션으로 집어넣기.
\mdfdefinestyle{recipestyle}{%
font=\small,
roundcorner=5pt,
backgroundcolor=SeaGreen!5,
linecolor=SeaGreen,
linewidth=.5pt,
skipabove=1.33\onelineskip,
skipbelow=1.33\onelineskip,
needspace=\onelineskip,
splittopskip=.75\onelineskip,
splitbottomskip=.75\onelineskip,
innertopmargin=.75\onelineskip,
innerbottommargin=.75\onelineskip,
ignorelastdescenders=true,
startcode=\setlength{\parindent}{0pt},
% 프레임 타이틀에 관한 설정
frametitlefont={\sffamily\color{SeaGreen}},
frametitlerule=true,
frametitlerulewidth=.25pt,
frametitlebackgroundcolor=SeaGreen!10,
}
\newmdenv[style=recipestyle]{anotherrecipe}
\newcommand*{\tu}[1]{{\scriptsize #1}} %할주나 작은 사이즈의 본문 글씨 크기
\tightlist
\begin{document}
\section{surroundwithframed}
\verb!surroundwithframe! 명령은 이미 존재하는 환경에 프레임을 두를 수 있다. 여기서는 \verb!recipe!라는 환경을 미리 만들어놓되 그 들여쓰기값을 0pt로 지정해놓는다.
그러고나서 \verb!surroundwithframe!로 한번 더 \verb!recipe!를 둘러싼다.
\begin{recipe}
주재료 : \textbf{生薑 \tu{100g}}, 桂皮 \tu{3쪽}, 물 \tu{12컵}
부재료 : 꿀 \tu{5큰술}, 대추채\tu{(약간)}
\end{recipe}
\begin{recipe}
\sffamily
주재료 : \textbf{生薑 \tu{100g}}, 桂皮 \tu{3쪽}, 물 \tu{12컵}
부재료 : 꿀 \tu{5큰술}, 대추채\tu{(약간)}
\end{recipe}
\section{startcode 옵션}
\verb!startcode! 옵션은 \verb!mdframed! 환경을 불러오기 바로 전에 시행하는 명령어이다. 이게 편하다.
비슷하게 \verb!mdfrmaed! 환경이 끝나면서 무언가를 집어넣으려면 \verb!endcode! 옵션을 사용한다.
\begin{anotherrecipe}[frametitle=생강계피차]
주재료: \textbf{生薑 \tu{100g}}, 桂皮 \tu{3쪽}, 물 \tu{12컵}
부재료: 꿀 \tu{5큰술}, 대추채\tu{(약간)}
\end{anotherrecipe}
\verb!mdframed!은 가급적 \verb!\mdfdefinestyle!로 프레임의 여러 가지 변수를 설정해서 고유 이름을 지닌 스타일을 하나 만들어놓고, 다른 프레임 환경을 정의하면서(\verb!\newmdenv!) 그 고유 스타일을 불러오는 것이 여러모로 편리하다. 어떤 mdframed 환경에서 고유 스타일을 정했다손치더라도, 그 스타일에 정해지지 않은 다른 옵션을 덧붙일 수 있다. 즉 \verb!linewidth=.5pt!라고 스타일에 이미 정해져있더라도 이 박스만 테두리를 더 두껍게 하려면 옵션에 \verb!linewidth=10pt!라고 하면 그만이다
\begin{anotherrecipe}[frametitle=생강계피차 굵은 테두리, linewidth=10pt]
주재료: \textbf{生薑 \tu{100g}}, 桂皮 \tu{3쪽}, 물 \tu{12컵}
부재료: 꿀 \tu{5큰술}, 대추채\tu{(약간)}
\end{anotherrecipe}
\begin{enumerate}
\item 생강은 껍질을 벗기고 얇게 저며 썬 다음 채반에 널어 꾸덕하게 말린다.
\item 말린 생강은 기름 없이 팬에 갈색이 나도록 볶아 식힌다.
\item 깨끗이 씻은 계피를 볶은 생강과 함께 물에 넣어 중간 불에 올려서 끓인다.
\item 진한 생강의 향과 계피 향이 어우러져 맛이 나면 꿀을 넣어서 풍미를 더한 후 불에서 내려 체에 걸러서 맑은 생강계피차만 물병 등에 담아 식혀 냉장고에 넣어 보관한다.
\item 생강계피차는 따끈하게 주전자에 넣어서 다시 데워 마셔야 좋은데 대추를 곱게 채 썰어 띄워 함께 먹으면 더욱 좋다.
\end{enumerate}
\end{document}
====
오블리부아 클래스에서 다음과 같이 폰트 지정하셨는데, 뭔가 어색합니다.
\setkomainfont(HCR Batang LVT)(* Bold)(HCR Dotum LVT)(HCR Batang LVT)(HCR Dotum LVT Bold)(HCR Dotum LVT)
바탕(serif, 통상 main)/돋움(sanserif)/모노(mono 또는 typewriter) 이렇게 세 가지에 모습에 대한 폰트를 지정할 수 있습니다. 거기에 각각 라틴/한글/한자가 나뉩니다.
편의상 명조(serif)의 예를 들겠습니다.
\setmainfont{Times New Roman} % 라틴 세리프(메인) 폰트
\setmainhangulfont{HCR Batang LVT} % 한글 바탕(메인 또는 명조)
\setmainhanjafont{HCR Batang LVT} % 한자 바탕(메인 또는 명조)
라틴 폰트에는 물론 regular 외에도 bold, italic, bolditalic 등이 있겠습니다.
한글과 한자 폰트에는 이탤릭 부분과 볼드이탤릭 부분은 없습니다.따라서 위와 같이 지정해주는 게 FM적인 방법이고요.
oblivoir는 한글과 한자를 좀더 간단하게 지정할 수 있는 명령이 있습니다.\setkomainfont(HCR Batang LVT)(HCR Batang LVT Bold)()[](HCR Batang LVT)(HCR Batang LVT Bold)()
위에서 [] 전 부분은 한글 폰트, [] 다음 부분 한자 폰트입니다. ()로 비워둔 것은 이탤릭 폰트를 위함인데 그냥 없는 것으로 처리했습니다.
이때 한글과 한자 폰트가 동일하면 [] 이하를 날릴 수 있습니다.\setkomainfont(HCR Batang LVT)(HCR Batang LVT Bold)()
또 볼트 폰트의 경우 폰트 이름에 중첩된 HCR Batang LVT는 *으로 대체 가능합니다.\setkomainfont(HCR Batang LVT)(* Bold)()
이탤릭 폰트를 지정하지 않으면 () 또한 그냥 날려버려도 됩니다.\setkomainfont(HCR Batang LVT)(* Bold)
다른 돋움(sanserif), 모노(mono) 폰트도 비슷하게 \setkosansfont, \setkomonofont로 지정할 수 있습니다.
그리고 라틴 모노 폰트와 달리 한글/한자의 모노 폰트는 굳이 쓸 일이 생기지 않을 것으로 생각합니다.
함초롬 글꼴의 경우, 이마저도 귀찮으면 oblivoir 클래스 옵션으로 hcr을 지정해주면 됩니다.
자세한 것은 첨부한 .tex 파일에 주석을 달아놓았으니 참고하시면 되겠습니다.===
폰트 설정에 관한 더 자세한 내용은 xetexko 매뉴얼과 oblivoir 매뉴얼을 정독하시기 바랍니다. (꼭 이 순서대로!)
> texdoc xetexko
> texdoc oblivoir
-
안개나무
2014.10.29 20:18
감사합니다. TeX에 대한 지식이 짧아서 \em 과 \sffamily를 같은 것으로 알았습니다. \em 옵션을 주고선, 왜 안굵어지나 했습니다.
\documentclass[a4paper,hcr]{oblivoir}
기본 클래스 옵션만 주고, mdframed 스타일 옵션에서 \em 옵션을 빼기만해도 잘 되네요.
함초롬 폰트에는 이상이 없었습니다. 제가 잘못한거네요. ^^;
언제나 자신이 사용하는 텍의 버젼을 적어주세요.
최신 텍을 잘 업데이트 해서 사용하신다고 생각하고...
1. 번은 자동 들여쓰기가 어디서나 잘 되고 있기 때문이고요. 이것이 싫으면 줄 맨 앞에 \noindent 를 삽입하는 방법 밖에는 모릅니다. 혹시 더 좋은 방법이 있으시면 알려주세요. (지금 만들어 놓으신 파일을 고치고 싶다면 고치는 부분만 highlight 한 후에 \\를 \par\noindent 로 search and replace 하는 방법이 쉽습니다.
2. 번은 생강이란 한자 글꼴이 bold체를 가지고 있지 않아서 명령은 boldface를 주었지만 그냥 normal 글꼴이 나오는 것일 것입니다. oblivoir를 사용하신다고 가정하고 당연히 oblivoir의 간편 사용법 설명서를 읽어보시기 바랍니다. texdoc oblivoir 하시면 oblivoir-simpledoc.pdf 파일이 열립니다. 최신 버젼 16쪽에 한자에서 fakebold를 사용하는 방법 설명이 있습니다. bold 글꼴을 사용하는 것이 옳지만 어쩔 수 없는 경우에는 이것을 사용하나고 하셨네요.