![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Delvish |
|
|||
![]() oO ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 13.12.2006 Репутация: 1 Всего: 4 |
Добрый день!
Тема ранее несколько раз поднималась, но с тех пор прошло много времени, да и Гугл мне толком не помог. Итак, вопрос: есть ли VCL-компонент или хотя бы библиотека (с мануалом/описанием) для чтения PDF-файлов без использования ActiveX? Требуется всего лишь уметь отправлять PDF-документы на печать, не выводя их на экран, не внося никаких изменений. Только печать на принтер по умолчанию и ничего более. |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
PDF формат лицензированный и как следствие "нормально" с ним работают только решения от разработчиков купивших SDK.
Коммерческие пакеты компонентов есть и их можно купить. Для тех кто не хочет покупать но функционал такой нужен есть скомпилированные COM+ библиотеки, которые Вы так пренебрежительно назвали "ActiveX". Их тоже несколько... мне известно как минимум две: родная Adobe и Foxit. Так что алгоритм такой: если религия позволяет, то используем ActiveX иначе если есть возможность покупаем готовый пакет иначе качаем SDK и строим 101 велосипед; если результат не достигнут, пересматриваем религиозные убеждения. Как то так -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| b8195108 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 17.7.2011 Репутация: 2 Всего: 2 |
Для печати используй ShellExecute (при наличии на машине пользователя софта для работы с pdf)
|
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
это открытый формат, есть международный стандарт ISO 32000-1:2008, неофициальный текст доступен бесплатно
в windows вывод на экран и печать это одно и то же если нужно любое средство, можно пользоваться , озаботившись, что бы был установлен умеющий это делать софт. если нужно работать с файлом напрямую, есть куча коммерческих и бесплатных библиотек. конечно есть и vcl. |
|||
|
||||
| Delvish |
|
|||
![]() oO ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 13.12.2006 Репутация: 1 Всего: 4 |
В том-то и дело, что хочется быть избавленным от привязки к установленному ПО типа Adobe Reader и иже с ним. А за ссылочку спасибо, на Вики я что-то не догадался заглянуть.
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
Это собственность Adobe. Или наличие текста ГОСТ как то передает Вам права на него? Тем более это стандарт на конкретную версию (1.7), и нет никаких гарантий, что он подойдет к другой (1.7.1). Ну а если захочется реализовать его в коде... то думаю покупка SDK будет на три порядка дешевле... Бесплатные как правило поддерживают только доисторические версии. Платные тоже не блещут, так как основной задачей есть "сохранить в PDF" а для этого и версия 1.3 подойдет. Delvish, на самом деле Вам надо только одна Dll. Ее то и надо таскать. Находится она просто... в списке установленных TypeLib... копируете... регистрируете на целевом компьютере... и все... весил она около 10 мегов вроде... лицензия на нее такая же как и на adobe reader, следовательно можно использовать смело. К стати сам риадер именно ее и использует. Добавлено через 7 минут и 3 секунды Решать вам, но когда через пол года Ваша программа перестанет читать каждый второй файл, а использованная Вами библиотека не развивается... то вопрос вернется в исходное состояние. Так что лучше решать с перспективой, а не использовать "кирпичи бывшие в употреблении"... -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
это дает мне право им пользоваться. и вам, и кому угодно. это суть открытого стандарта. как вы думаете, почему до стандартизации версии выходили каждые год-два, а теперь уже 8 лет не меняется. так что я не слишком опасаюсь 1.7.1 |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
пользуйтесь... но прав у Вас от этого не прибавится... когда переведете его в SDK сможете конкурировать с Foxit, можете гордиться тем что имеете документ. Как то не понятно чем вы так гордитесь? Может тем что Вам понадобится 5 лет для создания полноценного SDK? или тем, что Вы этого просто не понимаете и советуете другим удариться в эту авантюру? -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
здесь я ничего не советовал. я ответил на заданный ТС вопрос и указал на ошибку намеренную неточность несоответствие действительности в вашем ответе. холиварить не стану.
|
|||
|
||||
| Delvish |
|
|||
![]() oO ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 13.12.2006 Репутация: 1 Всего: 4 |
к сожалению, именно это я и обнаружил, прежде чем создать тему. надеялся, что ошибся... это ж какая именно? речь о AcroPDF.dll из набора Adobe Reader'а? требует установленного вышеозвученного адобовского продукта. а так - да, мне отлично подойдет либа (с описанием), умеющая понимать пдф формат. имелось ввиду, что мне не нужна визуальная компонента для отрисовки ПДФа на форме. главное - скормить принтеру данные ) кстати, в наборе того же Гугл Хрома есть библиотека pdf.dll, возможно ли как-то ее использовать? описания тоже нигде не нашел. |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
есть там пара полезных функций
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
вижу два варианта проверок: 1. попробовать ее зарегистрировать как com+, если получается, то останется только подсунуть правильные параметры в com объект 2. Пойти на сайт Rouse и взять там утилиту для просмотра экспортируемых функций. Соответственно проверить соответствует набор экспорта dll плагину (или адону) хрома. она проверяет несколько ключей реестра, их можно устанавливать простейший вариант RegKeyExists(HKLM, 'Software\Adobe\Acrobat Reader') а так берете Process Monitor от Русиновича и смотрите что она там проверяет -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| PointerToNil |
|
|||
![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 17.6.2013 Репутация: 3 Всего: 6 |
pdf.dll из Хрома вполне работает, я пробовал. описание функций baldina привел, только пробелы внутри кавычек какие-то странные.
остается добавить, что 1) её авторы - foxit 2) гугл открыл её исходники: https://code.google.com/p/pdfium/ http://www.itproportal.com/2014/06/19/goog...urce-community/ http://www.infoq.com/news/2014/06/google-c...pdf-engine-free Это сообщение отредактировал(а) PointerToNil - 6.8.2014, 12:58 |
|||
|
||||
| Delvish |
|
|||
![]() oO ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 13.12.2006 Репутация: 1 Всего: 4 |
Да, через TDUMP смотрел, несколько экспортируемых функций есть, в т.ч. озвученные baldina
Всем спасибо за ответы и ссылки! Думаю, Гугло-Фокситовская библиотека - как раз то, что нужно |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |