![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Народ, как отобразить картинку загруженную в image по горизонтали?
Последний раз редактировалось Admin, Сегодня в 10:32. |
#2
|
||||
|
||||
![]() Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#3
|
||||
|
||||
![]() это не поисковики выходят из моды... это мозг тупит
![]() ![]() ну а вообще вот Код:
// Отражение по горизонтали Function ReflexionH(source: TBitMap): TBitMap; var i, j: Integer; begin Result:=TBitmap.Create; Result.Height:=source.Height; Result.Width:=source.Width; With source do begin for i:=0 to Width do for j:=0 to Height do Result.Canvas.Pixels[i, j]:=Canvas.Pixels[Width-i-1,j]; end; end; // Отражение по вертикали Function ReflexionV(source: TBitMap): TBitMap; var i, j: Integer; begin Result:=TBitmap.Create; Result.Height:=source.Height; Result.Width:=source.Width; With source do begin for i:=0 to width do for j:=0 to Height do Result.Canvas.Pixels[i, j]:=Canvas.Pixels[i,Height-j-1]; end; end; // Отражение и по вертикали и по горизонтали Function ReflexionHV(source: TBitMap): TBitMap; var i, j: Integer; begin Result:=TBitmap.Create; Result.Height:=source.Height; Result.Width:=source.Width; With source do begin for i:=0 to width do for j:=0 to Height do Result.Canvas.Pixels[i, j]:=Canvas.Pixels[Width-i-1,Height-j-1]; end; end; procedure TForm1.Button1Click(Sender: TObject); begin Image1.Picture.Assign(ReflexionHV(Image1.Picture.Bitmap)); end; Последний раз редактировалось Admin, Сегодня в 10:32. |
#4
|
||||
|
||||
![]() Твои решения вполне логичное и "В ЛОБ". Не стоит работать с Pixels долго это. Юзай ScanLine. Решение по "моей" ссылке пошустрее будет.
Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#5
|
||||
|
||||
![]() это то да, но для картинки 30х30 вполне хватает решения "в лоб", тем более пишу не себе а товарищу (студенту первого курса), хватит с него и этого
![]() И кстати, данные решения подходят только для bmp, а как сделать тоже например для jpg,png? неужели переводить в bitmap? Последний раз редактировалось Admin, Сегодня в 10:32. |
#6
|
||||
|
||||
![]() ЖПГ и ПНГ - это форматы сжатия картинки. Все равно в конечном счете надо переворачивать само изображение, которое уже в виде отдельных точек. Так что думаю иначе, кроме как переводить в bitmap, никак.
jmp $ ; Happy End! The Cake Is A Lie. |