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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2009, 20:18   #1
BloodMaX
Пользователь
 
Регистрация: 27.09.2009
Сообщений: 29
По умолчанию работа с Canvas

как загрузить изображение в canvas анпример из jpg файла и допусттим отрисовать на нем шар, просто когда в Bitmap загружаю программа ругается якобы не моджет отрисовывать на загруженном битмапе, т.е. в канвасе должно быть изображение
BloodMaX вне форума Ответить с цитированием
Старый 21.12.2009, 20:24   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Не нужно стесняться - показывайте, как вы делаете.
Так будет проще отвечать...
mihali4 вне форума Ответить с цитированием
Старый 21.12.2009, 20:25   #3
BloodMaX
Пользователь
 
Регистрация: 27.09.2009
Сообщений: 29
По умолчанию

да вы мне лучше объясните как в канвас загрузить изобрежнние из файла?
BloodMaX вне форума Ответить с цитированием
Старый 21.12.2009, 20:29   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Сообщение от BloodMaX Посмотреть сообщение
да вы мне лучше объясните как в канвас загрузить изобрежнние из файла?
А вы поучитесь формулировать вопросы.
В канву чего?
mihali4 вне форума Ответить с цитированием
Старый 21.12.2009, 20:32   #5
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Сообщение от BloodMaX Посмотреть сообщение
да вы мне лучше объясните как в канвас загрузить изобрежнние из файла?
К вашему огромнейшему разочарованию - это не возможно Приношу свои соболезнования

p.s. если имелось ввиду вывести на Canvas (он же HDC) какое то изображение то возможно TBitmap, TJPEGImage или подобные классы для вашего формата изображения помогут + раз используется TCanvas, то и метод TCanvas.Draw() так же поможет в такой столь сложной ситуации. Где искать ? Эм... ну интернет или сразу F1 в IDE. А еще есть книжные магазины, да именно книжные, там книги продаются, как вариант сходить "туда" и купить книжечку для изучения, чтобы основные момент прояснились.

Edit:
Цитата:
Уважаемый Вован, вы сами себе противоречите, ибо подсказали обходной путь - через Draw...
было сказано
Цитата:
как загрузить изображение в canvas
так что все связи учтены

Последний раз редактировалось BOBAH13; 21.12.2009 в 20:51.
BOBAH13 вне форума Ответить с цитированием
Старый 21.12.2009, 20:39   #6
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Сообщение от BOBAH13 Посмотреть сообщение
К вашему огромнейшему разочарованию - это не возможно Приношу свои соболезнования
Уважаемый Вован, вы сами себе противоречите, ибо подсказали обходной путь - через Draw...
Прямого метода нет, но разве это когда-нибудь смущало программера?
mihali4 вне форума Ответить с цитированием
Старый 21.12.2009, 20:47   #7
Лубышев
Участник клуба
 
Аватар для Лубышев
 
Регистрация: 23.07.2007
Сообщений: 1,054
По умолчанию

Ребят, ну ладно то вам парня мучать:

для того чтобы загнать в canvas jpg его надо преобразовать в bmp:
Код:
uses 
  JPEG; //добавляем модуль для работы с jpg

............
var 
  jpeg: TJPEGImage; 
  bmp:  TBitmap; 
begin 
    jpeg := TJPEGImage.Create; //создаем
    jpeg.CompressionQuality := 100; {Default Value} 
    jpeg.LoadFromFile('файл_формата_JPG.jpg'); //грузим
    bmp := TBitmap.Create; //создаем
    bmp.Assign(jpeg); //ассоциируем
    jpeg.Free; //уничтожаем так как больше не нужен
   //все теперь рисуем че хотим
    bmp.Canvas.Rectangle(0,0,100,100);//например

   bmp.Free;//и после манипуляций удаляем 
end;
Писано по д'Эльфийски
Лубышев вне форума Ответить с цитированием
Старый 21.12.2009, 21:49   #8
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Еще один код:
Код:
uses
 ...,JPEG;

...
var
  Form1: TForm1;
  BufJPG: TJPEGImage;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  BufJPG:= TJPEGImage.Create; // создали объект TJPEGImage
  BufJPG.LoadFromFile('Screen.jpg'); // загрузили в него рис. из файла
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  With Form1.Canvas do
  begin
    Draw(0,0,BufJPG); // выводим Jpeg рисунок на канву формы
    Pen.Color:= clWhite; // цвет пера - белый
    Ellipse(50,50, 200,200); // рисуем круг на канве формы
  end;
end;
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рисование квадрата. Работа на Canvas Файзулка Мультимедиа в Delphi 8 26.02.2010 14:34
Canvas guffer Обсуждение статей 1 21.08.2009 10:19
Рисование квадрата, работа на canvas lubov_morkov Помощь студентам 2 02.06.2009 13:01
работа с CANVAS BuT@JL Помощь студентам 6 30.11.2008 22:18
Canvas Zven Общие вопросы Delphi 9 06.12.2007 10:40