Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
IS
13 / 13 / 2
Регистрация: 01.10.2008
Сообщений: 116

Фон для рисунка

14.02.2009, 14:17. Показов 3794. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать фон для рисунка (bmp или клеточки нарисованные програмным способом), который бы при рисовании на нем не стирался?

Добавлено через 44 минуты 32 секунды
Проблема в том, что надписи выводимые в TImage стирают нарисованный программмно фон. Пока не знаю, что делать.
Перерисовку всего делать не хочу.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.02.2009, 14:17
Ответы с готовыми решениями:

Задний фон из рисунка
Здравствуйте. У меня такая проблема. работаю сейчас над дизайном сайта, и мне надо сделать задний фон из рисунка. Но дело в том, что в...

Фон рисунка в PowerPoint
Помогите решить проблему: При создании презентации на вставленных рисунках убираю фон. Все вроде бы прекрасно, но как только запускаю...

Измерения рисунка как фон формы
Добрый день, решил в БД добавить поздравление при наступлении определенной даты, создал форму, на которой фоном сделап рисунок. Подскажите...

6
0 / 0 / 0
Регистрация: 14.02.2009
Сообщений: 7
14.02.2009, 19:43
По-моему лучше сделать два рисунка, один спереди - рисунок, другой за ним - фон.
Передний рисунок просто затранспарентить и все.
0
IS
13 / 13 / 2
Регистрация: 01.10.2008
Сообщений: 116
14.02.2009, 19:45  [ТС]
Цитата Сообщение от Argon-1 Посмотреть сообщение
По-моему лучше сделать два рисунка, один спереди - рисунок, другой за ним - фон.
Передний рисунок просто затранспарентить и все.
А, что такое затранспарентить?
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
14.02.2009, 19:49
Прозрачным сделать.
0
IS
13 / 13 / 2
Регистрация: 01.10.2008
Сообщений: 116
19.02.2009, 22:15  [ТС]
Не могу понять почему Img заливает белым весь фон, хотя прозрачность стоит = true
C++
1
2
3
4
5
6
7
8
9
10
Img->Transparent = True;
GF->Img->Width= GF->Fon->Width-1;
GF->Img->Height = GF->Fon->Height-1;
 
Len = 5;
Wide = 5;
 
Course = 0;
FirstStart = true;
}
Если убрать
C++
1
2
GF->Img->Width= GF->Fon->Width-1;
GF->Img->Height = GF->Fon->Height-1;
Тогда все нормально.
Как решить эту проблему

Добавлено через 8 часов 10 минут 10 секунд
Актуально и интересно. В чем проблема?

Добавлено через 58 минут 48 секунд
После шананства и танцев с бубнами проблему решил. Почти.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TGF::FormCreate(TObject *Sender)
{
Len = 5;
Wide = 3;
Img->Canvas->Pen->Width = Wide;
 
Fon->AutoSize = true;
Img->Width = Fon->Width+1;
Img->Height = Fon->Height+1;
 
Course = 0;
FirstStart = true;
}
Есть проблема. Img->Width = Fon->Width+1 не работает. Так было 160 так и остается. Не знаю, что и думать.
Другая проблема. Процедура определяет координаты мыши, но не верно.Может быть на пикселей 10 вверх. Есть подозрение, что как-то виноват фон.
C++
1
2
3
4
5
6
7
8
9
void __fastcall TGF::ImgMouseMove(TObject *Sender, TShiftState Shift,
      int x, int y)
{
XM = x;
YM = y;
 
MainF->StatusBar->Panels->Items[0]->Text = "X: "+IntToStr(XM) + " / "+ IntToStr(GF->Img->Width);
MainF->StatusBar->Panels->Items[1]->Text = "Y: "+IntToStr(YM) + " / "+ IntToStr(GF->Img->Height);
}
Как определить какой TImage находиться поверх другого?

Добавлено через 12 часов 19 минут 33 секунды
По прежнему актуально.

Добавлено через 9 часов 17 минут 7 секунд
Разобрался. Что менялся размер надо установить свойство autosize у Img в состоняие false.
Ошибки с координатами - мой "косяк"

Добавлено через 20 минут 19 секунд
Похоже эта прога не оставит меня в покое. Размер Img изменился, но дальше своих первоначальных размеров (160 на 160) рисоватьна холсте (canvas) не хочет - просто часть изображения обрезает. Рефреши и репаинты не помогают. Что делать?
0
 Аватар для KoFeMaH
38 / 24 / 4
Регистрация: 21.02.2009
Сообщений: 249
21.02.2009, 21:58
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
 
// Конструктор
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
    try
    {
        back = new Graphics::TBitmap;
        back->LoadFromFile("sky.bmp");
 
        plane = new Graphics::TBitmap;
        plane->LoadFromFile("plane.bmp");
        plane->Transparent = true;
    }
    catch ( EFOpenError &e) {
        return;
    }
 
    // установить размер формы в соответствии
    // с размером фонового рисунка
    Form1->ClientWidth = back->Width;
    Form1->ClientHeight = back->Height;
 
    // исходное положение объекта
    x =  -30;
    y =  70;
 
    Timer1->Interval = 25;
    Timer1->Enabled = true;
}
 
// Сигнал от таймера
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
  TRect r; // область, в которой находится объект
 
  // стереть объект (восстановить фон)
  r = Rect(x,y,x+plane->Width,y+plane->Height);
  Canvas->CopyRect(r,back->Canvas,r);
 
  x = x + 2;
 
  // нарисовать объект на новом месте
  Canvas->Draw(x,y,plane);
 
  if ( x > Form1->Width + plane->Width + 10)
  {
    x = -20;
  }
}
 
// обработка события Paint
void __fastcall TForm1::FormPaint(TObject *Sender)
{
  if ((! back->Empty) && (!plane->Empty ) ){
    Canvas->Draw(0,0,back);
    Canvas->Draw(x,y,plane);
  }
  else
    Canvas->TextOut(10,10,"Ошибка загрузки битовых образов");
}
1
IS
13 / 13 / 2
Регистрация: 01.10.2008
Сообщений: 116
24.02.2009, 11:18  [ТС]
А, как можно нарисовать прозрачный прямоугольник c прозрачными линиями?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.02.2009, 11:18
Помогаю со студенческими работами здесь

Не отображается прозрачный фон png рисунка в ие 6
Всем привет. Мне нужно вставить png(gif не катит) с прозрачным фоном в html, а у шефа как на зло ие6 и прозрачный фон отображается серым....

Как сделать прозрачный фон у рисунка TImage?
Как у рисунка TImage сделать прозрачный фон либо перекрасить его фон в цвет панели перед рисованием?

Фон окна браузера при просмотре рисунка
Можно ли каким-то образом не настройками браузера, а в самой html-страничке через HTML, CSS, PHP, Java... (тегами, атрибутами, скриптами,...

Как отобразить QImage сложной формы на другом QImage, чтобы фон от 1-го рисунка был прозрачен?
пишу простеньку игрушку в целях осваивания QT. Задача - нарисовать 1 объект QImag поверх другого объекта QImag. Как это сделать ...? ...

Пиксели рисунка закодированы числами в виде матрицы. Выполнить отражение рисунка сверху вниз
Пиксели рисунка закодированы числами (обозначающими цвет)в виде матрицы,содержащей N строк и M столбцов.Выполните отражение рисунка сверху...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru