서클 인라인 번호 및 문자

FlorianL 09/19/2017. 1 answers, 174 views
tikz-pgf circles

\ textcircled 숫자를 만드는 좋은 방법을 기반으로 ? 서클을 숫자와 모든 문자 (즉, 크기 및 배치)에 대해 정확히 동일하게 보이게하는 간단한 방법이 있습니까?

원 안에 a 를 삽입하면, 노드는 숫자 노드보다 약간 낮게 그려집니다.

\documentclass{article}

\usepackage{tikz}
\newcommand*\circled[1]{\tikz[baseline=(char.base)]{
    \node[shape=circle, draw, inner sep=1pt, 
        minimum height=12pt] (char) {#1};}}

\begin{document}
This is \circled{a} \circled{1} balloon.
\end{document} 

여기에 이미지 설명을 입력하십시오.

EDIT

@koleygr의 답변과 게시 한 글자 : 같은 크기의 글자가없는 글자를 기반으로 할 때이 솔루션이 가장 즐겁고 다재다능합니다.

\newcommand*{\circled}[2][]{\tikz[baseline=(C.base)]{
    \node[inner sep=0pt] (C) {\vphantom{1g}#2};
    \node[draw, circle, inner sep=3pt, yshift=1pt] 
        at (C.center) {\vphantom{1g}};}} 

여기에 이미지 설명을 입력하십시오.

2 Comments
3 barbara beeton 09/19/2017
나는 그 문자 또는 숫자가 항상 같은 높이와 깊이를 가지고 있다는 것을 보증하기 위해 \strut 을 넣을 것입니다. (시도하지 않았고 기본 \strut 가 약간 클 수 있으므로 \vphantomNO 수 있습니다.)
koleygr 09/19/2017
나는 나의 대답을 편집했다 ... 당신은 당신의 것을 쓰고 선택할 수 있거나 모든 것을 조합하여 필요한 것을 모두 포함하는 답을 쓸 수있다. 귀하의 요청에 대해 더 잘 작동한다면 대답을 선택하는 것이 좋으며 문제의 모든 부분을 실제로 해결하지 않는 대답을 선택하는 것보다 낫습니다.

1 Answers


koleygr 09/20/2017.

Edit after accepted:

\documentclass{article}

\makeatletter
\usepackage{tikz}
\usetikzlibrary{calc}
\newcommand*\circled[1]{\tikz[baseline=(char.base)]{
    \node[shape=circle, draw, inner sep=1pt, 
        minimum height={\f@size*1.6},] (char) {\vphantom{WAH1g}#1};}}
\makeatother

\begin{document}
This is \circled{a} \circled{1} balloon.

\noindent\foreach \letter in {A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,V,U,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,1,2,3,4,5,6,7,8,9,0,.,/}
{%
\circled{\letter}\space%
}
\end{document} 

산출:

여기에 이미지 설명을 입력하십시오.

chars에 대한 다른 기반으로 인해 완벽하지는 않습니다 (하지만 벨로우즈 응답에서 더 낫습니다).

위의 문서 환경에서 동일한 코드를 확인하십시오.

여기에 이미지 설명을 입력하십시오.

이전 코드 (아래)에서 볼 수 있듯이 크기는 대문자와 소문자 사이에서 변경됩니다.

Old answer:

\vphantom 이 정의에 도움이 될 것입니다 :

\documentclass{article}

\usepackage{tikz}
\newcommand*\circled[1]{\tikz[baseline=(char.base)]{
    \node[shape=circle, draw, inner sep=1pt, 
        minimum height=12pt] (char) {\vphantom{1g}#1};}}

\begin{document}
This is \circled{a} \circled{1} balloon.
\end{document} 

산출:

여기에 이미지 설명을 입력하십시오.

3 comments
barbara beeton 09/20/2017
편지 대신 \vphantom 에서 "하나"를 사용하고있는 것으로 보입니다. (컴퓨터를 현대에 포함하는 것을 포함하여) 일부 글꼴에서는 숫자가 가장 큰 글자만큼 크지 않습니다. 그래서 "하나"대신에 "엘"을 사용하면 원을 약간 높이 올리 겠지만, 디 센더들과 함께 문자에 악영향을 줄 정도로 높지는 않습니다.
koleygr 09/20/2017
@barbarabeeton 주석 주셔서 감사합니다 ...하지만 1.6 \ f 크기가 대부분의 경우 돌볼 것이라고 생각합니다. 나는 1.75 또는 1.8이 더 낫다고 생각한다 (당신이 내 머리 글자가 대문자 인 곳에서 볼 수 있듯이). 내가 1 대신에 H (또는 무언가)를 놓아야한다는 건가? 나는 방금 OP의 질문에 기초한 나의 이전 대답으로부터 "1"을 지켰다 ... 물론 나는 그것을 바꿀 수있다. 나는 더 큰 편지가 다른 언어를 위해 거기에 추가되어야한다고 덧붙여 야한다고 생각한다. .. 당신은 무엇을 생각 하느냐?
koleygr 09/20/2017
@barbarabeeton 필자는 충분한 키가 있다고 생각되는 편지를 추가했습니다. 다시 한 번 감사드립니다.

Related questions

Hot questions

Language

Popular Tags