# Is there a way to draw a simple circle or square in plain TeX/LaTeX, without relying on graphics packages?

I need to draw some bullets for a custom list, but what I have now is pgf code. I figured, why load entire pgf package to draw a mere circle (or square) when there must be (don't tell me otherwise, it's heartbreaking) plain TeX/LaTeX commands to do just that.

• Drawings are all created with source specials. Yes, you can do that by hand, but it is potentially painful. If you are limiting to simple lines and circles, you can of course use picture mode ... – Joseph Wright Nov 15 at 16:29
• Is Metafont an option? Doing it in TeX could be a bit hard. Only thing I could think of that doesn't rely on specials, glyphs or similar would be to place a lot (read a lot) dots that coincidentally form a circle... – Skillmon Nov 15 at 16:34
• @Skillmon \qbezier command in the format does exactly that – David Carlisle Nov 15 at 16:37
• some circle examples with no package loaded tex.stackexchange.com/a/473314/1090 – David Carlisle Nov 15 at 17:02

As long as you only want the circles in a limited size range

\documentclass{article}

\begin{document}

zzz
\begin{picture}(8,8)
\put(5,3){\circle{5}}
\end{picture}
zzz
\begin{picture}(8,8)
\put(5,3){\circle*{5}}
\end{picture}
zzz
\begin{picture}(8,8)
\put(1,1){\framebox(5,5){}}
\end{picture}
zzz

\end{document}

• for circle around 10pt I think, I'd have to check, rectangles have no limit – David Carlisle Nov 15 at 16:34
• @bp2017 why can't you use bullets from the font? \bullet, \Box etc? – David Carlisle Nov 15 at 16:35
• @bp2017 er yes but using \resizebox defeats the point of the question:-) You can draw curves using literal postscript or pdf drawing commands, but if you want to avoid that and stick to pure tex with no system dependent back end then you can do as I suggest here, but resizebox inserts system specific literal pdf or postscript scaling commands so gets back to where you started – David Carlisle Nov 15 at 16:39
• .. and more explicitly your title asks to avoid graphics packages and \resizebox is defined in the package named graphics – David Carlisle Nov 15 at 16:42
• @bp2017 amssymb in amsfonts it is highly unlikely that you don't have it installed, first hit in google for "ctan amssymb" is ctan.org/pkg/amsfonts?lang=en latexsym is part of the base latex distribution, you have that installed if you have latex at all. – David Carlisle Nov 15 at 23:11
 \documentclass{article}
\usepackage[T1]{fontenc}
\begin{document}
\textbullet \rule{1ex}{1ex} \Huge\textbullet \rule{1ex}{1ex}
\end{document}