图形填充问题 ( 积分: 50 )

  • 主题发起人 主题发起人 CADVector
  • 开始时间 开始时间
C

CADVector

Unregistered / Unconfirmed
GUEST, unregistred user!
在食量图形系统中怎么实现图形填充???
 
在食量图形系统中怎么实现图形填充???
 
象AUTOCAD中的填充效果差不多的,不知道是怎么实现的
 
[^]填充方法和像素图像一致!
 
设置Brush的形式不行吗?TBrushStyle
 
有谁能回答
 
我想问一下关于创建字体的情况:
function CreateFontIndirect(var LogFont: TLogFont): HFont;

举例:

写字串:ss, 宽:ww, 高:hh, 角度:dd, 坐标:(xt, yt)

var lfont: TLogFont;

ang := dd * PI / 1800;
with lfont do begin
lfHeight := hh;
lfWidth := ww;
lfEscapement := dd;
lfWeight := pFont.FontWeight;
lfItalic := 0;
lfUnderline := 0;
lfStrikeOut := 0;
lfCharSet := 1;
lfOutPrecision := OUT_TT_PRECIS;
lfClipPrecision:= CLIP_DEFAULT_PRECIS;
lfQuality := PROOF_QUALITY;
lfPitchAndFamily := DEFAULT_PITCH;
StrPCopy(lfFaceName, pFont.FontName);
end;
ft:=Font.handle;
deleteobject(ft);///不用删除,为什么????/
Font.handle := CreateFontIndirect(lFont);
oldFont1 := SelectObject(Canvas.Handle, Font.handle);
TextOut(Canvas.Handle, xt, yt, ss, length(str));
DeleteObject(SelectObject(Canvas.Handle, oldFont1));

为什么不用删除Font.handle的老字体
 
请高手回答阿,如何做图案填充
 
顶一下,我也好想知道呀,有一个软件,它用到了一种怪怪的字体,也就是说每输入一个字,它的形状都与正规的字体都不一样,看起来有点扁扁的样子.这种字体样式是怎么加进去的呢.
 
我最近有点穷,现在到有一套比较完善的矢量图形系统的例子,不过是vc++做的,这些功能都有,当然包括图形填充,线条填充等等,类似visio,有偿转让源代码,愿意可以联系,不愿意别骂我。交流也可以。
可以联系,肯定物有所值,不是用什么图形控件,全部低层开发,尤其很多图形学的算法。
email:btdjw@yahoo.com.cn,qq:308215257
 
这是一个选择填充方式的Combobox的DrawItem方法,看看对你有没有帮助
procedure FillComboBoxDrawItem(Control: TWinControl;
Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
with (Control as TComboBox) do
begin
Canvas.FillRect(Rect);
case index of
0:
begin
Canvas.Brush.Style := bsClear;
end;
1:
begin
Canvas.Brush.Style := bsSolid;
end;
2:
begin
Canvas.Brush.Style := bsHorizontal;
end;
3:
begin
Canvas.Brush.Style := bsVertical;
end;
4:
begin
Canvas.Brush.Style := bsFDiagonal;
end;
5:
begin
Canvas.Brush.Style := bsDiagCross;
end;
end;
Canvas.Brush.Color := clBlack;
Canvas.Pen.Color := clBlack;
Canvas.Rectangle(Rect.Left,Rect.Top + 1,
Rect.Right, Rect.Bottom - 1);
end;
end;
 
后退
顶部