Из TJPEGImage в TBitmap

Вопрос

Из TJPEGImage в TBitmap

Доброго времени суток!!! Использую класс TJPEGImage для загрузки *.jpg картинок в проект. В последствии картинка, загруженная в объект TJPEGImage передаётся объекту TBitmap следующим образом:

Код C++

1 2

jpeg->LoadFromFile(file); bitmap->Assign(jpeg);

В большинстве случаев это работает, но если загрузить картинку в *.jpg с цветовой палитрой, к примеру Grayscale, проект выдаёт ошибку Access violation.

Как это убрать?

__________________

To the world you are someone, but to someone you are the world.

VtaMC вне форума
Ответить с цитированием

Меню пользователя VtaMC

Посмотреть профиль

05.12.2010, 00:11

MikeSoft

Регистрация: 21.11.2009

Адрес: Украина, Запорожье

Сообщений: 2,486

Рейтинг сообщений: 1,184

Репутация: 2491

По умолчанию

Re: Из TJPEGImage в TBitmap

VtaMC, выложите пожалуйста изображение (в архиве) с которым данный метод вызывает ошибку. Хочется на это взглянуть.

__________________

There Are Only 10 Types of People in the World: Those Who Understand Binary, and Those Who Don't.

MikeSoft вне форума
Ответить с цитированием

05.12.2010, 11:22 [ТС]

VtaMC

Просто Веталь

Регистрация: 11.05.2009

Сообщений: 494

Рейтинг сообщений: 54

Репутация: 54

По умолчанию

Re: Из TJPEGImage в TBitmap

Вот, в Photoshop там дефолтно стоит цветовая палитра Grayspace

Вложения

Тип файла: zip

ny-12.zip (956.7 Кб, 7 просмотров)

__________________

To the world you are someone, but to someone you are the world.

VtaMC вне форума
Ответить с цитированием

Меню пользователя VtaMC

Посмотреть профиль

05.12.2010, 14:52

MikeSoft

Регистрация: 21.11.2009

Адрес: Украина, Запорожье

Сообщений: 2,486

Рейтинг сообщений: 1,184

Репутация: 2491

По умолчанию

Re: Из TJPEGImage в TBitmap

VtaMC, работает и с этим изображением, без проблем:

Код C++

1 2 3 4 5 6 7 8 9

TJPEGImage *jpg = new TJPEGImage(); jpg->LoadFromFile("ny-12.jpg"); Graphics::TBitmap *bmp = new Graphics::TBitmap(); bmp->Assign(jpg); Canvas->StretchDraw(TRect(0,0,650,450),bmp);delete jpg; jpg = NULL;delete bmp; bmp = NULL;

На всякий случай, прикреплю и весь проект, созданный в RAD Studio XE.

Вложения

Тип файла: rar

JPEGtoBMP.rar (1.46 Мб, 6 просмотров)

__________________

There Are Only 10 Types of People in the World: Those Who Understand Binary, and Those Who Don't.

MikeSoft вне форума
Ответить с цитированием

Пользователь сказал cпасибо: