
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.121] |
![]() |
|
Сообщ.
#1
,
|
|
|
Исходная задача: Дана папка с кучей PDF-ок. Прога должна считать количество файлов и количество страниц в них. Как решить данную задачу? Если есть у кого-нибудь примерный алгоритм и/или исходники, буду премного благодарен. Заранее спасибо!
З.Ы. Решения на других языках тоже приветствуются! |
Сообщ.
#2
,
|
|
|
M@ster :-) я бы делал таким образом:
импортировал элементы управления Acrobat AxtiveX таким образом: 1. Component -> Import ActiveX Control 2. Acrobat Control for ActiveX и нажать install 3. выбрать пакет ActiveX control для инсталяции 4. добавил PDFlib_tlb в проект (файл находится в директории Borland\Delphi(x)\Imports) а после использовал бы импортированные компоненты для работы с pdf-данными ... |
Сообщ.
#3
,
|
|
|
andrew.virus, компонент отличный, но, к сожалению, там нету метода определения количества страниц, метода определения текущей страницы, а переход на страницы реализован в виде процедуры, так что пока я не приблизился к решению проблемы. Что ещё можно попробовать?
|
Сообщ.
#4
,
|
|
|
Компонент понятно что хороший, от производителя
![]() Вот только если посмотреть файл и почитать его построчно, то во второй строке количество страниц написано. readln спокойно должен прочитать. Первая строка - сигнатура, вторая - читаешь и смотришь параметр N <pagecount>. Для уточнения и остального стоит посмотреть стандарт pdf |
Сообщ.
#5
,
|
|
|
Romkin, если бы все было так просто... Данный параметр /N <pagecount> есть только в таких документах, которые имеют параметр Linearized. А данный параметр встречается не во всех документах, и что самое неприятное, он почти не встречается в сканированных документах, которые будут составлять большинство файлов в этой папке.
Кроме того, за количество страниц отвечает параметр /Page Count. Однако для некоторых документов их может быть несколько, причем некоторые с отрицательным значением. Пробовал считать кол-во элементов типа /page, которые означают новую страницу в документе, но недавно нашел такой документ, который имеет таких элементов 330, а страниц - 168. Ещё варианты решения проблемы есть? Может, не там копаю? |
Сообщ.
#6
,
|
|
|
Хех. Все как обычно
![]() Посмотри стандарт pdf, он с недавнего времени открыт. Посмотри на sourceforge, там куча библиотек для работы с pdf, правда все больше на java |