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>처럼 입력하시면 좋습니다.
일정한 크기의 박스에 텍스트 넣기
2020.07.09 14:52
가로와 세로를 지정한 박스에 텍스트를 넣다가 박스가 넘치게 되면 그만두는 (나머지는 텍스트는 버리는) 그런 걸 만들어보고자 합니다. 쉽지 않으리라 생각했지만, interface3 문서를 보면서 이것저것 해보았는데, 단서조차 잡지 못하겠습니다.
그러니까 셋째 박스에서 drop box contents가 끝에 걸리니까 이 줄을 그냥 버리고 싶습니다. MWE로서 전혀 도움이 되지 않겠지만 ...
\documentclass[a4paper]{article}
\usepackage{xparse}
\def\ltext{Vertical boxes inherit their baseline from their contents. The standard case is that the baseline of the box is at the same position as that of the last item added to the box.}
\def\rtext{The functions above for using box contents work in exactly the same way as for any other expl3 variable. However, for efficiency reasons, it is also useful to have functions which drop box contents on use. When a box is dropped, the box becomes empty at the group level where the box was originally set rather than necessarily at the current group level.}
\ExplSyntaxOn
\NewDocumentCommand \textbox { m }
{
\fbox{
\begin{minipage}[l][5em]{20em}
#1
\end{minipage}
}
}
\ExplSyntaxOff
\setlength\parindent{0pt}
\begin{document}
\textbox{test}
\ltext
\textbox{\ltext}
\rtext
\textbox{\rtext}
\end{document}
* * *
이게 꼭 필요한 건 아니고 공부삼아 해보려 한 것인데, 길을 잃었습니다.
댓글 3
-
noname
2020.07.09 18:06
-
yihoze
2020.07.10 07:56
집어넣은 다음에 높이를 재고 잘라내는 것이군요. 고맙습니다.
-
noname
2020.07.10 04:43
같은 겁니다만 이편이 더 읽기 편하신 분도 계실 거 같아서 코드를 보입니다. (\textbox 명령에 두 개의 옵션 인자(가로/세로길이)를 줄 수 있게 했습니다. 디폴트는 20em, 5em.
\NewDocumentCommand\textbox{O{20em}O{5em}m}% {\setbox0=\vbox{\hsize=#1 #3}\dimen0=\ht0 \advance\dimen0\dp0 \ifdim\dimen0>#2\relax \setbox1=\vsplit0to#2\else \setbox1=\vbox to#2{\unvcopy0}\fi \fbox{\usebox1}}