Richtext carattere in più

di il
6 risposte

Richtext carattere in più

Buongiorno,

ho inserito dentro ad una string un testo. dopodichè ho usato la function Copyrichtext, solo che inserisce un carattere nuovo che non è presente nella stringa originale stavo cercando di eliminarla essendo che se no ogni volta che copio la stringa in un file di testo bisogna eliminare il carattere. c'è un modo per farlo? avevo pensato di utilizzare il comando asii per l'eliminazione del campo se ho visto bene era #127, ma non funziona

avete altre idee? ho usato richtext per la formattazione

6 Risposte

  • Re: Richtext carattere in più

    Comando asii??
  • Re: Richtext carattere in più

    Si ad esempio #13#10 é linea a capo
  • Re: Richtext carattere in più

    f.developer ha scritto:


    dopodichè ho usato la function Copyrichtext, solo che inserisce un carattere nuovo che non è presente nella stringa originale stavo cercando di eliminarla essendo che se no ogni volta che copio la stringa in un file di testo bisogna eliminare il carattere. c'è un modo per farlo? avevo pensato di utilizzare il comando asii per l'eliminazione del campo se ho visto bene era #127, ma non funziona
    Riporta il codice che hai scritto, quantomeno le parti significative, assieme un esempio del testo formattato che stai cercando di scrivere e del risultato che invece ottieni sul file.
  • Re: Richtext carattere in più

    
    	Testo := Testo + 'il codice iooi pio iop p pp ipo \line '+
    	'yyaugtyut uy tg gg zyg gy ';
    	
    	CRichText('\fs22 ' + Testo);
    	Testo := ReplaceText(Testo, '\line', #13#10);
    	
    procedure CRichText(AText: string);
    var
       CF_RICHTEXT: UINT;
    begin
       CF_RICHTEXT := RegisterClipboardFormat('Rich Text Format');
       CopyData(TEncoding.ANSI.GetBytes(AText), CF_RICHTEXT);
    end;
    
  • Re: Richtext carattere in più

    Secondo me, l'errore si annida in questo punto:

    f.developer ha scritto:


    
       CopyData(TEncoding.ANSI.GetBytes(AText), CF_RICHTEXT);
    
    E' possibile che l'encoding ANSI non sia quello corretto da utilizzare.

    Io proverei un encoding differente, ad esempio quello comunemente in uso sulle nostre macchine, il Windows-1252, creandolo in questo modo:
    TEncoding.GetEncoding(1251)
    Per un approfondimento relativamente al tipo TEncoding e alla problematica in generale, partirei dalla documentazione.

    Ciao!
  • Re: Richtext carattere in più

    f.developer ha scritto:


    Si ad esempio #13#10 é linea a capo
    Vuoi dire ASCII ... e non è un comando ...
Devi accedere o registrarti per scrivere nel forum
6 risposte