Ascii-ART



  • Irgendwie habe ich jetzt keine Ahnung ob das hierhin gehört, aber mal versuchen 🙄.

    Also ich hab ein kleines Konsolen-Programm geschrieben (mit Turbo Pascal...), man kann damit ASCII-Grafiken erstellen und speichern.

    Seht mal ob es bei Nicht-W2k-Usern ebenfalls funktioniert. Desweiteren wäre ein kleines Feedback sehr nützlich!

    Download

    MfG SideWinder



  • also mit wine funktioniert es bei mir nicht.. vielleicht krieg ichs ja noch hin 🙂



  • laden geht nicht, da sagt er immer bild kann nicht geladen werden 😞
    und die steuerung finde ich etwas umständlich



  • Laden geht bei mir einwandfrei. Du musst entweder den genauen Namen angeben, oder den namen mit ".aap" hinten. Auch möglich, aus der dosbox zu starten: asciiart - NAME.aap (auch hier gehts ohne .aap).

    Steuerung ist leider umständlich. Allerdings fällt mir kein Weg ein sie zu verbessern: Was würdest du ändern?

    MfG SideWinder



  • Fehler gefunden: Dateinamen mit Namenslänge < 4 gaben Probleme. Bug sollte jetzt behoben sein, neue Version online, 2 Beispielbilder hinzugefügt.

    MfG SideWinder



  • läuft auf win me.
    speichern/laden hat auch beim ersten versuch geklappt

    verbesserungsvorschläge:
    -anderes zeichen für den cursor
    -wenn man eine vertikale line ziehen will springt der cursor immer ein feld nach rechts,ich fände es bequemer wenn er auf der alten position bliebe
    -löschtaste die das gewählte feld auf schwarz/schwarz " " setzt.
    vielleicht soll "b" das machen, aber ich bin nicht sicher weil es das feld links vom _ löscht.
    -in der hilfe dürfen ruhig alle tasten erwähnt werden 😉
    -50%werbung,50%info:ich habe in TC mal etwas entfernt ähnliches gemacht:
    klick
    es ist eigentlich ein sokoban-spiel(im textmodus), aber der leveleditor ist fast ein ascii-art-editor.



  • Hi !

    Willst du nicht den Source freigeben / mir schicken ? Dann könnte ich das Programm für Linux compilen, und die Leute vom anderen Ufer ham auch was davon 😉



  • @Angezeigter Benutzername:

    Welches Zeichen würdest du vorschlagen? Das vollausgemalte Zeichen?
    Auf die Positionsbewegung wurde ich bereits von einem Mitschüler hingewiesen, wollte zwar zuerst nichts ändern, aber wenn mehrere dieser Meinung sind...

    Das mit dem Löschen hakt leider sowieso noch an allen Enden und Ecken, ich werde mir da ein neues Konzept einfallen lassen.

    Welche Tasten werden in der Hilfe nicht erwähnt? (Außer vielleicht dem Notausstieg STRG+A).

    ---

    Source werde ich freigeben, allerdings muss ich da vorher noch etwas ändern, glaube ich. Ich benütze nämlich drei globale Arrays, die von überall aus abrufbar sind.

    Also wahrscheinlich wird das erst gegen Abend etwas *g* :).

    MfG SideWinder



  • Hallo,

    ist doch klar, dass es mit Wine nicht funktioniert! 😉 Wine ist ein Windows-Emulator (naja, eigentlich ist er gar kein Emulator). Für Dos-Programme gibts doch den Dosemu, mit dem SideWinders Ascii-Art-Generator auch ordentlich läuft. 🙂

    Ein bisschen Kritik: das Programm läss sich irgendwie umständlich bedienen.



  • Nochwas zur Bedienung: Welche schlägt ihr vor? Alle behaupten sie sei umständlich, aber niemand präsentiert etwas. Wie denkt ihr, sollte man das Programm steuern können?

    MfG SideWinder



  • Original erstellt von SideWinder:
    Nochwas zur Bedienung: Welche schlägt ihr vor? Alle behaupten sie sei umständlich, aber niemand präsentiert etwas.

    das ist ja schliesslich die Aufgabe des Autors



  • das voll ausgemalte zeichen wird wohl zu häufig zum zeichnen verwendet.
    vielleicht dieses kleine quadrat (nr 254?) in der mitte.hilfreich wäre es auch wenn der cursor flackert oder blinkt.
    fehlende tasten in der hilfe:
    habe gerade die neue version runtergeladen und gesehen dass die hilfe mit tastendruck noch weitergeht,ich hatte immer F1 gedrückt weil unten F1-hilfe stand und dann war ich wieder im menu,sorry.(aber: !dau-gefahr!)

    noch etwas:
    wenn man dateien auf ein programm zieht wird die datei normalerweise mit dem programm geöffnet.(dateiname wird mit -parameter übergeben oder so)
    wenn ich aber rules.app auf die .exe schiebe wird oben zwar der dateiname angezeigt, aber es ist kein cursor und kein bild da.hängt sich aber nicht auf.vielleicht weil der komplette pfad übergeben wird

    die steuerung geht eingentlich noch..man muss halt für linien immer
    rechts-space-rechts-space-unten-space-unten-space drücken aber das zeichenfeld ist ja nicht so gross.

    vorschläge...
    -tabelle aus der man zeichen auswählen kann(welcher normale user hat schon eine esciitabelle rumliegen?)
    -wählbare shortcuts für oft genutzte zeichen (z.B. nummernblock für diese rahmenteile)
    -spraydose wie bei paint 🙂
    -was willst du eigentlich mit den bildern machen?laden kann man sie nur mit dem editor,ok man kann e in spielen zu benutzen aber dann mus jeder die lade+anzeige funktionen haben.==>man sollte die bilder als html oder reiner .txt speichern können.(gehen sonderzeichen bei html?wenn nicht muss man sie halt weglassen)

    Original erstellt von SideWinder:
    Nochwas zur Bedienung: Welche schlägt ihr vor? Alle behaupten sie sei umständlich, aber niemand präsentiert etwas.
    [quote] das ist ja schliesslich die Aufgabe des Autors

    [/quote]
    er selbst findet die steuerung wahrscheinlich ok weil er halt dran gewöhnt ist



  • Da scheint ja noch viel Arbeit vor mir zu liegen :).

    Übrigens noch ein kurzer Text zum eigentlichen Sinn dieses Programms: Also, das soll in keiner Weise irgendwann ein Zeichenprogramm werden. Ich habe das Programm aus zwei Gründen gemacht. Erstens beginnen wir in der Schule jetzt nebenbei in TP Jump'n'Runs zu machen. Da wir aber vom Grafikmodus keine Ahnung haben (hab mir das mal angesehen, ist höllisch viel Arbeit) haben wir uns auf ASCII-Art spezialisiert.

    Also benütze ich den Editor für ASCII-Grafiken aller Art (der Hauptzweck fehlt dann übrigens noch im Programm -> muss ihn 1. als .txt speichern und zweitens als Pascalcode (ist nicht schwer).

    Leider hat man in den ersten beiden Zeilen viel zu wenig Platz fürs Zeichnen. Deswegen stelle ich für erweiterte Funktionen wahrscheinlich den ganzen Bildschirm zur Verfügung, dann kann man 1. z.b. die Farbe gleich in der Tabelle mit den Cursor-Tasten auswählen. Speichern besser wählen, etc.

    @Angezeigter Benutzername: Danke, du hast mir noch einige sehr brauchbare Ideen geliefert. Vor allem die Rahmenteile auf den Num-Block zu legen, scheint mir eine sehr gute Idee :).

    Was verstehst du allerdings unter dieser Spray-Dose, irgendwie ist da zu wenig Platz vorhanden?!

    Das mit den Dateien habe ich gewusst, leider ist das in Windows dann fehlerhaft, aber in DOS soll folgendes möglich sein:

    asciiart - bildname.aap
    

    Aber du hast recht, sollte das Bild in einem anderen Ordner sein gibt es schon Probleme, also lieber asciiart - ./bildname.aap verlangen :).

    Der Cursor bleibt dann an der Position an der er ist.
    Das mit der Hilfe hab ich nicht ganz kapiert, F1 und was soll dann passieren?

    MfG SideWinder



  • Grafik wird in TP doch mit der Unit Graph gemacht.
    Was ist denn an der kompliziert 🙂 ?

    Sogar unser Infolehrer hat das verstanden, und konnte uns das recht verständlich rüberbringen...



  • [OT]Weil hier wieder mal ein Ascii-Art-Thread offen ist: Linux-User mit AAlib sollten sich mal "aafire" ansehen, das fand ich ziemlich imposant...[/OT]



  • Also, ich hab jetzt Auswahltafeln eingefügt und Laden aus anderen Ordnern funktioniert ebenfalls, auf dem NumBlock liegen nun die speziellen Rahmenteile auf + liegt zusätzlich #186 und auf 0 #205.

    Desweiteren springt der Cursor nicht mehr auf das nächste Feld.

    ToDo:

    • Speichern in andere Ordner und andere Formate (mach ich erst wenn alles andere passt)
    • Löschtaste mit S/S
    • Zeichen für den Cursor ändern
    • Durch draufschieben in Win die Datei öffnen

    Die Löschtaste ist kein Problem, ich bau sie irgendwann ein (zudem ist mir aufgefallen, dass ich z.Z. keine Möglichkeit habe die Hintergrundfarbe eines einzelnen Zeichens zu ändern (kommt auch noch).

    Doch Probleme gibt es bei 3 und 4:

    Das Zeichen des Cursors lässt sich in Pascal irgendwie nicht verändern 😕.

    Und zum Draufschieben: Ich habe es so angepasst, dass es auch komplette Pfadangaben benützen kann:

    asciiart e:\pascal\asciiart\mfg.aap
    oder eben: asciiart e:\pascal\asciiart\mfg

    Allerdings geht das wiederum nur in DOS. Was macht Windows bei der Übergabe anders??

    ---

    Gebt mir bitte wieder ein kleines Feedback, wie ihr die aufgearbeiteten Punkte findet: Download

    ---

    Sry, aber Quelltext ist wieder keiner dabei, ich will noch soviel vom Stil ändern, ich traue in mir gar nicht freigeben. Aber versprochen: Sobald das Projekt beendet ist, stell ich ihn mit online :).

    MfG SideWinder



  • ich hatte die letzten paar tage nicht richtig zeit hier vorbei zu gucken und auch jetzt nur ganz kurz:
    ja/nein dialog beim laden ist gut, rahmenteile auch

    zum cursor:
    warum musst das symbol für den cursor ändern?
    ich dachte du zeichnsest den cursor so: (ich kann kein pascal,also nur einbeispiel):
    gotoxy(x,y);
    write("_");

    dann müsste man nur _ mit z.B. X ersetzen.
    oder benutzt du eine funktion wie cin bei c++?
    dann kann der cursor (der, der von der eingabe-funktion erzeugt wird) ja 'in der ecke' blinken und der richtige wird im bild gezeichnet.

    mfg A.Bn.



  • Hi SideWinder,

    den Cursor kriegst du per Interuptaufruf geändert. Das müsste mit alten dem TP- Compiler doch nach wie vor zulässig sein, oder? Ich habe es noch nicht getestet.

    Wenn es dich interessiert, dann suche ich dir den Code raus.

    Grüße, Volle.



  • Danke vorerst, ich progge mal den Rest und verbessere das vorhandene und melde mich dann hier wieder :).

    MfG SideWinder



  • Sieht ordentlich aus, dein Textprogramm!
    (schon lange keines mehr gesehen... 😉 )
    Wieso unterscheidet eigentlich die Software beim Laden zwischen
    absolutem und relativem Pfad?
    Das Ändern des Cursors ist übrigens Funktion 01h des Int 10h (EGA/VGA-Bios).
    Also in etwa:
    mov ah,01h
    mov ch,higher_mask {* startzeile Cursor }
    mov cl,lower_mask {
    endzeile Cursor *}
    int 10h

    Greetings
    SolariX


Anmelden zum Antworten