Вниз
Скачать: CL | DM;

Помогите плизз с картинками !   Найти похожие ветки 

 
Alpine   (2005-04-29 01:09) [0]

У меня есть много картинок и мне надо к ним всем добавить надпись (чтобы надпись не касалась самого рисунка, типа корешок). Как лучше это реализовать ? Сделать картинку с надписью и сводить их или что то вроде TEXTOUT-а делать ? Подскажите плизз .. И если можно примером ...


 
XProger ©   (2005-04-29 17:52) [1]

Нарисуй в фотошопе картинку с тем что тебе надо нарисовать поверх остальных картинок. Затем в проге грузишь эту картинку.

var
bmp : TBitmap;
img : TBitmap;
i   : integer;
begin
bmp := TBitmap.Create;
bmp.LoadFromFile("logo.bmp");
// прозрачный цвет - ярко зелёный (0, 255, 0)
bmp.TransparentColor := clLime;
bmp.Transparent      := true;

Затем циклом пройдись по всем картинкам для которые нуна таким образом "искаверкать".

img := TBitmap.Create;
for i := 0 to ListBox1.Count - 1 do
begin
// Грузим картинку имя которой в листбоксе
img.LoadFromFile(ListBox1.Items[i]);
// рисуем лого на рисунок
img.Canvas.Draw(0, 0, bmp);
// сохраняем наше художество
img.SaveToFile(ListBox1.Items[i]);
end;
img.Free;
bmp.Free;

Ну собсна писал прямо тут, так что гарантии на работоспособность не даю. Но сам принцип должен быть понятен :)


 
Alpine   (2005-04-30 01:38) [2]

Спасибо большое ! Вот тока одна загвоздка ... У меня картинки в JPG формате ... Как быть ??


 
XProger ©   (2005-04-30 01:56) [3]


uses
JPEG;
...
var
jpg : TJPEGImage;
begin
jpg := TJPEGImage.Create;
...
jpg.LoadFromFile(ListBox1.Items[i]);
img.Assign(jpg);
img.Canvas.Draw(0, 0, bmp);
jpg.Assign(img);
jpg.SaveToFile(ListBox1.Items[i]);
...
jpg.Free;
end;


 
Alpine   (2005-04-30 02:41) [4]

Огромное программистическое спасибо !



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.037 c
3-1122529322
cam
2005-07-28 09:42
2005.09.11
Перенос данных


4-1121710921
бывший
2005-07-18 22:22
2005.09.11
Редирект консольного вывода


3-1122557123
tormoz
2005-07-28 17:25
2005.09.11
Скорорость работы с таблицой БД


1-1124560588
SpyBoy
2005-08-20 21:56
2005.09.11
Listbox_&_ProgressBar


1-1124472520
Piter
2005-08-19 21:28
2005.09.11
Функция, вырезающая строку между двумя разделителями




   Наверх