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>처럼 입력하시면 좋습니다.
minipage 세로길이의 가변폭 관련
2020.09.21 23:01
뭔가 최소실행샘플을 만들어보려고 했는데 이미지 파일이 있어서 올리기도 어렵네요.
상황은 이렇습니다. 가로 100 mm 세로 200 mm인 페이지가 있다고 했을때...
텍스트가 위부터 70 mm까지 내려와요.
그리고 그 아래 이미지가 있는데 이건 지금 세로 길이가 50 mm쯤 되어서 다음페이지로 넘어가버립니다.
이럴때 세로 길이를 50mm는 넘지 않게, 하지만 페이지가 30mm만 남으면 30 mm로 20 mm만 남으면 20mm로
남은 페이지에 맞춰서 세로를 잡아주고 가로는 그 세로 길이에 따라 동일 비율로 조정되는 그런게 있는지 모르겠습니다.
그림 하나 두개가 그런 상황이면 페이지에 맞춰서 수동으로 할 수 있는데...
아래처럼 newcommand로 정의하려다보니 모르겠네요.
hfill 처럼 남은 길이에 해당되는걸 높이로 지정할 수가 있는가에 대한 질문입니다.
질문이 좀 어수선하여 의도가 잘 전달되는지 걱정입니다.
\newcommand{\IP}[2]{%
\begin{minipage}[t][1.2\columnwidth]{\columnwidth}
{\fbox{\noindent\centering\includegraphics[width=.9\columnwidth]{#1}}
\raggedleft\footnotesize \textsf{#2}}
\end{minipage}}
댓글 6
-
yihoze
2020.09.22 09:46
-
판돌이
2020.09.22 11:17
의견 고맙습니다. 말씀대로 생각보다 효율이 떨어질 수 있다는 생각이 듭니다.
아직 변수가 많아서 이미지 배치를 최대한 끝낸 뒤에 크기를 조정해봐야겠네요.
-
yihoze
2020.09.22 14:18
순서를 바꾸시는 게 낫다고 생각합니다. 저는 (아마도 다른 많은 사람들도) 이미지 폭을 판형에 맞게 정합니다. 글줄 길이가 10 센티미터라면 최대 이미지 폭도 그와 비슷해야 하겠죠. 2000 픽셀짜리 이미지를 10센티미터로 만들려면 (이미지매직이나 포토샵을 이용하여) 이미지의 해상도를 200 ppc로 바꾸면 됩니다. 그러면 \includegraphics에 width 옵션 같은 것은 사용할 필요가 없습니다. 일러스테이터로 벡터 이미지를 만들 때에도 폭을 정해놓고 만듭니다. 벡터 이미지에서는 이게 더욱 중요합니다. 이미지 폭에 따라 사용할 수 있는 선 굵기의 범위가 달라지니까요.
이런 고민을 가장 많이 하게 하는 게 스크린샷입니다. 예를 들어, 하안글 설명서 같은 걸 만든다고 하면, 전체 화면, 화면 일부, 대화상자 등이 문서에 포함되었을 때 모두 동일한 해상도로 보여야 자연스럽습니다. 일정한 해상도로 스크린샷들을 조정하면, 필요한 경우 includegraphics에서 scale 옵션으로 일정하게 늘리거나 줄이기도 쉽습니다.
-
noname
2020.09.22 12:35
yihoze님 의견에 동의합니다. 그림을 형편따라 늘리고 줄이고 하는 일을 자동화하는 것은 득보다 실이 크다고 봅니다.
그런데 질문하신 이런 일이 불가능하냐면 그런 것도 아니고 간단히 할 수 있는 일인데요. (점심시간에 잠깐 시간내면 되는 정도로 쉽다는군요...)
MWE를 제공하지 않으신 것은 유감입니다. 아래 코드를 보이기는 하지만 실제 질문하신 목적으로 사용하는 것은 현실적이지 못하다고 생각하고요, 그냥 LaTeX 코딩 공부의 자료라고 여겨 주십시오.
\ExplSyntaxOn \dim_new:N \defaultonelinedim \makeatletter \@ifclassloaded{memoir}{ \dim_set_eq:NN \defaultonelinedim \onelineskip } { \dim_set_eq:NN \defaultonelinedim \baselineskip } \makeatother \NewDocumentCommand \fillremaindervspacewithgraphic { m } { \dim_compare:nTF { \pagegoal == \c_max_dim } { \dim_set:Nn \l_tmpa_dim { \vsize } } { \dim_set:Nn \l_tmpa_dim { \pagegoal } } \dim_set:Nn \l_tmpb_dim { \l_tmpa_dim - \pagetotal - \defaultonelinedim } \dim_compare:nTF { \l_tmpb_dim > \defaultonelinedim } { \vfill \centerline{\includegraphics [ height = \dimexpr \l_tmpb_dim - 2pt \relax ] { #1 } } } { \centerline{\includegraphics [ width=.9\linewidth ] { #1 }} } } \ExplSyntaxOff
-
yihoze
2020.09.22 14:04
한 줄 이상 남으면 줄여서 집어넣는군요. 재미있습니다만 ... 역시 쓸 데는 찾기가 어려울 것 같습니다.
-
판돌이
2020.09.22 15:15
어설픈 질문에 너무 친절한 답변 고맙습니다.
나중에 결과를 보고하겠습니다. 음악가들 사진이 다수 포함된 음반 가이드북을 만들고 있습니다.
흥미롭지만 매력적으로 보이지 않습니다. 구현하기 쉽지 않을 뿐더러, 가까스로 그런 매크로를 만드는 데에 성공한다 해도 들인 노력에 비해 사용 빈도와 효용성이 크지 않으리라 생각합니다. 반대로 생각해 보죠. 글줄 높이가 약간 부족한 경우에 \enlargethispage 같은 것을 써서 \textheight를 늘리지 글자 크기를 줄이지는 않지 않습니까? 마찬가지로 그림 크기도 일정해야 한다고 봅니다. 마구잡이로 줄일 수 있는 그림이라면 중요하지 않거나 없어도 되는 것이지 않을까요?
이런 처리의 수고를 덜어주는 것이 figure 환경인데, 그림 위치를 특정하고 싶다면 수작업은 불가피합니다. 아니면 휑한 공백을 감수해야 합니다.