|
|
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Коллеги, приветствую! 1. Сравнил печать на своём принтере из Delphi, из MS Word и Google Docs. Везде получается разная фактическая ширина одной той же фразы (измерял линейкой). В Delphi - 120 мм, в MS Word - 122 мм, в Google Docs - 123 мм. По идее, такого получаться не должно - думаю, все программы должны печатать одними и теми же вызовами GDI. 2. Написал тривиальный пример: Код: pascal 1. 2. 3. 4. 5. 6. 7. 3. Кто разбирается в GDI, объясните, пожалуйста, как такое может получаться? Может, я не так как-то печатаю? И где правда - у меня или в других программах? PS Мой принтер имеет такие параметры: HP LaserJet P3005 UPD PCL 6 DPI: pX=300, pY=300 NonPrintable: pL=50, pT=50, pR=50, pB=50 NonPrintable: mmL=4,23, mmT=4,23, mmR=4,23, mmB=4,23 Printable: pW=3407, pH=2380 Printable: mmW=288,24, mmH=201,35 Page: pW=3507, pH=2480 Page: mmW=296,70, mmH=209,81 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 21:58 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
"fsBold" в разных приложения может значить разное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 21:59 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Word может и через DirectX печатать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 22:06 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Dimitry Timokhov, В тексте можно делать разные интервалы между символами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 22:06 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
rgreat, Без fsBold проверял. Все равно разница. Проверял и для Times. Тоже есть разница, но не такая большая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 22:09 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Dimitry Timokhov, Без Bold тоже тощина линий может быть другая. Это числовой параметр в API. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 22:10 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Dimitry TimokhovМожет, я не так как-то печатаю? Не факт, что ты печатаешь именно то, что печатают другие. У шрифта помимо базовых характеристик есть ещё куча опций. Плюс выравнивание слов. Плюс сам шрифт может отличаться, то есть твой Arial и гугловский - это два разных ариала. Сравнивай не общую ширину, а глифы каждой буквы и расстояния между ними. Бумага попрозрачнее и стол с подсветкой тебе помогут. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2020, 22:11 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Dimitry Timokhov, раньше в книжках об этом писали, все шрифт приводятся к кратным инчам размерам, с округлением в нижнию сторону у принтера разрешение куда больше, чем у монитора, это приводит к увеличению размера при печати у МС была рекомендация, выставлять размер шрифта, пропорционально физическим величинам шрифтов, что собственно Font.Size и делает но потом появились "маковские шрифты" - и пошёл разброд творчества Т.е. если вы ходите печать один-в-один, вам либо готовить битмап и печатать его (у акробата например такая опция есть), что затратно по ресурсам и довольно долго (например, если делать это по сети). Ещё "хвалят" GDI+, он собственно так и делает под капотом. Либо найти\делать свой шрифт, который учтёт вышеописанные рекомендации. кроме того, у принтера может быть свой набор шрифтов и он подобрал совсем не то, что вы указали - вроде как-то это запрещалось с помощью апи(гуглите) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 11:45 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Я бы для начала провел аналогичные эксперименты с PDF-ками, там все встроены все параметры, влияющие на отображение как на экране, так и при печати. Если будет совпадение - проблема исключительно с недостатком word-формата, т.е. какие-то характеристики отданы на откуп программе-обработчику. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 11:54 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
15.01.2020 11:54, Соколинский Борис пишет: > Я бы для начала провел аналогичные эксперименты с PDF-ками, там все встроены все параметры а вот не надо такой категоричности. pdf позволяет задать многие параметры, но отнюдь не обязывает это делать. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 11:57 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий pdf позволяет задать многие параметры, но отнюдь не обязывает это делать. Значит нужно взять pdf-ник где точно задано все. Acrobat-овский, насколько я помню, "правильный". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 12:09 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
По моему опыту FastReport (пишу про него, т.к. им пользуюсь) позволяет печатать весьма точно - не раз приходилось проектировать этикетки для изделий (а потом их печатали регулярно, или я сам печатал например разово), в том числе маленькие, где нужно попадать точно, на разных принтерах. Коллеги то же самое делали из Corel Draw, буквально, какой размер там, такой и на принтере, с точностью до долей миллиметра. Так что я бы предположил, что отличаются размеры текста, выдаваемые самими программами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 13:29 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
s62 с точностью до долей миллиметра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 13:32 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
s62, хотя наверное то, что я написал, очевидно, и тут обсуждали, что именно в прогрмамах дает разницу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 13:37 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
15.01.2020 13:29, s62 пишет: > Так что я бы предположил, что отличаются размеры текста, выдаваемые самими программами. +1 программы посложнее палки-верёвки могут оперировать "a logical font with the specified characteristics". подробности смотреть в мсдн https://docs.microsoft.com/en-us/windows/win32/api/wingdi/nf-wingdi-createfonta Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 13:39 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
0. Нехрена с линейкой лезть! 1. В пособиях по верстке обясняют что в реальности нельзя всё точно расчитать и всегда надо оставлять небольшие зазоры (вот как раз для того чтобы твои +-2мм не влияли на конечный результат) 2. На реальную ширину слова например шрифта Tahoma 12 (не жирный, не курсив) могут влиять (навскидку): режим маппирования DC, задание межсимвольного расстояния, даже значение поля iQuality при его создании, а если данный шрифт не установлен, или в нём нет нужного глифа для символа - то ещё несколько механизмов подстановки шрифта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 15:59 |
|
||
|
Почему при печати из Delphi и из других программ разная ширина одной и той же фразы
|
|||
|---|---|---|---|
|
#18+
Коллеги, благодарю за внимание! 1. Информации много. Еще покопаюсь. 2. Главное, что я понял, что нет у меня неверной работы с печатью. На разницу в поведении влияют многие факторы. Т.е. картина складывается объективная. Можно не париться)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2020, 17:35 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39914003&tid=2038694]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
190ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 267ms |
| total: | 564ms |

| 0 / 0 |
