怎样实现canvas上可编辑的文字 (53分)

  • 主题发起人 主题发起人 locka
  • 开始时间 开始时间
L

locka

Unregistered / Unconfirmed
GUEST, unregistred user!
如何象实现在canvas上写的文字,可以编辑
 
能不能说详细一点
 
原理不复杂,但实现起来比较麻烦。根据用户的输入画出文字内容,并正确定位光标。实际
上就是自己写了一个简单的edit。
 
这样你看看行不行。

1、建产一个Edit控件,隐藏。
2、鼠标点击Canvas时,获取位置。
3、保存Canvas至临时空间,将Edit在相应的位置上显示出来。
3、确定Edit内容后,保存Edit.text至临时变量。
4、重画Canvas,在相应的位置TextOut(临时变量)。
 
那已经画出在canvas上的文字,怎样再次编辑呢,我点击canvas上的文字位置,
又怎样才能知道它到底是什么内容?难道每一处个文字都对应着一个自己写的edit,
偶的理解能力差,还望高手指点
 
你可以自己记录一下:)
 
老大,偶的理解能力差,你刚收了1000分,就给俺说详细点,是记录文字的坐标,还是
其它什么的
 
做个透明EDIT。
 
[:)],在文本编辑框(Edit)中输入文本信息:
TextOut(StrToInt(EditX.Text),StrToInt(EditY.Text),EditText.Text);
EditX/EditY 为欲输入文本的坐标。
 
同意sem_bob的说法。
补充一下,你学要算出字体的高度,和字体的长度,然后的到textout的宽和高
这样就可以判断出鼠标点击是否在其范围内了
 
多人接受答案了。
 
后退
顶部