
Для какого-то проекта мне нужно сделать PDF из одной страницы, без каких-либо полей. Левое, правое и верхнее поля легко установить на 0, но мне также нужно, чтобы PDF имел точную высоту того, что внутри, поэтому мне нужно обрезать по нижней части глубины конечного vbox. Я использую LuaTeX для этого, и лучше всего, если вертикальная обрезка PDF выполняется в отдельном скрипте (так как мне нужно несколько проходов для генерации нужного мне PDF).
Я думаю о том, чтобы вывести абсолютную высоту глубины конечного блока в файле aux, что-то вроде XXXcutAt:10cm
, а затем проанализировать файл aux и передать это значение pdfcrop
в скрипт.
Я не уверен, как лучше всего узнать это значение... Есть ли какой-то очевидный способ получить его только для TeX, который я упускаю? Если нет, то, похоже, чтение руководства LuaTeX — это pdf.v
то, что мне нужно, но я немного озадачен тем, как его использовать... Есть ли какой-нибудь код, который его использует, который я мог бы использовать в качестве примера?
решение1
Это простой текст, но то же самое можно сделать из латекса.
\setbox0=\vbox{\hsize=7.8cm
some text to fill out several lines of a paragraph with a high
proportion of g and y and f so that the depth is non zero
some text to fill out several lines of a paragraph with a high
proportion of g and y and f so that the depth is non zero
some text to fill out several lines of a paragraph with a high
proportion of g and y and f so that the depth is non zero
some text to fill out several lines of a paragraph with a high
proportion of g and y and f so that the depth is non zero
some text to fill out several lines of a paragraph with a high
proportion of g and y and f so that the depth is non zero
some text to fill out several lines of a paragraph with a high
proportion of g and y and f so that the depth is non zero}
\hoffset-1in
\voffset-1in
%asuming luatex 0.80 or older
\pdfpagewidth\wd0
\pdfpageheight\dimexpr\ht0+\dp0\relax
\shipout\box0
\bye