Динамически определить ширину логической головоломки

Динамически определить ширину логической головоломки

Я хочу, чтобы страница PDF-файла полностью вмещала логическую головоломку (обрезанную), но я не знаю итоговой ширины в начале блока для головоломки:

\documentclass[border=50px]{standalone}
\usepackage[german]{babel}
\usepackage{logicpuzzle}
\begin{document}
  \begin{fourwinds}[rows=50,columns=50,width=750px,scale=0.5]
    \framepuzzle
    \fourwindscell{1}{1}{2}{}
    \fourwindscell{50}{50}{2}{}
  \end{fourwinds}
\end{document}

Я хочу рассчитать ширину 750pxдинамически. В документации logicpuzzleговорится, что это ширина мини-страницы, которая будет окружать головоломку. Но я не нашел опции, чтобы задать ширину мини-страницы динамически.

Есть ли способ настроить ширину мини-бокса после того, как он был "создан" на новую ширину? И можно ли получить ширину мини-страницы, которая описывает, сколько пикселей потребуется для отображения всего содержимого?

Можно ли рассчитать полученную ширину до создания пазла типа width=<number of columns * width of one column>? А можно ли получить ширину одного столбца из logicpuzzleпакета?

Я не смог найти varwidthвариант пакета logicpuzzle, который был бы именно тем, что мне нужно...

решение1

logicpuzzleделаетнетпредлагают возможность определить точное widthили heightголоволомки, так как фактический размер головоломки всегда может превысить заданный width! Но вы , minipageконечно, всегда можете использовать \resizeboxдля определения widthили !heightobject

\documentclass{article}
\usepackage[german]{babel}
\usepackage{logicpuzzle}
\begin{document}
  \resizebox{8cm}{!}
  {
    \begin{fourwinds}[rows=50,columns=50,width=10cm,scale=0.2,fontsize=tiny]
      \framepuzzle
      \fourwindscell{1}{1}{2}{}
      \fourwindscell{50}{50}{2}{}
    \end{fourwinds}
  }
\end{document}

mwe изображение

Как egregуже отмечалось, 750 px(Пиксель) не имеет никакого смысла в контексте векторного формата, такого как PDF, поэтому просто укажите a с in cmили любую другую LaTeXединицу измерения.

Стандарт widthстолбца — 1 см. Поэтому вы можете приблизительно рассчитать размер widthголоволомки с помощью columns * 1cm * scale, например 50*1cm*0.2 = 10cm! В журнале вы увидите, что это 10cmнемного мало:Overfull \hbox (4.37386pt too wide) in paragraph at lines 12--12 [][]

Имейте в виду, что использование \resizeboxвезде может привести к разным размерам шрифта в головоломках, что может выглядеть не очень приятно! Использование фиксированного набора fontsizeи scaleможет быть лучшим вариантом, но может быть сложным для головоломок с очень разными размерами.

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