Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2012, 12:19   #1
AdvSent
Пользователь
 
Регистрация: 20.07.2011
Сообщений: 13
По умолчанию сохранение канвы в делфи

Здравствуйте! возникла такая проблема при сохранение изображения в одной из разрабатываемых подсистем. Суть проблемы такой, что не во всех ОС виндовс происходит сохранение изображения.
А именно из данного списка
1. 7601.17514.101119-1850_x64fre_client_ru-ru_Retail_HomeBasic-
2. windows_7_home_premium_with_sp1_x86 _dvd_u_676719
3. windows_7_professional_with_sp1_vl_ build_x86_dvd_u_677853
4. windows_7_professional_with_sp1_x86 _dvd_u_677084
5. windows_7_starter_with_sp1_x86_dvd_ u_678466
6. windows_7_ultimate_with_sp1_x86_dvd _u_677463
7. windows_7_ultimate_with_sp1_x64_dvd _u_677391
8. windows_7_enterprise_with_sp1_x64_d vd_u_677671
9. windows_7_enterprise_with_sp1_x86_d vd_u_677692
10. windows_7_professional_with_sp1_vl_ build_x64_dvd_u_677774
11. windows_7_professional_with_sp1_x64 _dvd_u_677024
12. windows_automated_installation_kit_ for_windows_7_and_windows_server_20 08_r2_sp1_x86_x64_ia64_dvd_619708
13. Win7prof_x86_Optim( пиратская сборка, все остальные являются оригинальными образами)
не сохряняется изображение в сборках виндовса № 4,7,8,9,13(просто белый фон вместо картинки,в других сборках сохраняется корректно).

Необходимая часть кода чтобы понять проблему:

var
BM:tbitmap;
BM2:tbitmap;
myrect:trect;
begin
try
BM:=tbitmap.Create;
BM2:=tbitmap.Create;
if (PageControl1.ActivePageIndex=2) and ((FDlg3DViewPanel.Visible=False) or ((FDlg3DViewPanel.Visible=True) and (FDlg3DViewPanel.Active=False))) then
begin
Image4.Width:=Panel3.Width;
Image4.Height:=Panel3.Height;
myrect:= (Rect(0,0,Panel3.Width,Panel3.Heigh t));
Image4.Canvas.CopyRect(Myrect,PageC ontrol1.Canvas,Rect(4,52,Panel3.Wid th+4,52+Panel3.Height));
Image4.Visible:=True;
bm.Assign(image4.Picture.Graphic);
bm.SaveToFile('C:\\bm.bmp');
bm.free;
image4.Picture:=nil;



PS: также пробывал избавиться от coryrect заменив данную процедуру на

bitblt(image4.Canvas.Handle,0,0,pan el3.Width,panel3.Height,pagecontrol 1.canvas.Handle,0,55,SrcCOpY); , но результат тот же.

В чем может заключаться проблема? может быть какие то другие способы сохранения изображения?
Изображения
Тип файла: jpg bm.jpg (3.0 Кб, 118 просмотров)
Тип файла: jpg bm1.jpg (31.6 Кб, 120 просмотров)
AdvSent вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение изображения из канвы image. koshel Мультимедиа в Delphi 4 08.05.2010 13:31
Сохранение картинки в делфи paravoz1k Помощь студентам 5 12.04.2010 19:04
очистка канвы Juffin Общие вопросы Delphi 1 17.05.2009 14:44
Перерисовка канвы Bayazet Мультимедиа в Delphi 4 09.04.2009 22:14