\begin{tikzpicture}[scale=x]
\node[scale=y] (a,b)
ao configurar uma imagem complexa e posicionar tudo manualmente (especificando todos os (a,b)'s), em seguida, alterar x para torná-lo maior ou menor estraga tudo.
Suponho que poderia usar uma caixa de redimensionamento, mas acho que a escala x seria a escala geral e definir seu valor para qualquer coisa também dimensionaria todas as escalas dentro dela... o que não é o caso.
Talvez haja uma maneira mais fácil?
Responder1
É muito difícil entender o problema com uma pergunta tão concisa, mas talvez o OP esteja procurando transform shape
? Olhar:
\documentclass[]{article}
\usepackage{tikz}
\begin{document}
{\Huge X}
\begin{tikzpicture}[
]
\node[draw] at (0,0) {A};
\node[draw, scale=2] at (1,0) {B};
\end{tikzpicture}
\bigskip
{\Huge X}
\begin{tikzpicture}[
scale=0.5]
\node[draw] at (0,0) {A};
\node[draw, scale=2] at (1,0) {B};
\end{tikzpicture}
\bigskip
{\Huge X}
\begin{tikzpicture}[
scale=0.5, every node/.style={transform shape}]
\node[draw] at (0,0) {A};
\node[draw, scale=2] at (1,0) {B};
\end{tikzpicture}
\end{document}
produzirá (o enorme X é para referência e observe a mudança da linha de base):
Responder2
scale
não é uma opção suportada por tikzpicture
. Ele é apenas definido globalmente dentro do escopo da imagem, de modo que afeta tudo o que dentro da imagem tem uma opção desse tipo. Isso pode ser tudo ou nada, mas geralmente serão algumas coisas e outras não.
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [ultra thick, ->] (0,0) -- (1,1) node [right] {A};
\begin{scope}[scale=2, xshift=10mm]
\draw [ultra thick, ->] (0,0) -- (1,1) node [right] {A};
\end{scope}
\end{tikzpicture}
\end{document}
Em geral, é isso que você deseja: fontes, larguras de linhas e pontas de setas não são afetadas pela escala, mas as coordenadas não.
A razão pela qual o uso \resizebox
é ruim é justamente porque afeta tudo na caixa: linhas, fontes, tudo. Isso é abaixo do ideal por uma margem porque significa um documento com fontes e linhas inconsistentes. Quando forem usadas fontes com tamanhos ópticos disponíveis, a distorção será ainda maior porque as formas de glifo projetadas para um tamanho maior ou menor serão renderizadas no lugar daquelas apropriadas ao contexto.
Nos casos em que o redimensionamento é inevitável, tikzscale
é preferível \resizebox
, pois manterá as larguras das linhas e os tamanhos das fontes, ao mesmo tempo que faz um trabalho mais abrangente e consistente de dimensionar o restante do que dimensionar apenas os elementos da imagem que suportam scale
.