Подсчет строк относительно A4

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Ответить
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Подсчет строк относительно A4

Сообщение QWERTYASDF »

Здравствуйте. Очень нужно (чем скорее, тем лучше) решение следующей задачи.

Есть один или несколько текстовых (ASCII) файлов (созданных в cat или nano). Нужно прогнать их через скрипт (ну или отдельную утилиту...) и на выходе получить количество напечатанных строк на листе формата A4 по отношению к максимально возможному там их количеству, ну или соотношение в процентах. Печать предполагается самая незамысловатая т.е. примерно такого вида:

Код: Выделить всё

cat file [file1] [file2] ...[file_N] | lp


Насколько понимаю, дело усложняется разными настройками печати, и поэтому наверное волшебно было-бы иметь возможность запрограммировать учет текущих настроек печати и/или ручной их ввод...

Знаю, задача банальная и может не правильно поставлена, заранее извиняюсь...Если бы не было нужно так срочно, то попыталась бы разобраться сама.
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3729
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2
Контактная информация:

Re: Подсчет строк относительно A4

Сообщение Hephaestus »

QWERTYASDF писал(а):
13.02.2014 23:42
Насколько понимаю, дело усложняется разными настройками печати, и поэтому наверное волшебно было-бы иметь возможность запрограммировать учет текущих настроек печати и/или ручной их ввод...
Не просто усложняется. А становится почти бессмысленной.
Количество строк на листе А4 напрямую зависит по полей (левого, правого, верхнего и нижнего), размера и гарнитуры шрифта (в разных гарнитурах одни и те же символы могут быть разного размера), межстрочного интервала - это как минимум.
Понятно, что в текстовом файле ничего этого нет.

QWERTYASDF писал(а):
13.02.2014 23:42
Знаю, задача банальная и может не правильно поставлена
В общем, да, поставлена не очень верно.
Можно взять текст, вывести его в pdf (или на лист в LO Writer) на формат A4, оценить количество уместившихся символов, количество строк. Попробовать несколько вариантов настроек печати и гарнитур/размеров шрифта.
Набрать статистику. Вывести примерное соотношение в процентах объема текста (в символах) к числу строк на листе.
Принять полученное соотношение за константу. Для других объемов текста исходить из данного соотношения. Это приблизительно, с прицелом на то, что настройки печати в разных случаях примерно одинаковы.
Это решение - на скорую руку - для сферического листа в вакууме, но если выражать в процентах, то может и сгодится.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Подсчет строк относительно A4

Сообщение drBatty »

QWERTYASDF
мало данных.

1. шрифт разве моноширный? Если нет, задача сильно усложняется, т.к. каждая буква имеет свой вес, и занимает своё число точек.

2. что с переносами? Кто и как их расставляет? Если сам скрипт, то эта задача далеко не тривиальная.

3. что с выравниванием? По левому? По правому? По обоим? Никак?

4. Сколько букв в строке? Сколько строк на листе?



в тривиальном случае можно прогнать всё через этот скрипт, посчитать число строк, и вычислить число страниц. Но это ессно для моноширного шрифта.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux
Контактная информация:

Re: Подсчет строк относительно A4

Сообщение eddy »

1. Сверстать в латехе.
2. Посчитать количество строк.
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
Ответить