21. 4. 2014

 

Plain text z HTML textu


Funkční fragment kódu, který umí vzít HTML kód a "vytáhnout" z něj očištěný text. Je jasné, že se ztratí všelijaké formátování typu barvy, bold, italic atd. atd.

Je závislé na instalaci jádra Microsoft Internet Exploreru. Tedy nebude fungovat na OS X, iOS, Androidu apod.

Testováno v Delphi XE3 a XE6, ale mělo by fungovat v libovolné verzi.

uses
  System.Variants, System.Win.ComObj, Winapi.ActiveX, MSHTML;

function GetPlainText(const AHtml: string): string;
var
  LDocument: IHtmlDocument2;
  LVariantArray: Variant;
begin
  LDocument := CreateComObject(CLASS_HTMLDocument) as IHtmlDocument2;
  LVariantArray := VarArrayOf([AHtml]);
  LDocument.write(PSafeArray(TVarData(LVariantArray).VArray));
  LDocument.close;
  Result := (LDocument.body as IHTMLBodyElement).createTextRange.text;
end;

Štítky:

Komentáře: Okomentovat

Přihlášení k odběru Komentáře k příspěvku [Atom]





<< Domovská stránka