AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeigen?

HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeigen?

Ein Thema von PeterPanino · begonnen am 1. Aug 2022 · letzter Beitrag vom 2. Aug 2022
Antwort Antwort
PeterPanino
Online

Registriert seit: 4. Sep 2004
1.367 Beiträge
 
Delphi 10.4 Sydney
 
#1

HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeigen?

  Alt 1. Aug 2022, 19:57
Hallo, vielleicht kann mir jemand zu dieser Frage einen Tipp geben?
Ich habe diese Auswahl aus dem Browser in die Zwischenablage kopiert:
browser.png

In der Zwischenablage befindet sich nun ein Fragment im HTML-Format, das ungefähr so aussieht:

Version:1.0
StartHTML:000000096
EndHTML:000002304
StartFragment:000000186
EndFragment:000002290
<html><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"></head><body><meta charset='utf-8'><h3 style="font-size: 1em; font-weight: bold; margin: 3px 0px 0px; color: rgb(70, 80, 123); font-family: Tahoma, FreeSans, Verdana, sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;">Willkommen in der Delphi-PRAXiS</h3><div class="dpdivider" style="font-size: 12px; background-color: rgb(50, 60, 108); height: 2px; max-width: 100%; margin: 0px 0px 15px; color: rgb(0, 0, 0); font-family: Tahoma, FreeSans, Verdana, sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"></div><span style="color: rgb(0, 0, 0); font-family: Tahoma, FreeSans, Verdana, sans-serif; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;">Ein herzliches Willkommen in der freundlichen Entwickler-Community rund um Embarcaderos Entwicklertool "Delphi". Unser Ziel ist es, eine Diskussionsplattform für den Gedankenaustausch zwischen Menschen zu schaffen, die sich beruflich oder privat mit Delphi befassen. In unserem Archiv mit mehr als 1.470.000 Beiträgen finden sich Lösungen für die unterschiedlichsten Problemstellungen.</span></body></html>

Wie kann ich dieses HTML-Fragment nun so in einer geeigneten Komponente anzeigen, dass es möglichst so wie im Original aussieht?
Geändert von PeterPanino, damit der Platz auf dem Bildschirm nicht so leer aussieht.
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.174 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeig

  Alt 1. Aug 2022, 20:36
Hi PeterPanino

Grundsätzlich gibt es im Browser (ich nehme mal an, egal, in welchem), ein Property <InnerHtml>. Dieses enthält den vom Browser ausgegebenen HTML-Text, also das, was du am Bildschirm siehst. Dieses Innerhtml enthält allerdings den kompletten vom Browser sichtbar darzustellenden Text und nicht nur einen bestimmten Abschnitt. Aber einen solchen mit Delphis Stringverarbeitungsroutinen zu finden, dürfte nicht allzu problematisch sein.

Gruss
Delbor

PS: Eventuell könntest du mal versuchen, den gezeigten Text statt in die Zwischenablage zu kopieren, mit Innerhtml auszulesen und in einem eigenen Browser auszugeben.
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch

Geändert von Delbor ( 1. Aug 2022 um 21:43 Uhr)
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
952 Beiträge
 
Delphi 2009 Professional
 
#3

AW: HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeig

  Alt 1. Aug 2022, 21:08
Er will das anzeigen, nicht kopieren. Kopiert hat er es ja schon.

Man kann das Kopierte natürlich zwischenspeichern und dann in einen TWebBrowser/TEdgeBrowser laden. Kann man sicherlich auch anders da rein bekommen. Im IE konnte man früher HTML rendern, indem man "about:" gefolgt von HTML-Code in die Adresszeile eingegeben hat (ja, da geht/ging nicht nur about:blank!). Ob er das immer noch kann, weiß ich nicht. Das war sozusagen eine frühe Form von Data-URI. Data-URI könnte hier sogar auch die Lösung sein, also dass man die Seite 'data:text/html,' + URLEncode(HTML) lädt. Ich hab von TWebBrowser/TEdgeBrowser aber nicht so viel Ahnung.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
PeterPanino
Online

Registriert seit: 4. Sep 2004
1.367 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeig

  Alt 1. Aug 2022, 23:06
Ich habe hier eine Lösung von David Heffernan gefunden, um den HTML-Code aus dem Clipboard zu extrahieren:

https://stackoverflow.com/questions/...oard-in-delphi

Das funktioniert sehr gut.

Jetzt muss man den HTML-Code nur noch in eine moderne Browser-Komponente reinbekommen. Welche moderne Browser-Komponente für Delphi macht am wenigsten Probleme?
Geändert von PeterPanino, damit der Platz auf dem Bildschirm nicht so leer aussieht.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
8.557 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: HTML-Fragment vom Browser in die Zwischenablage kopieren und dann original anzeig

  Alt 2. Aug 2022, 13:11
Jetzt muss man den HTML-Code nur noch in eine moderne Browser-Komponente reinbekommen. Welche moderne Browser-Komponente für Delphi macht am wenigsten Probleme?
Man kann Chromium mitliefern (über 100 MiB) oder TEdgeBrowser verwenden, das es mittlerweile in Delphi gibt und auf dem integrierten Edge-Control (WebView2) basiert, siehe hier.

Alternativ gibt es noch verschiedene HTML-Viewer, die sich aber nicht 1:1 wie die aktuellen Browser verhalten.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 21:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf