Projektidee Html Formular Code Generator

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Projektidee Html Formular Code Generator

Beitrag von STARGÅTE »

Nun bin ich auch verwirrt, es geht doch jetzt um folgendes:

Du willst "etwas" schreiben, was aus diesem PureBasic-Code (oder beim ausführen dieses Codes):

Code: Alles auswählen

StartDrawing(HTMLOutput("Beispiel.html"))
   DrawText(100, 100, "Hallo Welt!", $00FF00)
StopDrawing()
die Beispiel.html Seite erstellt:

Code: Alles auswählen

<body>
   <div style="position: absolute; top: 100px; left: 100px; color: #00FF00">Hallo Welt!</div>
</body>
Das heißt, ähnlich wie DrawText entweder auf einem Canvas, Image oder Printer zeichnet, soll bei HTMLOutput() ein bestimmter HTML-Tag erzeugt werden.

Im Prinzip musst du dann dafür nur Macros schreiben, die die PB-Funktionen wie DrawText bei HTMLOutput() mit deinen HTML_DrawText Funktionen ersetzt, wobei HTML_DrawText einfach nur z.B. diesen DIV-Tag erzeugt und mit in die Ausgabe schreibt:

Code: Alles auswählen

Procedure HTML_DrawText(X.i, Y.i, Text.s, FrontColor.i=$000000)
	WriteStringN(#File, "<div style='position: absolute; top: "+Str(Y)+"px; left: "+Str(X)+"px; color: #"+RSet(Hex(FrontColor),6,"0")+"'>"+Text+"</div>")
EndProcedure
Hab ich das jetzt richtig verstanden?
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
derschutzhund
Beiträge: 328
Registriert: 06.06.2013 20:37
Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10

Re: Projektidee Html Formular Code Generator

Beitrag von derschutzhund »

Hab ich das jetzt richtig verstanden?
Ich weiß, ich nerve aber die Erzeugung einzelner HMTL-Zeilen über eine Befehlszeile ist nicht das Problem / Ziel!

Ich wills nochmal anders versuchen:

1. Du definierst ein Canvas

2. Du fügst Elemente ein: Text, Linien, Bilder

3. Du kannst sie verschieben und ihre Eigenschaften wie Schriftart, Liniendicke, Bildgröße, Schatten etc. ändern

4. Du startest den Generator und kannst nun zwei Dateien erzeugen:
a, die fertige html-Datei die man im Browser direkt ansehen und dann auch drucken kann

b, den PB-Code, der in ein *.pb eingebaut werden kann um aus PB heraus die html-Datei zu erzeugen
An dieser Stelle kann man dann noch feste Texte durch Variable ersetzen und hat dadurch Formulare mit variablem Inhalt!

Der wichtige Punkt ist, dass ich z.B. keine Positionen mehr von Hand eintippen möchte, sondern wie im Formdesigner von PB die Elemente
an die passende Position interaktiv schieben will.

LG

Wolfgang
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Projektidee Html Formular Code Generator

Beitrag von STARGÅTE »

Hää, aber das wäre doch dann nichts anderes als eine Art Vektor-Grafik-Editor, wie Inkscape.
Und die SVG-Datein können ja einfach mit PB über XML eingeladen werden und dann kannst du da auch "Varibalen" ändern.
Und SVG-Dateien können ja inzwischen auch von Browsern angezeigt werden.

Den Editor zu schreiben (der alles das was du aufgezählt hast zuverlässig macht) wäre sehr aufwendig.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
derschutzhund
Beiträge: 328
Registriert: 06.06.2013 20:37
Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10

Re: Projektidee Html Formular Code Generator

Beitrag von derschutzhund »

STARGÅTE hat geschrieben:Hää, aber das wäre doch dann nichts anderes als eine Art Vektor-Grafik-Editor, wie Inkscape.
Und die SVG-Datein können ja einfach mit PB über XML eingeladen werden und dann kannst du da auch "Varibalen" ändern.
Und SVG-Dateien können ja inzwischen auch von Browsern angezeigt werden.

Den Editor zu schreiben (der alles das was du aufgezählt hast zuverlässig macht) wäre sehr aufwendig.
Glaube nicht, dass es sehr aufwändig ist.
In sehr vereinfachter Form habe ich das schon in Form eines Sitzplanes gemacht.

1. Canvas so groß definiert, dass ein A4-Blatt Maßstäblich angezeigt weden kann, ohne es verschieben zu müssen.
2. Es kann A4 hoch oder quer eingestellt werden.
3. Bilder + Namen auf einem Canvas einfügen und beliebig verschieben oder auch löschen
4. erzeugt dann das fertige html-File

Der Ausdruck als html ist exakt so wie er auf dem Canvas dargestellt wird. Feine Sache! Da ich den gleichen PB-Code für win,linux,mac verwenden will gibt es wohl auch keine andere Möglichkeit das zu erreichen.
Wie gesagt muss am Code absolut nichts geändert werden, egal welches Betriebssystem es wird!!!!

Zunächst werden für den Generator auch nur wenige Elementarten benötigt:
- Fotos
- Text
- waagerechte Linie
- senkrechte Linie
- Rechteck

Damit lassen sich so gut wie alle möglichen Formulare erzeugen.

Die Elemente einfügen und löschen ist ja absolut kein Problem (kann ich)
Die Position wird mit der Maus verschoben (kann ich)
Um die Eigenschaften zu ändern wird ein Element angeklickt und dann in einer Maske welche von der Elementart abhängt eingestellt.
Dazu müsste ich ermitteln können welches Element es genau ist. (kann ich)

Nach der Änderung das Canvas neu zeichnen lassen (kann ich)

Für die Ausgabe werden dann einfach alle Elemente des Canvas in HTML bzw. PB-Code umgewandelt (kann ich)

Ist also echt nur eine Fleißarbeit!

Vermutlich kann man im Canvas nicht alle Eigenschaften genau so darstellen aber damit kann man vermutlich leben.
Also z.B. den Schatten eines Textes oder einer Linie etc. müsste man einfach nur definieren können, muss ihn aber nicht unbedingt im Canvas sehen.

EDIT: *

LG

Wolfgang
Zuletzt geändert von derschutzhund am 16.08.2013 14:15, insgesamt 1-mal geändert.
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Derren
Beiträge: 558
Registriert: 23.07.2011 02:08

Re: Projektidee Html Formular Code Generator

Beitrag von Derren »

Am beste wäre es noch wenn gleichzeitig eine C++ form erzeugt würde, die man auch direkt einbinden kann. 8)
Also quasi ein Visual-Designer Forms für jede Sprache erzeugen kann.

Aber ann doch bitte modular. Du stellst das Framework zur Verfügung und die HTML und PB-Code erzeugung liegt in einer DLL. Eine API mit Doku erlaubt jedem Programmierer eine weitere DLL zu schreiben. Geschrieben in einer Sprache seiner Wahl erzeugt sie den Code für eine Sprache seiner Wahl.
Signatur und so
derschutzhund
Beiträge: 328
Registriert: 06.06.2013 20:37
Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10

Re: Projektidee Html Formular Code Generator

Beitrag von derschutzhund »

Derren hat geschrieben:Am beste wäre es noch wenn gleichzeitig eine C++ form erzeugt würde, die man auch direkt einbinden kann. 8)
Also quasi ein Visual-Designer Forms für jede Sprache erzeugen kann.

Aber ann doch bitte modular. Du stellst das Framework zur Verfügung und die HTML und PB-Code erzeugung liegt in einer DLL. Eine API mit Doku erlaubt jedem Programmierer eine weitere DLL zu schreiben. Geschrieben in einer Sprache seiner Wahl erzeugt sie den Code für eine Sprache seiner Wahl.
Ja genau und die Erde ist eine Scheibe :lol:
Nicht jeder kann alles verstehen! :mrgreen:
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
derschutzhund
Beiträge: 328
Registriert: 06.06.2013 20:37
Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10

Re: Projektidee Html Formular Code Generator

Beitrag von derschutzhund »

NicTheQuick hat geschrieben:Du kannst an vielen Stellen bei HTML statt " auch einfach nur ' benutzen. Das macht es gleich schon übersichtlicher, weil du Chr(34) nicht schreiben musst.
Guter Tipp!

Besten Dank!
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Derren
Beiträge: 558
Registriert: 23.07.2011 02:08

Re: Projektidee Html Formular Code Generator

Beitrag von Derren »

Naja, wenn du meinst einen Visual-Designer für zwei Sprachen schreiben zu müssen die nicht kompatibel sind nur um dann meine Intelligenz in Frage zu stellen, wenn ich Support für weitere Sprachen vorschlage, nur zu.
Und nicht jeder kann verstehen dass HTML und PB sich einen Dreck dafür interessieren ob das Formular auf Din A4 passt. Wenn das Programm dann mal fertig ist kannst du ja mal einen Speedvergleich machen: Ein Formular mit deinem Programm erstellen vs. wie lange der (x-beliebige) Drucker braucht um dieses Formular auszudrucken :allright:
Signatur und so
derschutzhund
Beiträge: 328
Registriert: 06.06.2013 20:37
Computerausstattung: Satellite A210-19Z, Samsung Netbook N130, VPAD10

Re: Projektidee Html Formular Code Generator

Beitrag von derschutzhund »

Derren hat geschrieben:Naja, wenn du meinst einen Visual-Designer für zwei Sprachen schreiben zu müssen die nicht kompatibel sind nur um dann meine Intelligenz in Frage zu stellen, wenn ich Support für weitere Sprachen vorschlage, nur zu.
Und nicht jeder kann verstehen dass HTML und PB sich einen Dreck dafür interessieren ob das Formular auf Din A4 passt. Wenn das Programm dann mal fertig ist kannst du ja mal einen Speedvergleich machen: Ein Formular mit deinem Programm erstellen vs. wie lange der (x-beliebige) Drucker braucht um dieses Formular auszudrucken :allright:
Sorry, bin davon ausgegangen, dass dein Beitrag bezüglich C++ etc. ironisch gemeint war! :oops:

Klar könnte man mit dem Generator Code für jede beliebige Sprache erzeugen! :allright:

Von Din A4 gehe ich nur aus weil so gut wie alle Dokumente bei uns auf A4 gedruckt werden.
Natürlich kann man beim Ausdruck noch skalieren.
Was die Druckzeit angeht macht es keinen Unterschied ob man ein pdf oder html ausdruckt!
Satellite A210-19Z, Samsung N130, VPAD10, WinXP, Win7, PuppyLinux, PB 5.24, 5.31. 5.70
Elektronik, Mikrocontroller, CNC-Technik, 3D-Druck
Benutzeravatar
dysti
Beiträge: 656
Registriert: 10.02.2006 18:34
Wohnort: Schlicktown

Re: Projektidee Html Formular Code Generator

Beitrag von dysti »

....also, wenn ich das richtig verstanden habe:
Mit dem FormDesigner eine Seite erstellen.
Also hat man eine Seite, wo man die Elemente flexible ändern kann.
Nun nur noch ein Klick und die fertige Html-Seite/-Code wird generiert.
Ist das korrekt?
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
Antworten