purebasic.info

PureBasic forum
Текущее время: Вт ноя 19, 2019 2:17 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2
Автор Сообщение
СообщениеДобавлено: Пн май 18, 2015 6:06 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6559
Благодарил (а): 31 раз.
Поблагодарили: 221 раз.
Пункты репутации: 59
Вот мой PDF, кинь свой. Может у меня читалка не читает?
В принципе на выходе не упакованный PDF получается, всю структуру видно, я хоть сравню, что у меня не так?


Вложения:
text_multi.zip [2.44 KiB]
Скачиваний: 200

_________________
read-only ¯\_(ツ)_/¯
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн май 18, 2015 7:11 pm 
Не в сети
профессор

Зарегистрирован: Ср янв 14, 2009 4:12 pm
Сообщений: 2002
Благодарил (а): 12 раз.
Поблагодарили: 101 раз.
Пункты репутации: 43
Твой файл у меня на русском
погляди на мой :)
Я пробовал в трех читалках: PDFMaster, Soda PDF и Суматра PDF, везде кириллица отображается корректно.
Одно НО. Не могу сменить шрифт, ну хотя бы на Arial. По идее должно быть так
Код:
1
2
fontName.s = HPDF_LoadTTFontFromFile (pdf, @"arial.ttf", #HPDF_TRUE)
font       = HPDF_GetFont(*pdf, @fontName, @"CP1251")


Но на HPDF_LoadTTFontFromFile выдает ошибку 4119 "Cannot open a file. (A detailed code is set.)" :x
Вот хорошо скомпанованый хелп к этой библиотеке https://github.com/libharu/libharu/wiki/API:-Document
PS А с какого расширение "PDF" запрещены? :shock:


Вложения:
text_multi.rar [2.29 KiB]
Скачиваний: 252

_________________
Всё должно быть просто, настолько просто, насколько возможно, но не проще. (c) Альберт Эйнштейн
Изображение
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн май 18, 2015 7:14 pm 
Не в сети
профессор

Зарегистрирован: Пн июл 22, 2013 11:00 pm
Сообщений: 914
Благодарил (а): 2 раз.
Поблагодарили: 45 раз.
Пункты репутации: 9
Ввашем также как и в созданном.Foxit Reader :D
Страница №: 1
- А я видела воров, - сказала Нава. - Молчун бил их палкой, а потом
они гнались за нами, но мы убежали, мы очень быстро бежали, прямо через
болото, хорошо, что Колченог показал мне, где тропа, а то нам бы не
убежать. Молчун совсем из сил выбился, пока мы бежали, он совсем плохо
бегает... Молчун, ты не отставай, ты за нами иди!..
Страница №: 2
- Чего, шерсть на носу, касаешься? - прохрипел он, глядя Кандиду в
ноги. - Один вот тоже, шерсть на носу, касался, так его взяли за руки и за
ноги и на дерево закинули, там он до сих пор и висит, а когда его снимут,
так больше, небось, касаться не будет, шерсть на носу...

В оглавлении (CP1251 текст Я ЖЫЛ ЭзЪУ ФХЦЧШЩ)
Страница №: 3(Пусто)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн май 18, 2015 7:44 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6559
Благодарил (а): 31 раз.
Поблагодарили: 221 раз.
Пункты репутации: 59
Оба файла одинаково не рабочие.
Изображение

Тестирую на самой новой WIN8.1 c самыми последними обновлениями и на дефолтном Adobe и на XP SP3.
И главное что оглавление нормальное, а текст не читаем.

_________________
read-only ¯\_(ツ)_/¯


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн май 18, 2015 11:38 pm 
Не в сети
профессор

Зарегистрирован: Ср янв 14, 2009 4:12 pm
Сообщений: 2002
Благодарил (а): 12 раз.
Поблагодарили: 101 раз.
Пункты репутации: 43
win 8.1, штатный просмотрщик

Изображение

PDF Editor 4.5

Изображение

Adobe Reader XI, действительно, текст - кавдратиками :shock:

_________________
Всё должно быть просто, настолько просто, насколько возможно, но не проще. (c) Альберт Эйнштейн
Изображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн июн 29, 2015 4:22 pm 
Не в сети
профессор

Зарегистрирован: Вт мар 24, 2009 11:54 am
Сообщений: 357
Благодарил (а): 15 раз.
Поблагодарили: 18 раз.
Пункты репутации: 19
Либу не тестил.
Но спрошу сразу: какие типы изображений потдерживает?
PurePDF не все картинки адекватно засовываются в документ.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн июн 29, 2015 8:06 pm 
Не в сети
профессор

Зарегистрирован: Ср янв 14, 2009 4:12 pm
Сообщений: 2002
Благодарил (а): 12 раз.
Поблагодарили: 101 раз.
Пункты репутации: 43
cherri123 писал(а):
Либу не тестил.
Но спрошу сразу: какие типы изображений потдерживает?
PurePDF не все картинки адекватно засовываются в документ.

Судя по докам Png и Jpeg

_________________
Всё должно быть просто, настолько просто, насколько возможно, но не проще. (c) Альберт Эйнштейн
Изображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 14, 2019 12:39 pm 
Не в сети
доцент

Зарегистрирован: Чт июн 23, 2016 8:15 pm
Сообщений: 34
Благодарил (а): 0 раз.
Поблагодарили: 4 раз.
Пункты репутации: 0
Подниму тему.

Почему-то не получается вызвать функцию HPDF_Page_CreateTextAnnot, ругается на HPDF_INVALID_ENCODER. В описании функции сказано, что если encoder указан Null, то используется PDFDocEncoding. Но такой вариант не работает. Получаем дескриптор функцией HPDF_GetEncoder (возвращается ненулевой дескриптор), скармливаем его HPDF_Page_CreateTextAnnot, но все равно возвращается ошибка 1027. Проверка типа дескриптора функцией HPDF_Encoder_GetType возвращает 0 (однобайтовый, в случае некорректного дескриптора вернулся бы код 3).

Пробовал на комплекте с Github Progi1984 (работают все примеры кроме примеров с указанной функцией) и от pablov с предыдущей страницы этой темы, даже подсовывал другую версию dll - результаты одинаковы. Что этой собаке надо? Кто-нибудь сталкивался?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 15, 2019 11:44 am 
Не в сети
профессор

Зарегистрирован: Пн июл 22, 2013 11:00 pm
Сообщений: 914
Благодарил (а): 2 раз.
Поблагодарили: 45 раз.
Пункты репутации: 9
puric писал(а):
Подниму тему.

Почему-то не получается вызвать функцию HPDF_Page_CreateTextAnnot, ругается на HPDF_INVALID_ENCODER. В описании функции сказано, что если encoder указан Null, то используется PDFDocEncoding. Но такой вариант не работает. Получаем дескриптор функцией HPDF_GetEncoder (возвращается ненулевой дескриптор), скармливаем его HPDF_Page_CreateTextAnnot, но все равно возвращается ошибка 1027. Проверка типа дескриптора функцией HPDF_Encoder_GetType возвращает 0 (однобайтовый, в случае некорректного дескриптора вернулся бы код 3).

Пробовал на комплекте с Github Progi1984 (работают все примеры кроме примеров с указанной функцией) и от pablov с предыдущей страницы этой темы, даже подсовывал другую версию dll - результаты одинаковы. Что этой собаке надо? Кто-нибудь сталкивался?

Если этот дискриптор на документ работает с другой функцией то скорее не он виноват?
Prototype Proto_Page_CreateTextAnnot(page, *rect.RECT, *text, encoder)
Global HPDF_Page_CreateTextAnnot.Proto_Page_CreateTextAnnot = GetFunction(0, "HPDF_Page_CreateTextAnnot")
Я так понемаю эта функция вставки текста(с определённой кодировкой) в прямоугольник с координатами в структуре RECT. :roll:
PS:Может ошибка в аргументах?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 15, 2019 12:23 pm 
Не в сети
доцент

Зарегистрирован: Чт июн 23, 2016 8:15 pm
Сообщений: 34
Благодарил (а): 0 раз.
Поблагодарили: 4 раз.
Пункты репутации: 0
Сергейчик писал(а):
Prototype Proto_Page_CreateTextAnnot(page, *rect.RECT, *text, encoder)
Global HPDF_Page_CreateTextAnnot.Proto_Page_CreateTextAnnot = GetFunction(0, "HPDF_Page_CreateTextAnnot")
Я так понемаю эта функция вставки текста(с определённой кодировкой) в прямоугольник с координатами в структуре RECT. :roll:
PS:Может ошибка в аргументах?

Да я уже всю бошку сломал. Мне оно не нужно, в сущности, но зацепило. От отчаяния даже пересобрал dll из последних исходников. Не помогло вообще никак. ))

Кстати, у вас функция описана для ASCII-режима, на современных версиях текстовый аргумент следует передавать как ASCII("...") или переписать объявление аргумента с *text на text.p-ascii, тогда пурик сам все сделает как надо. Под старой версией в режиме ASCII примеры тоже, кстати, компилировал. Тоже не помогло. Или откатиться на еще более древнюю?

Функция HPDF_CreateOutline работает (HPDF_CreateOutline.l(*pdf.HPDF_Doc, *parent.HPDF_Outline, title.p-ascii, *encoder.HPDF_Encoder) As "HPDF_CreateOutline") и с явным указание энкодера (HPDF_GetEncoder (pdf, "CP1251")) и с #Null. HPDF_Page_CreateTextAnnot.l(*page.HPDF_Page, *rect.HPDF_Rect, text.p-ascii, *encoder.HPDF_Encoder) As "HPDF_Page_CreateTextAnnot" - не работает с любым последним аргументом.

Также не хочет работать HPDF_Page_CreateLinkAnnot.l(*page.HPDF_Page, *rect.HPDF_Rect, *dst.HPDF_Destination) As "HPDF_Page_CreateLinkAnnot" - ругается на последний аргумент, хотя HPDF_Outline_SetDestination.HPDF__STATUS(*outline.HPDF_Outline, *dst.HPDF_Destination) As "HPDF_Outline_SetDestination" - работает с точно таким же dst. rect вне подозрений, потому что его же нормально кушает HPDF_Page_CreateURILinkAnnot.l(*page.HPDF_Page,*rect.HPDF_Rect, uri.p-ascii) As "HPDF_Page_CreateURILinkAnnot"

Смущают две вещи: 1. Не работают два примера из 15, автор же наверняка их компилировал и ошибок у него не возникало, а это фатальные ошибки, результирующий pdf не создается. 2. Обе функции относятся к HPDF_Page, а не HPDF_ - может, и совпадение, но...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 15, 2019 12:42 pm 
Не в сети
доцент

Зарегистрирован: Чт июн 23, 2016 8:15 pm
Сообщений: 34
Благодарил (а): 0 раз.
Поблагодарили: 4 раз.
Пункты репутации: 0
Нет, попробовал версию 4.61 (автор работал с 4.40). Те же самые ошибки.

Описаны функции одинаково, соответствуют описаниям в wiki библиотеки. Неужели придется лезть в исходники...


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB