Componente do tipo RichEdit, mais inovador ???
Olá pessoal estou a procura de algum componente em Delphi 5, 6 ou 7 que tenha suporte HTML, de forma que possa digitar textos dinamicamente, utilizando assim botões para formatação generalizados.
Agradeço que me ajudar!!!
Agradeço que me ajudar!!!
Faelcavalcanti
Curtidas 0
Respostas
Bon Jovi
13/10/2004
Vc quer um editor RichEdit q exporte pra HTML ou um editor HTML puro?
GOSTEI 0
Faelcavalcanti
13/10/2004
Na verdade estou buscando um componente se é que existe, que já possua barras de ferramentas de formatação, cor, etc.,
Daí também gostaria de extrair todo o conteúdo digitado e exportar para HTML, ou que fosse da mesma forma como o editor de digitação de texto da Hotmail. Alguém sabe essa, ou pelo menos poderia me dar uma força!
:roll:
Daí também gostaria de extrair todo o conteúdo digitado e exportar para HTML, ou que fosse da mesma forma como o editor de digitação de texto da Hotmail. Alguém sabe essa, ou pelo menos poderia me dar uma força!
:roll:
GOSTEI 0
Nildo
13/10/2004
Você pode usar o próprio richedit. Coloque uns botões pra você testar.
No evento OnClick de um botão você coloca assim:
RichEdit1.SelAttributes.Color := clRed;
dai você vai pro richedit e começa a digitar. Td q vc digitar a partir dali vai ficar vermelho. Essa regra atribue também se você tem um texto selecionado e executar esse comando, sómente o texto selecionado fica em vermelho.
No evento OnClick de um botão você coloca assim:
RichEdit1.SelAttributes.Color := clRed;
dai você vai pro richedit e começa a digitar. Td q vc digitar a partir dali vai ficar vermelho. Essa regra atribue também se você tem um texto selecionado e executar esse comando, sómente o texto selecionado fica em vermelho.
GOSTEI 0
Faelcavalcanti
13/10/2004
O Problema é que terei que formatar o richedit em formato HTML, mas isso deverei fazer quando enviá-lo, mas como poderei indexá-lo junto ao Componente TIdMessage via SMTP, pois queria enviar em formato HTML e gostaria de gerar as TAGS já formatadas de acordo com as fontes, etc.
Utilizei o seguinte procedimento para formatá-lo :
Em seguida efetuo os seguintes procedimentos :
O Problema é que terei que fazê-lo após toda a digitação, pois após efetuar estes procedimentos ele não deixa eu impor cores, e/ou qualquer coisa que seja relativo a formatação de texto
Como posso então gerar um arquivo HTML, com um texto já pronto.
Talvez eu terei que montar na mão, sei lá usar a TAG <DIV>.
Me Ajudem!!!
Utilizei o seguinte procedimento para formatá-lo :
DopCol: TColor);
var
i, iDop: Integer;
s: string;
Col: TColor;
isTag, isDop: Boolean;
begin
iDop := 0;
isDop := False;
isTag := False;
Col := TextCol;
RichEdit.SetFocus;
for i := 0 to Length(RichEdit.Text) do
begin
RichEdit.SelStart := i;
RichEdit.SelLength := 1;
s := RichEdit.SelText;
if (s = ´<´) or (s = ´{´) then
isTag := True;
if isTag then
if (s = ´"´) then
if not isDop then
begin
iDop := 1;
isDop := True;
end
else
isDop := False;
if isTag then
if isDop then
begin
if iDop <> 1 then Col := DopCol;
end
else
Col := TagCol
else
Col := TextCol;
RichEdit.SelAttributes.Color := Col;
iDop := 0;
if (s = ´>´) or (s = ´}´) then
isTag := False;
end;
RichEdit.SelLength := 0;
end;
Em seguida efetuo os seguintes procedimentos :
RichEdit1.Lines.BeginUpdate; HTMLSyntax(RichEdit1, clBlue, clRed, clGreen); RichEdit1.Lines.EndUpdate;
O Problema é que terei que fazê-lo após toda a digitação, pois após efetuar estes procedimentos ele não deixa eu impor cores, e/ou qualquer coisa que seja relativo a formatação de texto
Como posso então gerar um arquivo HTML, com um texto já pronto.
Talvez eu terei que montar na mão, sei lá usar a TAG <DIV>.
Me Ajudem!!!
GOSTEI 0
Faelcavalcanti
13/10/2004
Erro meu o código completo abaixo, ficou faltando um pedacinho :lol:
procedure HTMLSyntax(RichEdit: TRichEdit; TextCol, TagCol, DopCol: TColor);
var
i, iDop: Integer;
s: string;
Col: TColor;
isTag, isDop: Boolean;
begin
iDop := 0;
isDop := False;
isTag := False;
Col := TextCol;
RichEdit.SetFocus;
for i := 0 to Length(RichEdit.Text) do
begin
RichEdit.SelStart := i;
RichEdit.SelLength := 1;
s := RichEdit.SelText;
if (s = ´<´) or (s = ´{´) then
isTag := True;
if isTag then
if (s = ´"´) then
if not isDop then
begin
iDop := 1;
isDop := True;
end
else
isDop := False;
if isTag then
if isDop then
begin
if iDop <> 1 then Col := DopCol;
end
else
Col := TagCol
else
Col := TextCol;
RichEdit.SelAttributes.Color := Col;
iDop := 0;
if (s = ´>´) or (s = ´}´) then
isTag := False;
end;
RichEdit.SelLength := 0;
end;
GOSTEI 0
Marcelo Saviski
13/10/2004
Você pode usar o [url=http://sourceforge.net/projects/synedit/]SynEdit[/url], que é um edit para exibir códigos formatados, você coloca um SynEdit e linka a propriedade HighLighter com um TSynHTMLSyn.
O texto digitado no ynEdit ficará formatado reaçando tags ou textos etc.
Não é só p/ HTML, tem para trocentas linguagens.
Muito bom.
O texto digitado no ynEdit ficará formatado reaçando tags ou textos etc.
Não é só p/ HTML, tem para trocentas linguagens.
Muito bom.
GOSTEI 0
Bon Jovi
13/10/2004
Solução 1: Usar RichEdit normalmente + Exportacao pra HTML. No Delphi já tem um demo completo com tudo q vc quer (C:\Arquivos de programas\Borland\Delphi7\Demos\RichEdit). E pra exportar pra HTML, use o componente TJvRichEditToHtml (aba Jv Internet) do Pacote JEDI VCL (http://homepages.borland.com/jedi/jvcl/).
Solução 2: Usar Editor DHTML, que trabalha diretamente com HTML.
Solução 2: Usar Editor DHTML, que trabalha diretamente com HTML.
GOSTEI 0
Faelcavalcanti
13/10/2004
Você pode usar o SynEdit, que é um edit para exibir códigos formatados, você coloca um SynEdit e linka a propriedade HighLighter com um TSynHTMLSyn.
O texto digitado no ynEdit ficará formatado reaçando tags ou textos etc.
Não é só p/ HTML, tem para trocentas linguagens.
Rapaz este componente é realmente, espetacular!!!!!
Não tenho muito a falar é só conferir!!!!
Mas ainda há uma dúvida, gostaria de formatar várias vezes um TRichEdit ou outro componente, ou talvez este do SynEdit. Não testei ainda.
Mas o que eu queria de fato é Formatar de diversos tamanhos e cores um texto digitado.
Agradeço pela ajuda de todos!!!
GOSTEI 0