Форум: "Начинающим";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];
ВнизВиртуальный TCanvas и его фоновый цвет... Найти похожие ветки
← →
Ice (2006-02-15 16:50) [0]
procedure TForm1.Button1Click(Sender: TObject);
var VRT : TCanvas;
RCT : TRect;
begin
// Создаю прямоугольник
RCT := Rect(0, 0, 100, 10);
//Создаю виртуальную канву
VRT := TCanvas.Create;
VRT.Handle := CreateCompatibleDC(0);
//устанавливаю фоновый цвет
VRT.Brush.Color := clGray;
//Заполняю прямоугольник этим самым фоновым цветом
VRT.FillRect(RCT);
//Теперь пытаюсь получить цвет из точки внутри этого прямоугольника
//И получаю clBlack, хотя устанавливал VRT.Brush.Color := clGray
//Что я не так делаю ???????????????????????????????????????
self.Color := VRT.Pixels[1,1];
if VRT.Handle <> 0 then DeleteDC(VRT.Handle);
FreeAndNil(VRT);
end;
← →
MBo © (2006-02-15 17:14) [1]После создания compatibleDC в нем полагается выбрать битмап selectObject
← →
Ice (2006-02-15 17:28) [2]Попробовал так...
SelectObject(VRT.Handle, CreateCompatibleBitmap(VRT.Handle, 100, 10));
Получаемый цвет вместо черного стал белым, но в серый никак не хочет превращаться... :)
Можно экзампл одной строкой ? Плиз... :)
← →
MBo © (2006-02-15 19:01) [3]Я смысла в этом действе особо не пойму...
← →
Ice (2006-02-15 19:56) [4]В чем именно ? В виртуальной канве ?
Нужна для преобразования - на рабочей канве есть текст, и когда я хочу этот текст расположить вертикально - получается нехорошо... При попиксельном повороте регионы перекрываются (SetWorldTransform не проходит, он целиком канву крутит... А мне надо только прямоугольник с текстом)... Понадобился некий буфер.
Да и заело, в плане победить... Знания пополнить...
:)
Если CreateCompatibleBitmap - то это, тескать, проба пера по прочтению документации про SelectObject...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c