und weil so einfach ist, und man(n) dass auch alleine in 2-3 tagen hin bekommt, gibt es Webbrowser auch an jeder ecke und nicht nur von 3 großen "Anbietern"...
Es ist nicht so einfach. Ich bin seit ca, gut über einen Halbenjahr dabei, nur die Render-Engine aufzubauen. Inzwischen habe ich zuwachst bekommen und es entsteht ein komplett neuer Prototyp. Wenn du noch etwas Wartes. könntest du unsere "Grundlagen-" Komponente nutzen, für ein Webbrwoser. Du müsstest sie zwar erweitern, aber das meiste dürfte bis dahin schon mal eingebaut sein. Theoretisch sogar alles was für ein WebBrowser notwendig ist.
Hier mal ein Paar Schritte:
01) Eine Klassen Struktur ausdenken. Diese sollte in der Lage sein, Verschiedene Objekte, wie Text-Objekte, Grafiken, Links, und soweiter zu Rendern
D.H. Du musst mit Objekten Arbeiten.
02) Grund Funktionen einbauen(Scrollen, Markieren, Suchen, Zoomen)
03) Datei Formate Laden(HTML/CSS, RTF, DOC und CO)
Reche ca ein Jahr mit dem ersten Schritt(ich habe zwei Gebraucht um eine geeignete Struktur zu finden)
Der zweite Schritt ist Realtiv einfach vielleicht ein Paar Wochen, wenn du Glück hast.
Der letzte Schritt ist wieder recht Aufwendig, da sich die Formate Ständig Erweitern. So weit bin ich bisher noch NIE gekommen.
Wenn du möchtest kann ich dir mal meine Text-Engine als Beispiel Projekt geben. Die ist zwar weit da von Entfernt, aber um Einblicke zu bekommen, dürfte sie nicht schlecht sein.
Aber stell dich drauf ein, dass es nicht einfach wird. Es dauert seine Zeit. Bedenke auch: Alle Browser haben ca über 10 Jahre Vorsprung und das waren Team von mehr als Einer Person. Mit einem guten Konzept und entsprechend Erfahrung könnte ich mir vorstellen, dass Problem innerhalb eines Jahres zu lösen.
Wobei, das FTC(FlowTexControl) wird legendlich eine Grundlagen Komponente sein, damit könnte man Editoren schreiben, WebBrowser oder vieles mehr. Alles was sich dafür eignet.
Edit01: Auf Bitten von Lannes habe ich den Namen Korrigiert. War ein kleiner Buchstaben Dreher drin.
Zuletzt geändert von pluto am Mi 30. Jun 2010, 21:43, insgesamt 1-mal geändert.
Wenn du das Qt4-Widgetset nutzt, kannst du den QWebkitBrowser einbinden. Der bietet schon alles, was ein Browser können muss und basiert auf WebKit, einer modernen Browserengine.
Eine Demo, wie man den WebKit Browser nutzt, findest du hier zum Download.
Noob1994 hat geschrieben:Ist es möglich mit Free Pascal IDE Lazarus einen Webbrowser zu erstellen,
Geht sicher. Ob das sinnvoll ist, ist die andere Frage . Schön wäre ein ordentlicher Web-Seiten-Editor !
Mein Sohn hat vor einiger Zeit 'mal einee Unit gemacht, mit der man HTM_Code in eine hierarchische Datenstruktur einlesen kann und auch diese Datenstruktur wieder als HTML speichern kann. Ist noch lange nicht perfekt, funktioniert aber ganz gut.
Damit hat er ein Programm gemacht, dass automatisiert bestimmte Webseiten erstellen und updaten kann.
Aber so einen minimal-Browser kann man sich ja schon mal basteln, der dann die Webseiten eben bloß als Quelltext anzeigt und man auf Links klicken kann.
Wenn dir sowas dann Spaß macht, kannst du ja die grafische Schicht drüberbauen.
Wenn du möchtest, kannst du dir auch meine Alte Text-Engine runter laden "http://forge.lazarusforum.de/repositories/show/textengine"
die ist zwar noch längst nicht Fertig, sie wird von mir auch nicht mehr Weiter Entwickelt, jedoch solltest du sehen können, was auf dich in etwa zu kommen wird.
Diese Version müsste noch Aufgeräumt und Optimiert werden. Hier die Punkte die schon ganz gut Funktionieren:
01) Rendern(Objekt Verwaltung)
02) Automatischer Zeilenumbruch
03) Scrollen
04) Markieren Angefangen(Über mehrere Absetzte geht noch nicht 100%ig)
Klingt nach Wenig, aber schon alleine bis hierhin sind es schon sehr viele Zeilen Code.
Das könntest du auch nur als "Grundlage" nutzen. Für ein WebBrowser solltest du noch einige Funktionen hinzufügen wie z.b. das Laden von Dateien(HTML und CO) und dann auch noch aus der "Ferne".
Beim Markieren habe ich aufgehört, weil "wir" inzwischen einen besseren Prototypen erstellt haben, denn wir auch verwenden werde.
Diesen Besseren Prototypen, denn wir FTC(FlowTextControl) genannt haben, könnte dafür eines Tages(ca in einem Jahr, vielleicht auch Früher, aber ehrer Später) verwendet werden. Mit ihn könnte sogar ein Editor wie OpenOffice mit Leichtigkeit(Eventuell Etwas übertrieben*G*) erstellt werden, weil die meisten Aufgaben wie Markieren, Scrollen, Zoomen, Suchen, Rendern und das Laden von verschiedenen Datei Formaten bis dahin schon eingebaut sind. Ebenso könnte die Komponente verwendet werden um ein WebBrowser oder ein einfaches RichEdit zu erstellen. Die Möglichkeiten sind sehr vielseitig.
edit01 Auf bitte von Lannes, den Namen angepasst(War ein Buchstaben Dreher drin und einen Absatz Gelöscht, der Vielleicht nicht ganz so rein gepasst hatte.
Zuletzt geändert von pluto am Mi 30. Jun 2010, 21:41, insgesamt 1-mal geändert.