|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.02.2014, 18:25 | #1 |
Форумчанин
Регистрация: 06.11.2009
Сообщений: 203
|
При открытии jpg искажается текст
Использую стандартный Имейдж в Rad Studio 2010. Подгружаю джпег на котором есть текст, сделанный в фотошопе, текст почему-то искажается.
Здесь, например, выпадает середина буквы е. Не критично, но неприятно. Быть может кто-то знает, с чем это может быть связано, и как можно исправить?
Интересный проект по изучению английского:
Английский в формате путешествия по США |
17.02.2014, 19:03 | #2 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
Вина скорее всего не в компонентах, а в исходном изображении. Точнее в чрезмерной компрессии.
|
17.02.2014, 19:32 | #3 |
Форумчанин
Регистрация: 06.11.2009
Сообщений: 203
|
файлы сохранялись в максимальном качестве, без сжатия.
Такое впечатление, что текст деформируется в местах, где-то была направляющая линия в фотошопе. Но дело в том, что во всех возможных редакторах фото отображается корректно, а через делфи - искажает. Никогда с подобным не сталкивался
Интересный проект по изучению английского:
Английский в формате путешествия по США |
17.02.2014, 19:35 | #4 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
Тоже не сталкивался. Как вариант, попробуй поиграть с PNG вместо JPG
|
17.02.2014, 20:10 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Может быть, размер имейджа меньше, чем нужно?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
17.02.2014, 20:18 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
|
17.02.2014, 21:06 | #7 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
AutoSize? Сомневаюсь что поможет. При изменении размеров/пропорций невлезающее изображение обрезается, а недостающее место заполняется пустыми пикселями.
|
18.02.2014, 00:50 | #9 |
Форумчанин
Регистрация: 06.11.2009
Сообщений: 203
|
Да, действительно проблема в Стретче. Но почему он портит только буквы? За текстом и вокруг текста лежит фон - он идеально растягивается. А вот именно в буквах выпадают символы.
Может есть варианты, оставляя стретч включенным? Приложение полноэкранное, и 1 картинка рисайзется под большинство вариантов. Как без стретча сделать - не знаю. Просто действительно непонятно, почему фон изображения (со сложными графическими элементами), на который нанесен текст, не страдает. А текст деформируется. Пойду попробую более жирный шрифт
Интересный проект по изучению английского:
Английский в формате путешествия по США Последний раз редактировалось Dennis777; 18.02.2014 в 01:06. |
18.02.2014, 07:30 | #10 |
Форумчанин
Регистрация: 18.10.2010
Сообщений: 419
|
Dennis777, на растровом изображении нет и не может быть текста =)
потому что растр - это просто набор пикселов, а то, что некоторые из них вы видите как текст - это лишь ваше субъективное восприятие. т.е. я это к чему - в данном контексте понятия "текст" не существует. по крайней мере для компа не существует. прога масштабирует изображение, обрабатывая пикселы по определенному алгоритму. при простом алгоритме уменьшения изображения некоторые пикселы тупо выкидываются из растра и все. приведу пример на числах: Допустим у вас есть линейка чисел от 1 до 100. и представим, что вы ее равномерно сжимаете в 10 раз. в полученной сжатой линейке из исходных 100 пикселов останутся только 10. какие? 1й, 10й, 20й ... 90й, 100й пикселы исходной линейки. так же и с изображением, причем тут дело даже не в jpg, поскольку jpg при открытии преобразуется в такой же растр как и bmp, например. попробуйте в тот же Image с теми же условиями загрузить то же изображение, тех же размеров, но из любого другого формата (bmp, png) - результат будет такой же. так что проблема 100% в кривом масштабировании. попробуйте нарисовать вашу картинку напрямую на форму: Form1.Canvas.Draw(10,10, JPG); вот это и будет оригинальное изображение, которое вы загрузили. уверен оно будет без косяков. p.s. и зачем вообще реализовывать текст в виде картинки? так делать имеет смысл только если "текст" выполнен в виде сложнейших дизайнерских изысков а если это просто текст, то почему бы не выводить его с помощью Canvas.TextOut? Последний раз редактировалось xrob; 18.02.2014 в 07:36. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Кракозябры при открытии | MooNDeaR | Windows Forms | 1 | 13.03.2012 18:12 |
Кодировка utf-8 искажается, когда пропускаю через функцию | artemhp | PHP | 2 | 10.11.2010 00:15 |
Скрытие панелей инструментов при открытии и отображение при закрытии документа | Василий. | Microsoft Office Word | 0 | 23.10.2010 00:41 |
При открытии бразера... | sqqa | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 12.08.2009 14:01 |
Проблема при открытии базы при помощи ADO | SlavaSH | БД в Delphi | 21 | 30.06.2009 16:51 |