Seite 1 von 1

Erledigt: Routine zum Darstellen eines mehrzeiligen Textes?

Verfasst: Mi 11. Jan 2006, 20:23
von Elle4u
Hallo zusammen,

könnte jemand von Euch mir eine Routine zum Anzeigen eines mehrzeilien Textes (im Moment ein Char[1024] - erweiterte Event-Infos) zur Verfügung stellen?
Ich versuche es jetzt schon etwas länger und irgendwie bekomme ich es nicht hin...

Das wäre sehr nett! :rolleyes:

Verfasst: Do 12. Jan 2006, 09:36
von schasskistn
auf

http://board.topfield.de/viewtopic.php? ... highlight=

hab ich mal eine grafiklib gepostet, die kann das (in der demo applikation).

vielleicht hilft es dir weiter, ist aber zZ nur auf diese grafiklib zugeschnitten.

Verfasst: Do 12. Jan 2006, 10:17
von Elle4u
Danke.
Ich schau mir das mal an...

Verfasst: Do 12. Jan 2006, 19:14
von Elle4u
Elle4u hat geschrieben:Danke.
Ich schau mir das mal an...
Super!
Jetzt bin ich zu Hause und das andere Board geht mal wieder nicht... :mad:

Verfasst: Do 12. Jan 2006, 19:20
von DeJe
Was benötigst Du genau?
Welche Parameter gibst Du rein und was soll dann rauskommen?

Verfasst: Do 12. Jan 2006, 19:37
von Elle4u
DeJe hat geschrieben:Was benötigst Du genau?
Welche Parameter gibst Du rein und was soll dann rauskommen?
Ich habe die erweiterte Info in einem Char[1024].
Und die möchte ich auf dem Bildschirm ausgeben. Die Maske dazu ist ja schon da.
Allerdings habe ich nun das Problem, daß ich eigentlich Buchstabe für Buchstabe in einen neuen String übergeben müßte. Sobald die Breite des neuen Strings breiter wird als das Fenster, dann müßte dieser String-1 ausgegeben werden. Nun müßte eine neue Zeile angefangen werden, der 2. String geleert und die ganze Geschichte wiederholt werden bis entweder der Char zu Ende ist oder die maximale Anzahl Zeilen erreicht wurde.
In diesem Fall müßte es dann auf Seite 2 weiter gehen (mit dem Rest des Char)...

Also im Prinzip habe ich nun genau beschrieben wie die Schleifen und Ifs aussehen müssen.
Allerdings fehlen mir die Kenntnisse für die Kopier- und Cut-Funktionen (also z.B. nur 3. Zeichen von Links in neuen String usw... (das kenne ich als MID(text, 3, 1) *g*) :oops:

Verfasst: Do 12. Jan 2006, 20:17
von DeJe
Hab Dir eine PN geschickt mit ein paar Anhaltspunkten.

Verfasst: Do 12. Jan 2006, 20:29
von Elle4u
DeJe hat geschrieben:Hab Dir eine PN geschickt mit ein paar Anhaltspunkten.
Thx. Werde ich mir mal zu Gemüte ziehen :wink:

Verfasst: Fr 13. Jan 2006, 09:03
von schasskistn
ich hole mal aus dem alten forum meine nachrichten rüber:

---------------snip----------------
Ich habe auf die schnelle eine (wirklich!) alte Grafikbibliothek von mir (die in einigen kommerziellen Stücken Software in der Medizintechnik eingebaut ist) abgespeckt und zum Topfield portiert. Vor allem ist es mir um die Font Funktionalitäten, sowie Bitmaphandling gegangen. Eine kurze Demo, ohne Beschreibung, aber mit dem Sourcecode steht auf: http://www.enemyinside.com/_misc_/grLibTF.zip

einfach das TAP und die .img sowie die .fnt dateien auf den Topf kopieren und das TAP starten.

Die Grafikbibliothek verfügt über Funktionen um:
(grprim.h)
-Pixel zu setzen und zu lesen
-Images (Sprites) zu erzeugen und zu zeichnen
-Bildschirmlöschen
(fntprim.h)
-Fonts aus Images zu erzeugen
-Textausgabe auf Grafikpositionen mit variabler Breite
-detto mit fixem Abstand
(ttyprim.h)
-Textausgabe Consolenartig (Textcursor mit fixer Breite)

und noch ungetestet am Topfield:
(menuprim.h)
-Menüfunktionen

Imagekonverter und Fontkonverter unter Windows habe ich auch schon fertig, die müssen allerdings noch bearbeitet werden, damit sie Benutzertauglich sind. Ausserdem werde ich für diese Teile den gesamten Source wohl nicht freigeben können, da einige Teile nicht von mir sind.
Die Hardware Abstraktion existiert für Windows (in einer optimierten Form), sowie in diversesten Embedded Geräten.

Die Topfield Abstraktion ist sehr einfach gehalten und funktioniert mit den Generic Implementationen, die ich immer als ersten Schritt verwende um eine Anpassung an eine neue Hardware zu erleichtern. Um die Software zu Beschleunigen müsste man die grXXXGeneric funktionen in Assembler implementieren - leider bin ich im MIPS nicht sonderlich bewandert. anyone?

In Kürze werde ich auch einen Wrapper für Windows freigeben, so das Grafikroutinen und Design am PC getestet werden können.

Falls das Zeug jemand verwendet, dann bitte eine kurze Nachricht an mich, damit das Gefühl der Sinnlosigkeit nicht ganz so gross ist


-------------------------------------------------------------------------

..so, trotzdem es niemanden interessiert habe ich den converter auf http://www.enemyinside.com/_misc_/Topfi ... olV1.0.zip gestellt.

Aufruf:
TopfieldImageToolV1.0 [/font] file1.jpg file2.png file3.jpg ...

convertiert alle file als "img" oder (bei gesetzten /font) als "fnt".
aber das ist eh das gleiche, nur zur besseren unterscheidung.
ausserdem habe ich ein paar sample fonts hineingegeben.

ich erstelle meine fonts immer, indem ich mit einem beliebigen zeichenprogramm den inhalt von "fontstring.txt" als text male und dann abspeichere als .png.


-------------------------------------------------------------------------

UPDATE:

ich habe jetzt das menusystem getestet und es funktioniert wie erwartet. in der datei:
http://www.enemyinside.com/_misc_/grlibmenu.zip liegt jetzt der neue source des hauptprogrammes, sowie die dazugehörenden grafikdateien.

so sieht es aus - ich bin kein grafiker, die icons sind einfach irgendwo rauskopiert:



und wenn ihr dann einen menüpunkt runtergeht



wie man sieht kann man recht schön grafische menüicons, sowie (passend zum ausgewählten eintrag) texte. man kann das alles beliebig kombinieren, also zB auch textuelle menüeinträge mit einem icon, das sich je nach menüpunkt ändert.

das demo kann mit exit beendet werden.

der screenshot stammt von der simulation am pc - der idente quelltext kann ja auch unter windows verwendet werden zum einfach testen und debuggen. dazu habe ich eine TAP-emulationsbibliothek angefangen, in der die benötigten funktionen schon implementiert sind.

-------------------------------------------------------------------------------

soo, jetzt nerve ich euch nochmal mit einem update:

unter:

http://www.enemyinside.com/_misc_/grlibdemo2.zip

steht eine neue version, bei der auch ein textviewer (mit bold und italic schriftarten) implementiert ist.
im demo könnt ihr im menü 3 verschiedene demos auswählen:
-simpletext (zeigt text mit bold und italic in einer box an
-textviewer (das bild unten),
-movingdemo (das vom letzten demo bekannte teil - mit den cursortasten könnt ihr die kleine rauschbox steuern)

das dazugehörige demobild:



wieder mit dem PC simulator gemacht. vielleicht habe ich über das wochenende zeit diesen auch veröffentlichbar zu machen.