LINUX.ORG.RU

Масштаб↔DPI в браузерах

 


0

2

Привет!
Интересует, как преобразуется процентный показатель масштаба в браузере в конечный, и как влияет DPI и наоборот.
На примере Винды:

96DPI=100% масштаб

По идее, юзер контролирует масштаб в процентах, и исходя из процентов рассчитывается DPI с помощью округления. Плотность точек только целочисленное значение имеет.

Например, вы установили масштаб 108%. 1.08*96=103.68→104 — конечное значение

Реальное же процентное значение в системе будет 104/96≈1.08(3)

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

И как реализуется взаимодействие между системным и браузерным масштабом?

Например, установлен масштаб 133%, по сути это будет округ(96*1.33)/96=1.3(3)

Чтобы привести масштаб к 100%, надо установить масштаб 1/1.(3)=0.75, т.е. 75%.

Если же браузер берёт целочисленное значение процентов(скорее всего нет), т.е. масштаб 1.33, то для получения 100% масштаба нужен масштаб уже 0,751879699, который задать невозможно, что приведёт к очень мелким, но в ряде случаев критичным искажениям...

Вот, например, для того, чтобы получить логическое разрешение монитора из х1080 → х768, нужно установить масштаб 1080/768=1,40625

Что лучше сделать в браузере для этого значения? Оставить 140? Или установить 141%, который, при переводе в целый DPI и делёный на 96, получит ровно 1,40625?

Практическое применение может не совсем понятное, но вот пример:

Если изображение хотя бы чуть сжимается, оно может сильно пострадать в качестве. При небольшом увеличении это менее вероятно.

Поэтому, если программа считает, что плотность точек 1.33*96=127.68, то масштаб 75% даст плотность 127.68*0.75=95.76 . В итоге изображения будут сжатыми. Если масштаб 134%, то плотность будет либо 128.64, либо 129. При масштабе 75%, плотность будет 96.48 или 96.75(97). Искажения изображений небольшие будут, но это перестраховка. Но если 133% приводит именно к 1.33(3) по сути, то можно смело ставить этот масштаб. Лучше уж небольшие искажения увеличения, чем уменьшения, но если можно вообще от них избавиться, то почему нет?



Последнее исправление: Dreamject (всего исправлений: 4)

По-моему ты не понимаешь суть векторной графики. Она мыслит в пикселах только после всех трансформаций и рисует аппроксимацию с антиалиасингом, а шрифтодвижок может хинтить шрифты на пиксельную сетку, а может и не хинтить, это отдельная тема. Как и для изображений.

Или я не понял вопроса.

anonymous
()
Ответ на: комментарий от anonymous

ОС работает не с процентами, а с DPI, а пользователь в большинстве случаев видит готовое значение.

Если ты установил масштаб 133% средствами ОС, то ДПИ должен быть 1.33*96=127,68 . Но такого не происходит, по крайней мере в ОС, происходит округление, и получается 127,68. По этой причине невозможно установить масштаб 112% и ряд других.

Интересно, что значат браузерные 133% — точно 133%, или они точно также переводятся в точки на дюйм.

Dreamject
() автор топика
Ответ на: комментарий от Dreamject

Есть сайты, которые совсем забивают на DPI. У меня небольшой экран и FullHD. Очень заметно, многие сайты стоят на масштабе отличном от 100%.

ИЧСХ, ЛОР один из тех, который хотя бы видно.

Вообще, в чём вопрос? =)

a1batross ★★★★★
()

Хех, угадал автора по теме

melkor217 ★★★★★
()

угадал автора по названию темы...

q11q11 ★★★★★
()

На примере Винды

заколебал ты со своей вендой, пользуйся на здоровье, но сюда не неси эту грязь

q11q11 ★★★★★
()
Ответ на: комментарий от q11q11

Я не разбирался, как меняется DPI в линуксе, но навряд ли он может быть дробным. А с виндой точно знаю, где что пишется.

Dreamject
() автор топика
Ответ на: комментарий от a1batross

Сайтам плевать на DPI, они работают в логических пикселях, которые зависят от браузера, которые могут зависеть от системы.

Вопрос о том, с чем и как оперирует браузер - с процентами или с плотностью, зависящей от процентов, и как это комбинируется.

Dreamject
() автор топика

Кто срал в твою голову?

anonymous
()
Ответ на: комментарий от Dreamject

они работают в логических пикселях

откуда у тебя трава?

q11q11 ★★★★★
()
Ответ на: комментарий от q11q11

Имею представление, куда оно вышло, и почему практически ничего не значит. Если не начнет уменьшать изображения на несколько пикселей.

Dreamject
() автор топика

Если изображение хотя бы чуть сжимается, оно может сильно пострадать в качестве. При небольшом увеличении это менее вероятно.

ты хочешь печатать картинки сфотканые телефоном с монитора из браузера при 108% увеличении???

q11q11 ★★★★★
()
Ответ на: комментарий от Dreamject

возьми картинку при 100%, сделай скриншот, посчитай её пиксели, поставь 108%, повтори процедуру, подели кол-во пикселей при 108% на кол-во пикселей при 100%, получишь то что хочешь

q11q11 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.