Про FB2Reader
Goto page 1, 2, 3  Next
 
Libroom Forum IndexPocketBookPocketBook с экраном E-Ink
AuthorMessage

JAW
Член клуба The eBook

Член клуба The eBook



Joined: 27 Sep 2004
Posts: 22894


Location: Северная столица

Posted: 24.06.2009 13:19    

Начну свои ругалки по Subj'у.
1) Слово за которым идёт фиксированный пробел A0h не переносится, т.к. этот символ видимо воспринимается как буква, а не как знак препинания.
2) Меня всегда интересовала в каких попугаях Вы измеряете кегль шрифта.
Пример на одном и том же шрифте BookManCTT Regular.
Измерял по букве П, кегль 24 пт. Междустрочное расстояние 100%

На устройстве
высота буквы П - 8 pt = 2,8 мм.
Междустрочное расстояние - 14 пт. = 4,94 (100= должно быть равным кеглю шрифта).

Что должно быть:

Высота П
16,3 pt = 5,76 мм.
24 pt = 67.9 мм Междустрочное расстояние

1 mm = 2.83 pt = 2.66 пт (pt - Пункт пика, английский пункт, правда немножко подкорректированный. пт. Это пункт Дидо, француский пункт, принятый в нашем наборе).

Русские шрифты (в том числе компьютерные, например Академическая, Литературная, Лазурского) разрабатывались так, что оптимальный интерлиньяж = кеглю шрифта. Русифицированные типа ТаймсНьюРомана и той же литерики предполаги интерлиньяж равный 120% кегля шрифта.
_________________
PocketBook: 301+,602(2.2.1a),701, A7, 701 IQ, A7, U7.
Fly: IQ 235
 
View user's profile ^

alamik
Guest









Posted: 24.06.2009 19:22    

JAW
Проверьте, пожалуйста.
На устройстве, я думаю, размер шрифта задается в пикселях. Должны действовать соотношения:
1 дюйм = 166 пикселей = 72 пункта.
 
^

JAW
Член клуба The eBook

Член клуба The eBook



Joined: 27 Sep 2004
Posts: 22894


Location: Северная столица

Posted: 24.06.2009 21:12    

alamik
Я проверю, но это по любому неправильно.
Я знаю что такое 10 pt и исходя из этого задаю кегль. Получаю полный бред. Кегль не зависит от разрешения.

Кроме того, я не могу объяснить что такое кегль компьютерного шрифта... т.е. я понимаю, но сформулировать не могу. Он очень сильно отличается от классического понимания, когда кегль это была высота головки литеры.

Я подготовил несколько картинок для иллюстрации... Но оставил на работе.

All
Другой момент. Категорически не устраивает подбор кегля шрифта из нескольких предустановок. Мы уже выяснили, что плеёером никто не пользуется, поэтому логично назначить кнопки + и - на изменение кегля шрифта, но не теми пресетами.
Дело в том, что сейчас это для меня наиболее важная подстройка под условия чтения. Нужен шаг 1 пт. но хитро... т.е. когда-то 1, когда-то 2... Примерно как присеты программы вёрстки.
И можно же, например, при нажатой кнопке Ok менять функции клавишь и шаг изменения, нет?
Пусть будет что-то типа Crtl, которая меняет действие клавишь. А, например, двойное нажатие вызывает меню.
_________________
PocketBook: 301+,602(2.2.1a),701, A7, 701 IQ, A7, U7.
Fly: IQ 235
 
View user's profile ^

alamik
Guest









Posted: 24.06.2009 21:33    

JAW wrote:
Я знаю что такое 10 pt

Но откуда Вы знаете, что такое 10 pt? О таком можно говорить только на бумаге.
Размер шрифта, ведь, выставляется в настройках FBReader'a. А это кроссплатформенное приложение. К примеру, разрешение 301 модели - 800х600, и 360 - 800х600. И, строго говоря, программа разницы не видит, ведь оперирует пикселями.
Если для 6" экранов действуют соотношения: 25,4мм = 166 пикселей = 72 пункта.
То для 5" экранов это будут соотношения: 25,4мм = 200 пикселей = 72 пункта.
Программа должна по разному обрабатывать цифры.

А необходимости-то нет. Это в программах компьютерной верстки, где то, что пользователь видит на экране, совсем не соответствует тому, что он распечатает на бумаге, есть необходимость использовать независимую от экрана и настроек отображения величину измерения кегля.
А на устройстве - всё сразу. Что пользователь видит при настройке шрифта - то он и получит при чтении книги. Шаг настройки в 1 пт ни о чём не говорит - это условность для бумаги, зато 1 пиксель - сразу понятно, меньшей разницы между кеглями на экране быть не может.
 
^

lunohod
Член клуба The eBook

Член клуба The eBook



Joined: 10 Jan 2007
Posts: 4283


Location: Stuttgart, Germany

Posted: 24.06.2009 22:09    

JAW

http://pocketbook-free.svn.sourceforge.net/viewvc/pocketbook-free/fbre ader-pocketbook/zlibrary/ui/src/nanox/view/ZLNXPaintContext.cpp?revisi on=32&view=markup

строка 257

Вот документация:
http://www.freetype.org/freetype2/docs/reference/ft2-base_interface.ht ml#FT_Set_Char_Size


Раньше там передавалось 160 dpi(что тоже не очень верно) и сам размер в pt. А теперь выставляется размер в пикселях.

Добавлено спустя 6 минут 35 секунд:

alamik wrote:
JAW wrote:
Я знаю что такое 10 pt

Но откуда Вы знаете, что такое 10 pt? О таком можно говорить только на бумаге.


насколько я понимаю это дело, 10pt будут одинаково выглядеть на бумаге и на любых экранах.

если dpi задан верно, то размер в pt правильно преобразуется в пиксели, которые на разных экранах будут различаться.
_________________
V3, n516, PRS-505, iLiad, eSlick, Samsung E60, K3, K4NT, Onyx M90, PB 912, Kobo Mini
 
View user's profile ^

alamik
Guest









Posted: 24.06.2009 22:23    

Вот это я имел в виду. Использование независимой физической единицы измерения на дискретных экранах не то, что не является необходимым, но и менее практично, чем использование логических единиц, коими являются пиксели.
 
^

JAW
Член клуба The eBook

Член клуба The eBook



Joined: 27 Sep 2004
Posts: 22894


Location: Северная столица

Posted: 24.06.2009 22:24    

alamik wrote:
JAW wrote:
Я знаю что такое 10 pt

Но откуда Вы знаете, что такое 10 pt? О таком можно говорить только на бумаге.

Не правильно. Это метрические размеры. 1 pt = 1/72 американского, или французского дюйма. Какое это имеет отношение к разрешению устройства. На фотовыводе у меня разрешение от 720 dpi до 5080x5080 dpi, на принтере лазерном 600 dpi и 1200 dpi. Высота символа всегда одинакова.

Quote:
Размер шрифта, ведь, выставляется в настройках FBReader'a. А это кроссплатформенное приложение. К примеру, разрешение 301 модели - 800х600, и 360 - 800х600. И, строго говоря, программа разницы не видит, ведь оперирует пикселями.

Растеризатор шрифтов обязан оперировать разрешением устройства.

Условностей нет. Считайте, что вы указываете высоту шрифта в миллиметрах, а не непривычных пунктах... Высота 10 мм. и должна быть 10 мм... Не зависимо от того, какого разрешение экрана.

Posted after 6 minutes 50 seconds:

alamik wrote:
Вот это я имел в виду. Использование независимой физической единицы измерения на дискретных экранах не то, что не является необходимым, но и менее практично, чем использование логических единиц, коими являются пиксели.


Но ПУНКТ то он и в африке ПУНКТ. А не ПИКСЕЛЬ.
От кегля шрифта зависит ОЧЕНЬ многое. Нельзя воспринимать пункт=пиксель. Это ерунда получится. Которая, собственно и получилась.

Posted after 2 minutes 52 seconds:

Естественно есть нюансы... Но пока их оставим.
И рекомендую почитать Адобовскую спецификацию по Type1 шрифтам.
К Мелкомягкой не отсылаю чисто потому, что Адобовская гораздо проще, а в Мелкомягкой сам чёрт ногу сломит, но принципы едины.

И прочитайте что такое, кажется UPS.

Posted after 20 minutes 42 seconds:

А что такое интерлиньяж 100% мне кто нибудь ответит?
У шрифта есть базовая линия. Интерлиньяж измеряется расстояниями между базовыми линиями.

У современных шрифтов высота обычно 1000 единиц.
Подвал, под базовой линией 200 единиц.
Высота прописной с акцентом где-то 700 единиц, всего 900 единиц.
На междустрочник приходится 100 единиц.

Бывают шрифты высотой 1200 юнитов. Это обычно старые советские шрифты. Соответственно междустрочник будет 300 юнитов.
Междустрочный пробел в них уже заложен. И из всего этого нужно исходить.
_________________
PocketBook: 301+,602(2.2.1a),701, A7, 701 IQ, A7, U7.
Fly: IQ 235
 
View user's profile ^

lunohod
Член клуба The eBook

Член клуба The eBook



Joined: 10 Jan 2007
Posts: 4283


Location: Stuttgart, Germany

Posted: 24.06.2009 23:07    

JAW wrote:


А что такое интерлиньяж 100% мне кто нибудь ответит?
У шрифта есть базовая линия. Интерлиньяж измеряется расстояниями между базовыми линиями.




Изначально там было myStringHeight = fCurSize * 160 / 72;

Сейчас - myStringHeight = (fCurSize * 160 / 72) / 2;
_________________
V3, n516, PRS-505, iLiad, eSlick, Samsung E60, K3, K4NT, Onyx M90, PB 912, Kobo Mini
 
View user's profile ^

JAW
Член клуба The eBook

Член клуба The eBook



Joined: 27 Sep 2004
Posts: 22894


Location: Северная столица

Posted: 24.06.2009 23:17    

lunohod
Что такое fCurSize?
Как он считается?

И где это всё делается?

Нужно подумать над формулами и переводом пунктов в пискели.
Оперируем количеством пикселей таки?
_________________
PocketBook: 301+,602(2.2.1a),701, A7, 701 IQ, A7, U7.
Fly: IQ 235
 
View user's profile ^

cremor
Член клуба The eBook

Член клуба The eBook



Joined: 01 Apr 2008
Posts: 1453



Posted: 24.06.2009 23:18    

alamik wrote:
Вот это я имел в виду. Использование независимой физической единицы измерения на дискретных экранах не то, что не является необходимым, но и менее практично, чем использование логических единиц, коими являются пиксели.

Категорически не согласен. Меня, как пользователя, не интересует, сколько точек занимает буква. Мне нужен совершенно определенный ее, буквы, размер. А уж сколько на это нужно точек, пусть компьютер считает, у него это лучше получается, да и свой dpi ему лучше знать.
 
View user's profile ^

lunohod
Член клуба The eBook

Член клуба The eBook



Joined: 10 Jan 2007
Posts: 4283


Location: Stuttgart, Germany

Posted: 24.06.2009 23:47    

JAW wrote:

Нужно подумать над формулами и переводом пунктов в пискели.
Оперируем количеством пикселей таки?


уже давно всё придумали

http://www.freetype.org/freetype2/docs/glyphs/

Добавлено спустя 1 минуту 14 секунд:

JAW wrote:
lunohod
Что такое fCurSize?
Как он считается?

И где это всё делается?


ну ёмаё, я же ссылки дал, там всё видно.
fCurSize - это параметр size в ZLNXPaintContext::setFont()
_________________
V3, n516, PRS-505, iLiad, eSlick, Samsung E60, K3, K4NT, Onyx M90, PB 912, Kobo Mini
 
View user's profile ^

JAW
Член клуба The eBook

Член клуба The eBook



Joined: 27 Sep 2004
Posts: 22894


Location: Северная столица

Posted: 25.06.2009 00:03    

cremor
Об том и спичь. Есть попугаи и есть кегли шрифтов.
Путать не стоит.
lunohod
Да нету там ссылок...
Завтра почитаю спецификацию про FreeType.
_________________
PocketBook: 301+,602(2.2.1a),701, A7, 701 IQ, A7, U7.
Fly: IQ 235
 
View user's profile ^

alamik
Guest









Posted: 25.06.2009 01:12    

lunohod wrote:
насколько я понимаю это дело, 10pt будут одинаково выглядеть на бумаге и на любых экранах
JAW wrote:
Не правильно. Это метрические размеры. 1 pt = 1/72 американского, или французского дюйма
Господа, я это прекрасно осознаю. Даже те же формулы, что и Вы, JAW, приводил.

JAW wrote:
Но ПУНКТ то он и в африке ПУНКТ. А не ПИКСЕЛЬ.
От кегля шрифта зависит ОЧЕНЬ многое. Нельзя воспринимать пункт=пиксель. Это ерунда получится. Которая, собственно и получилась.
cremor wrote:
Меня, как пользователя, не интересует, сколько точек занимает буква. Мне нужен совершенно определенный ее, буквы, размер.
Вот вот этого я понять и не могу. Какая вам разница какого именно физического размера на экране буквы? Если это, в конце концов, будет вас интересовать в каких нибудь прикладных целях, то вы легко сможете посчитать по приведенным выше формулам. Я, конечно, понимаю, что у полиграфистов это уже в крови - мера измерения шрифта. Но она у вас от бумаги. Там неудобно измерять размер шрифта в мм или см - не те числа, не тот шаг. В каплях краски и в ворсинках целлюлозы тоже не померяешь. Поэтому, как и в любой области знаний, прибегли к приемлемой дискретной шкале с единицей в один пункт.

Но тут-то мы имеем дело с экраном. И он уже имеет абсолютно стойкую и удобную единицу - пиксел. Это просто удобно. Я могу увеличить шрифт 25 пикселей на 5 пикселей - и буду знать, что он действительно увеличился на 1/5. Могу увеличить на 1 пиксел - и знать, что он увеличился ровно на 1/25. А ну-ка, увеличьте шрифт на 1 пт. Что там получится? 1пт = 166/72 = 2,3 пикселя. Это как на экране отобразится? А если мне меньше надо? Я угадывать должен, чтоб и не сильно мало, и не сильно много? Допустим, 10,135 пт, или что-то в этом роде. Классное задание шрифта! Ничего не скажешь.

Ведь, действительно, мне как пользователю вообще незачем знать, какого он там реального размера в мм. Меня лишь интересует, чтобы я смог настроить его абсолютно любым, какой только может быть возможен, и какой меня визуально устраивает. То есть, мне не важен его размер в цифрах, а мне важна точная ручка подстройки, так сказать, крутя которую, я смогу добиться того, чего желаю. И пиксели здесь на экранах наиболее удобная единица шкалы измерения шрифта.

P.S. И вообще, как программист программисту: работа с вещественными числами - дело неблагодарное.


Last edited by alamik on 25.06.2009 01:20; edited 3 times in total
 
^

izmail
Член клуба The eBook

Член клуба The eBook



Joined: 18 Mar 2009
Posts: 629


Location: Москва, Россия, Земля, Солнечная система, Млечный путь, Вселенная, Божественный промысел

Posted: 25.06.2009 01:13    

Мне кажется, что требование размера буквы согласно "ГОСТУ" - нужно наверное достаточному количеству людей, раз за это выступают. Но некоторым уверен удобнее рассчитывать из пикселей (а многим вообще все равно), так как разрешение у 320 и у 360 одинаковое, то при установленном размере шрифта, количество символов на экране будет одинаковое, а размер соответсвенно больше и меньше. Это удобно, скажем, для тех кто читает с двух книг. Одинаковый размер шрифта - одинаковая разбивка по страницам.
А вот соответствие размеров "чтобы как на бумаге" ( простите мой непрофесиональный слог - мысль думаю понятна) - пока с отсутствием широких возможностей электронных книг напоминает эстетство. Никого не хочу задевать, но я пока не улавливаю практической пользы данной претензии. Буду рад если мне объяснят)
_________________

лечение "стеклобоя" шаманской терапией
 
View user's profile ^

lunohod
Член клуба The eBook

Член клуба The eBook



Joined: 10 Jan 2007
Posts: 4283


Location: Stuttgart, Germany

Posted: 25.06.2009 01:29    

alamik wrote:

Но тут-то мы имеем дело с экраном. И он уже имеет абсолютно стойкую и удобную единицу - пиксел. Это просто удобно. Я могу увеличить шрифт 25 пикселей на 5 пикселей - и буду знать, что он действительно увеличился на 1/5. Могу увеличить на 1 пиксел - и знать, что он увеличился ровно на 1/25. А ну-ка, увеличьте шрифт на 1 пт. Что там получится? 1пт = 166/72 = 2,3 пикселя. Это как на экране отобразится? А если мне меньше надо? Я угадывать должен, чтоб и не сильно мало, и не сильно много? Допустим, 10,135 пт, или что-то в этом роде. Классное задание шрифта! Ничего не скажешь.

Ведь, действительно, мне как пользователю вообще незачем знать, какого он там реального размера в мм. Меня лишь интересует, чтобы я смог настроить его абсолютно любым, какой только может быть возможен, и какой меня визуально устраивает. То есть, мне не важен его размер в цифрах, а мне важна точная ручка подстройки, так сказать, крутя которую, я смогу добиться того, чего желаю. И пиксели здесь на экранах наиболее удобная единица шкалы измерения шрифта.



Совсем наоборот! Какая мне разница, сколько там пикселей в букве, если я их даже разглядеть не могу? И как в таком случае получить одинаковый шрифт на разных экранах с различными dpi?

Да, может быть попиксельное увеличение и более гибкое в частных случаях, но в общем лучше физический размер.

Вот я у себя в лбуке и в азбуке выставил 10pt и получил одинаковую высоту шрифта, а с пикселами пришлось бы повозиться.
_________________
V3, n516, PRS-505, iLiad, eSlick, Samsung E60, K3, K4NT, Onyx M90, PB 912, Kobo Mini
 
View user's profile ^

alamik
Guest









Posted: 25.06.2009 01:49    

А зачем Вам знать, что она в цифрах одинакова?
Почему Вы на каждом экране отдельно не настроили так, как для глаз наиболее удобно? Возможно, это зависит от разности в белизне и контрасте. Или Ваш глаз к цифрам привязан?

А если это какая-то единичная потребность была, можно было и посчитать по быстрому.
 
^

lunohod
Член клуба The eBook

Член клуба The eBook



Joined: 10 Jan 2007
Posts: 4283


Location: Stuttgart, Germany

Posted: 25.06.2009 02:11    

Я вообще за унификацию. Вот, например, страницы в ебуках. Мне нравится подход в оригинальном FBReader'е, в котором страницы отмеряются не количеством текста на экране, а определённой константой: одна страница - 2048 символов. Это может показаться неудобным, но зато по номеру страницы всегда можно перейти в это же место в независимости от используемого шрифта или физического размера экрана.
_________________
V3, n516, PRS-505, iLiad, eSlick, Samsung E60, K3, K4NT, Onyx M90, PB 912, Kobo Mini
 
View user's profile ^

alamik
Guest









Posted: 25.06.2009 02:17    

Вот, кстати, на двух разных по физическим размерам экранах я смогу сделать одинаковые страницы, если задам шрифт в пикселях, а в пунктах не смогу. Но это очень сомнительное удобство Smile

Ну не вижу я практического применения размера в пунктах на экранах читалок. Sad
Мне такого не хотелось бы.

Добавлено спустя 7 минут 36 секунд:

lunohod wrote:
Мне нравится подход в оригинальном FBReader'е, в котором страницы отмеряются не количеством текста на экране, а определённой константой: одна страница - 2048 символов.
lunohod, Вы знаете, всегда считал такой подход действительно неудобным. Но прочитав:
lunohod wrote:
по номеру страницы всегда можно перейти в это же место в независимости от используемого шрифта или физического размера экрана
Подумал, что было бы хорошо, если бы такая возможность имелась. При синхронизации ("межлюдской" Smile ) - очень практично. Типа: "Знаешь, там такой момент интересный был! Посмотри у себя. Страница 345, четвертый абзац."
Правда, надо, чтобы это в виде опции было.
 
^

Finom1
Член клуба The eBook

Член клуба The eBook



Joined: 08 May 2008
Posts: 1855


Location: Одесса

Posted: 25.06.2009 03:05    

Не понимаю вашего спора Embarassed Ведь уже понятно, что значит pt. Логично теперь просить (требовать) разработчиков сделать так, чтоб пользователь смог задавать размер шрифта в пикселях или впунктах, по желанию.
 
View user's profile ^

WinCalc
Член клуба The eBook

Член клуба The eBook



Joined: 22 Jun 2009
Posts: 636


Location: Челябинск

Posted: 25.06.2009 07:08    

alamik wrote:
насколько я понимаю Ведь, действительно, мне как пользователю вообще незачем знать, какого он там реального размера в мм. Меня лишь интересует, чтобы я смог настроить его абсолютно любым, какой только может быть возможен, и какой меня визуально устраивает. То есть, мне не важен его размер в цифрах, а мне важна точная ручка подстройки, так сказать, крутя которую, я смогу добиться того, чего желаю. И пиксели здесь на экранах наиболее удобная единица шкалы измерения шрифта.

lunohod wrote:
Совсем наоборот! Какая мне разница, сколько там пикселей в букве, если я их даже разглядеть не могу? И как в таком случае получить одинаковый шрифт на разных экранах с различными dpi?

Предлагаю компромисс. Пусть выбор будет в пикселах, а в скобках - получившееся значение в пунктах
 
View user's profile ^
Libroom Forum IndexPocketBookPocketBook с экраном E-InkAll times are GMT + 4 Hours
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© Libroom, 2021