AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

HTML-Label Komponente

Ein Thema von NoGAD · begonnen am 5. Mär 2024 · letzter Beitrag vom 12. Mär 2024
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#1

HTML-Label Komponente

  Alt 5. Mär 2024, 00:11
Hallo,

ich habe mich an einer eigenen Komponente versucht und würde mich über etwas Hilfe freuen.

Die Komponente kann formatierten Text darstellen. Der Text kann mit wnigen einfachen Tags angepasst werden.

Code:
  <b>TEXT: BOLD</b>
  <i>TEXT: ITALICS</i>
  <d>TEXT: STROKE</d>
  <u>TEXT: UNDERLINE</u>
  <c>COLOR: $BBGGRR: (B)lue (G)reen (R)ed</c>

  TODO:
   1. WordWrap
   2. Kombinierte Tags sind im Moment nicht möglich
   3. Fehler bei <c>..</c><anderer Tag>Text</anderer Tag>
Die Berechung erfolgt in zwei Schleifen, die erste ist zur Vorberechung des Textes, damit die Ausrichtung als Block klappt. Das hätte ich auch mit einer for x:= 0 to 1 - Schleife lösen können, um doppelten code zu vermeiden, mir half es aber bei der Erstellung der Komponente, darauf zu verzichten.

WordWrap macht mir noch Sorgen, weil ich hier das Array für die Zeilen anpassen müsste. In Verbindung mit <br> klappt das leider nicht so einfach.
Vielleicht mag mir jemand von euch hier helfen

LG Mathias
Angehängte Dateien
Dateityp: pas TRM_HTMLLabel.pas (12,0 KB, 6x aufgerufen)
Mathias
Ich vergesse einfach zu viel.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#2

AW: HTML-Label Komponente

  Alt 5. Mär 2024, 01:02
Das Delphi-Referenz durchsuchenTLinkLabel kennst du?

Eventuell kannst du davon ableiten (Dieses erweitern) oder da drin etwas abgucken.

Nja, Delphi 12 wäre jetzt was.
Skia ist im Delphi nun standardmäßig enthalten und es gibt ein neues Delphi-Referenz durchsuchenTSkLabel (die Hilfe im Forum ist nur etwas alt) bzw. Bei Google suchenTSkLabel
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: HTML-Label Komponente

  Alt 5. Mär 2024, 05:50
Guten Morgen.

Mit geht es eher um die Machbarkeit und um das Verständnis für "den Weg dorthin". Außerdem hatte ich für ein kleines Programm so etwas benötigt.

LG Mathias
Mathias
Ich vergesse einfach zu viel.
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.094 Beiträge
 
Delphi 12 Athens
 
#4

AW: HTML-Label Komponente

  Alt 5. Mär 2024, 11:22
Ein paar unsortierte Gedanken:
Den Parser würde ich möglichst separat von der UI anlegen, dann wäre auch eine Portierung VCL/FMX leicht möglich.
Man sollte sich schon zumindest etwas nach den HTML / DOM Strukturen richten und nicht versuchen nur simple Text-Ersetzungen zu machen.
Sonst wird das Erweitern der Strukturen irgendwann ganz schnell im Nirwana enden.
Der Parser also erstmal in eine Art interne DOM-Struktur abbilden und diese dann erst im UI rendern.
Das einfach Split nach "<br>" könnte man machen, aber dann sollte man wohl echte CrLf abfangen und unterdrücken.
Je besser man das echte HTML Verhalten abbilden kann, umso besser, sodass der Code dann auch 1:1 in Delphi oder im Browser das Gleiche macht.
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: HTML-Label Komponente

  Alt 5. Mär 2024, 16:29
Hallo Rollo.

Danke für deine Gedanken. Die Komponente ist eigentlich kein Browser und sollte auch nicht dafür herhalten. Statt HTMLPanel hätte es auch anders heißen können, dann wäre die Vorstellung, sich an der DOM Struktur zu orientieren, auch nicht gegeben gewesen. Über die Auslagerung hatte ich auch nachgedacht, wollte jedoch nicht, wie viele andere Komponenten noch weitere Units inkludieren.
Mathias
Ich vergesse einfach zu viel.
  Mit Zitat antworten Zitat
Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
485 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: HTML-Label Komponente

  Alt 8. Mär 2024, 17:40
Also ich kann die HTML-Komponenten von Alex Sviridenkov empfehlen.

Ist zwar nicht kostenlos, aber wohl das beste, was du in der Hinsicht bekommen kannst.
Dennis
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.094 Beiträge
 
Delphi 12 Athens
 
#7

AW: HTML-Label Komponente

  Alt 9. Mär 2024, 10:52
Ist zwar nicht kostenlos, aber wohl das beste, was du in der Hinsicht bekommen kannst.
Stimmt.
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: HTML-Label Komponente

  Alt 10. Mär 2024, 16:03
Hallo Dennis,

danke für den Link. In der Tat, beeindruckend!

Leider deckt sich das nicht mit meinem Konzept, der Open-Source Strategie. Ich versuce gerne so wenig wie möglich fremden Code / Komponenten einzubinden, damit es auch für andere kompilierbar bleibt.

LG
Mathias
Ich vergesse einfach zu viel.
  Mit Zitat antworten Zitat
Aliquis

Registriert seit: 26. Jun 2011
Ort: Grafschaft Bentheim
23 Beiträge
 
Delphi 12 Athens
 
#9

AW: HTML-Label Komponente

  Alt 10. Mär 2024, 18:15
Es gibt eine HTML-Label-Komomente auch als Open Source. Ich habe sie (kurz) getestet und für gut befunden.
https://github.com/digao-dalpiaz/DzHTMLText
Georg
  Mit Zitat antworten Zitat
Frickler

Registriert seit: 6. Mär 2007
Ort: Osnabrück
591 Beiträge
 
Delphi XE6 Enterprise
 
#10

AW: HTML-Label Komponente

  Alt 12. Mär 2024, 09:19
Die JVCL bietet (u.a.) ein HTLabel in JvHtControls.pas.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz