![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
У меня на форме есть контрол PictureBox в него я загружаю картинку которая лежит на диске.
Сам PictureBox имеет размеры 150х150, а сама картинка очень большая 4mb. Из-за большова размера загрузка тормозит. написал код, при загрузке картинка уменьшается до нужного размера и занимает мало памяти:
Сейчас нормально картинка обрезается, и занимает мало памяти (на форме у меня много таких картинок), НО загрузка всеравно долгая! Есть ли простой способ реализовать загрузку картинки. |
|||
|
||||
| explorer |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 104 Регистрация: 26.2.2008 Репутация: 1 Всего: 2 |
Загрузка долгая, потому что все еще обрабатывается большая картинка (перед тем, как она будет уменьшена). Можно попробовать отдельный поток на загрузку картинки. Будет работать быстрее, но потребует затрат сил и времени на организацию многопоточности.
Если картинки все время загружаются одни и те же, то имеет смысл их импортировать в ресурсы, предварительно уменьшив с помощью любого редактора до нужного размера. --------------------
|
|||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
Картинки и так загружаю в отдельном потоке, не в этом дело.
Вот если открыть простую папку и в ней сделать вид "Эскизы страниц", то картинки в этой папке грузятся намного быстрее. Я вот хочу организовать подобное на своей форме. |
|||
|
||||
| nmn |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 593 Регистрация: 26.11.2005 Репутация: 1 Всего: 1 |
Эскизы хранятся в Thumbs.db |
|||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
А как можно прочитать Thumbs.db?
|
|||
|
||||
| nmn |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 593 Регистрация: 26.11.2005 Репутация: 1 Всего: 1 |
||||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
Ну а всетаки можно как нибудь быстрее картинки загружить не из Thumbs.db?
Может есть специальные библиотеки для этого? |
|||
|
||||
| nmn |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 593 Регистрация: 26.11.2005 Репутация: 1 Всего: 1 |
заранее загружать, а потом просто показывать, ACDSee тоже не мгновенно загружает |
|||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
Дело в том что в ACDSee загружаются картинки гораздо быстрее чем у меня!
Хочу так же быстро! |
|||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
никто не знает? очень надо.
|
|||
|
||||
| Zakonnic |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 25.4.2006 Репутация: 2 Всего: 6 |
Расставьте брекпоинты и выделите самый долгоиграющий кусок. Запостите его сюда.
Если в ACDSee картинка загружается быстро, значит она не такая уж большая. --------------------
...и никогда не пишите в комментариях правду |
|||
|
||||
| nmn |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 593 Регистрация: 26.11.2005 Репутация: 1 Всего: 1 |
лучше профайлером, в 2005 студии был встроенный |
|||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
Потестировал на время
загружал последовательно 10 рисунков по 4 мб. на метод new Bitmap(filename) - 6 сек. на ConvertImage2(Bitmap inBmp) - 4 сек. итого получается 10 сек. меня интересует как можно загружать быстро картики (new Bitmap(filename)) ? |
|||
|
||||
| Zakonnic |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 25.4.2006 Репутация: 2 Всего: 6 |
Попробуй что-то вроде этого, должно быть чуть быстрее:
--------------------
...и никогда не пишите в комментариях правду |
|||
|
||||
| andrey_pro |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 21.9.2007 Репутация: нет Всего: нет |
попробывал! просто супер быстро загружает картинки! теперь бы еще сепер быстро сжать до нужного размера. делаю через метод ConvertImage2(Bitmap inBmp) но он занимет 4 сек для 10 картинок. Это очень много, как можно быстрее??? |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |