Чертежные коробки любого размера и расположения

Чертежные коробки любого размера и расположения

Как нарисовать прямоугольники любого размера и в любом месте на текущей странице?

    \PassOptionsToPackage{dvipsnames}{xcolor} 
    \documentclass[landscape]{article}
    \usepackage{tikz,graphicx}
    \usepackage{pgf}
    \usepgflibrary{decorations.shapes}
    \usetikzlibrary{shapes.geometric, decorations.shapes,decorations.markings, shapes, fit, arrows, positioning, trees, mindmap, calc}
    \begin{document}
    \begin{tikzpicture}[remember picture, overlay]

    \draw [line width=1mm,opacity=.25] (current page.center) rectangle (3cm);

    \end{tikzpicture}
    \end{document}

решение1

Немного сложно понять ваш вопрос, поэтому мне придется сделать обоснованное предположение. Вот пример, в котором нарисовано несколько кругов и квадратов относительно фактического размера страницы, как у вас сейчас:

\PassOptionsToPackage{dvipsnames}{xcolor} 
\documentclass[landscape]{article}
\usepackage{tikz,graphicx}
\usepackage{pgf}
\usepgflibrary{decorations.shapes}
\usetikzlibrary{shapes.geometric, decorations.shapes,decorations.markings, shapes, fit, arrows, positioning, trees, mindmap, calc}
\begin{document}
\begin{tikzpicture}[remember picture, overlay]

\draw [line width=1mm,opacity=.25] (current page.center) circle (3cm);

\draw [line width=1mm,opacity=.25] ($(current page.center)+(3,0)$) circle (3cm);

\draw [line width=1mm,opacity=.5] ($(current page.center)+(5,1)$) rectangle ($(current page.center)+(7,3)$);

\end{tikzpicture}
\end{document}

В примере используются вычисления координат TikZ для использования позиционирования относительно центра страницы. Это то, что вам нужно? Если нет, пожалуйста, уточните. Поскольку вы используете "запомнить картинку", не забудьте скомпилировать дважды!

решение2

С помощью PSTricks.

Эллипсы и прямоугольники:

введите описание изображения здесь

\documentclass{article}
\usepackage{pstricks}
\usepackage[a4paper,margin=3cm]{geometry}
\pagestyle{empty}
\SpecialCoor

\makeatletter
\psset
{
    xunit=\dimexpr\textwidth/10,
    yunit=\dimexpr\textheight/10,
    linewidth=2pt,
}
\begin{document}
\noindent
\begin{pspicture}[showgrid=top](10,10)
\psLoop{20}
{
    \psframe[linecolor=red](!rand 801 mod 100 div rand 801 mod 100 div)(!rand 801 mod 100 div 2 add rand 801 mod 100 div 2 add)
    \psellipse[linecolor=orange](!rand 601 mod 100 div 2 add rand 601 mod 100 div 2 add)(!rand 1001 mod 500 div rand 1001 mod 500 div)
}
\end{pspicture}
\end{document}

Круги и прямоугольники:

введите описание изображения здесь

% A4 paper size 21.0cm × 29.7cm
\documentclass[pstricks,border=2cm]{standalone}
\SpecialCoor
\makeatletter
\psset
{
    linewidth=2pt,
}
\begin{document}
\noindent
\begin{pspicture}[showgrid=top](17.0,25.7)
\psLoop{10}
{
    \psframe[linecolor=red](!rand 1501 mod 100 div rand 2371 mod 100 div)(!rand 1501 mod 100 div 2 add rand 2371 mod 100 div 2 add)
    \pscircle[linecolor=orange](!2 rand 1301 mod 100 div add 2 rand 2171 mod 100 div add){!rand 1001 mod 500 div}
}
\end{pspicture}
\end{document}

Оrand

Предположим rand 501 mod 100 div, что получается действительное число от 0,00 до 5,00 включительно.

введите описание изображения здесь

Связанный контент