| Autor | Beitrag | 
| Pr0g 
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Mi 15.06.05 17:13 
 
Hallo,
 ich möchte nun mein neustes Projekt (war wieder für einen Wettbewerb) vorstellen: PQASCIIStudio.
 Das Programm soll beim Erstellen von ASCII Arts behilflich sein, in dem es Zeichentools wie Paint anbietet, hier mal ein Screenshot: .png (~21Kb) .
 Das Programm biete verschiedene Exportfunktionen (HTML, RTF, TXT), sowie ein eigenes Format (.adf). Herzstück des Programms ist der TASCIIDesigner. Diese Komponente stellt die Zeichenfläche, -funktionen und alles weitere wie Exporter zur Verfügung. Dem Programm liegt eine kleine Hilfe bei und der Code ist kommentiert. Für die TASCIIDesigner Komponente liegt noch eine Dokumentation (mit DelphiCodeToDoc erstellt) bei.
 Das Programm hat noch nen paar Bugs und einige Funktionen fehlen noch (dazu blieb mir die Zeit nicht). Ich werde es nach Fertigstellung von Webweaver v2 aber noch weiterentwickeln. In der Readme findet ihr nochmal genauere Infos zu den einzelnen Teilen (Programm, Code, ToDo-Liste): .txt (~5Kb) .
 Für die .adf Dateien gibt es auch noch eine Onlinegalerie (bspw. um die Bilder anderen zu zeigen): adfviewer.pr0g.net . Das PHP Script ist auch OpenSource und liegt dem Download ebenfalls bei.
 Hier nun der Download, das ganze ist unter der GPL lizensiert: .zip (~661Kb) .
 Im Ordner "sample" findet ihr das auf dem Screenshot gezeigte Bild als .adf Datei (zum Laden in das Programm), sowie den verschiedenen Exportformaten.
 Feedback wie immer erwünscht    MfG Pr0g 
 Zuletzt bearbeitet von Pr0g am Mi 15.06.05 17:46, insgesamt 1-mal bearbeitet
 | 
|  | 
| retnyg 
          Beiträge: 2754
 
 SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
 Delphi 5, Delphi 7
 
 | 
Verfasst: Mi 15.06.05 17:26 
 
sieht ziemlich geil aus, testen werd ichs sobald ich bedarf habe
 glaube aber schon vom screenie her zu sagen können dass es ein top-teil ist   _________________ es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
 in der regel haben diese leute die regel...
 | 
|  | 
| uall@ogc 
          Beiträge: 1826
 Erhaltene Danke: 11
 
 Win 2000 & VMware
 Delphi 3 Prof, Delphi 7 Prof
 
 | 
Verfasst: Mi 15.06.05 17:45 
 
hab zuerst gedacht der kann schwarzweiß bilder direkt konvertieren, dann wärs geil gewesen.
 aber so braucht man das programm net wirklich *duck*
 _________________ wer andern eine grube gräbt hat ein grubengrabgerät
 - oder einfach zu viel zeit
 | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Mi 15.06.05 17:49 
 
@retnyg: Danke.
 @uall@ogc: Dafür gibt es Bildconverter. Dies ist aber ein Zeichenprogramm zum erstellen von ASCII Arts. Wie in der ToDo Liste zu lesen ist, wird eine Importfunktion für Bilder aber später noch integriert. Die Hauptaufgabe des Programms liegt bei der Erstellung eigener Bilder.
 | 
|  | 
| DarkHunter 
          Beiträge: 477
 
 Win XP
 D3 Prof, D2005 PE
 
 | 
Verfasst: Mi 15.06.05 19:33 
 
Das ist doch mal ein cooles Programm
Allein auf die Idee zu kommen
 gefällt mit richtig gut
 
 aber gibt es eine möglichkeit die bilder zu vergrößern?
 | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Mi 15.06.05 19:44 
 
	  |  DarkHunter hat folgendes geschrieben: |  	  | Allein auf die Idee zu kommen | 
 Die Idee ASCII Arts mit einem Programm leichter zu erstellen ist nicht von mir. Es war für einen Wettbewerb und gibt ähnliche Programme.
 	  |  DarkHunter hat folgendes geschrieben: |  	  | aber gibt es eine möglichkeit die bilder zu vergrößern? | 
 Wie genau meinst du das mit "vergrößern"? Momentan gibt es nichts in dieser Richtung. | 
|  | 
| DarkHunter 
          Beiträge: 477
 
 Win XP
 D3 Prof, D2005 PE
 
 | 
Verfasst: Mi 15.06.05 21:25 
 
Ich meine mit "Vergrößern da auch größere Bilder möglich sind, und nicht nur die voreingestellte feste größe | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Mi 15.06.05 21:32 
 
Geh einfach mal auf "Datei"->"Neu", dann kannst du eine Größe angeben. Und sollte ein Text (aus der Zwischenablage) auch größer sein, als die Designerfläche, so kommt eine Abfrage, ob der Designer abgepasst werden soll (oder der Text abgeschnitten). | 
|  | 
| F34r0fTh3D4rk 
          Beiträge: 5284
 Erhaltene Danke: 27
 
 Win Vista (32), Win 7 (64)
 Eclipse, SciTE, Lazarus
 
 | 
Verfasst: Di 21.06.05 12:43 
 
finde ich gut, auch dass es dicker wird, wenn man mehrmals drüber geht.
 es müsste aber eine Textfunktion geben die Texte so ausgibt:
 		                       Quelltext 
 									| 1:2:
 3:
 4:
 5:
 
 |   A  BBB CCCA A B B C
 AAA BB  C
 A A B B C
 A A BBB CCC
 |  das wäre lustig, und ne funktion die schwarz/weiß bilder umwandelt, dann ist es perfekt, ansonsten richtig geil, vielleicht noch etwas verbessern, aber auch schon heftig, dass es richtungen erkennt, zwar manchmal zu genau aber schön !     ich finde die boxen ja so lustig, wollte da schon ne eigene Komponente draus machen, aber gab son paar Fehler, dann hatte ich kein Bock mehr, ne Procedure geschrieben, mal geguckt, wie Pr0g das gemacht hat, ich hatte viele schleifen drin, weil ich stringofchar  (sehr praktisch) nicht kannte und hab halt ne Procedure draus gemacht, die man für jedes MemoFeld einsetzen kann:
 												| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 25:
 26:
 27:
 28:
 29:
 30:
 31:
 32:
 33:
 34:
 35:
 36:
 37:
 38:
 
 | procedure CreateTextBox(Memo: TMemo; Txt: TStrings; EdgeChar, FrameChar, SideFrameChar: char);var
 i, max: Integer;
 str, frame: String;
 begin
 max := 0;
 with Memo do
 begin
 font.Name := 'fixedsys';
 for i := 0 to Txt.Count - 1 do
 if Length(Txt[i]) > max then
 max := Length(Txt[i]);
 Lines.BeginUpdate;
 Lines.Clear;
 Frame := EdgeChar + StringOfChar(FrameChar, max + 2) + EdgeChar;
 Lines.Add(Frame);
 for i := 0 to Txt.Count - 1 do
 begin
 str := Txt[i];
 if Length(str) < max then
 str := str + StringOfChar(' ', max - Length(str));
 str := SideFrameChar + ' ' + str + ' ' + SideFrameChar;
 Lines.Add(str);
 end;
 Lines.Add(frame);
 Lines.EndUpdate;
 end;
 end;
 |  Beispielaufruf
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 
 | procedure TForm1.Memo2Change(Sender: TObject);begin
 CreateTextBox(Memo1, Memo2.lines, '+', '-', '|');
 end;
 |    vielleicht mach ich noch eine wo man den text zentriert anzeigen lassen kann und rechtsbündig, ich glaube das ist ganz nützlich   | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Di 21.06.05 16:17 
 
Textfunktion: Support für FiGlet  Schriften wäre später noch machbar. Der Vorteil dabei ist, dass es schon eine ganze Menge Fonts gibt und diese auch etwas Variable sind:
 		                       Quelltext 
 									| 1:2:
 3:
 4:
 5:
 6:
 
 |  _____ _       _      _|  ___(_) __ _| | ___| |_
 | |_  | |/ _` | |/ _ \ __|
 |  _| | | (_| | |  __/ |_
 |_|   |_|\__, |_|\___|\__|
 |___/
 |  Wie hier zu sehen ist, geht das "t" in das "e", solche Überschneidungsstücke werden für jeden Buchstaben in der Font angegeben. Jedoch dürfte es nicht wenig Arbeit sein, das FiGlet System zu integrieren.
Schwarz-/Weißbilder nach ASCII:  Es ist ein allgemeiner Bildimporter geplant, der auch farbige Bilder durch verschiedenen Algorythmen umwandeln kann.
 Momentan habe bin ich noch mit Webweaver beschäftigt. Denke in ein paar Wochen finde ich Zeit für eine Teil-Weiterentwicklung. | 
|  | 
| F34r0fTh3D4rk 
          Beiträge: 5284
 Erhaltene Danke: 27
 
 Win Vista (32), Win 7 (64)
 Eclipse, SciTE, Lazarus
 
 | 
Verfasst: Di 21.06.05 16:38 
 
wie wäre es mit einer eigenen schrift schnittstelle, sollte doch nicht so schwierig sein, man kann neue buchstaben (mit deinem programm) erstellen und diese dann in eine Font Datei Speichern, diese wird dann im programm eigenen Font Ordner geschpeichert und ist dann mit ner Font-Kombobox auswählbar, dann kannst du die einzelnen buchstaben ja zeile für zeile nebeneinander klatschen (ähnlich wie mit den boxen) das sollte dann eigentlich recht einfach werden     ok buchstaben die sich nicht in ein Quadrat packen lassen, weil die einzelnen buchstaben dicht aneinander oder ineinander sein müssen, werden schwierig werden    ich mach gerade einen ReadMe Datei Creator, um so simple TXT Dateien Grafisch aufzupeppen, sowas wie dein "paint" werde ich wohl nicht einbauen, dann müssen die schon dein Tool runterladen, aber Überschriften, Boxen und Listen einfacher zu erstellen ist doch auch fein    ach ja: sonne paint farbleiste unten fehlt noch, sodass man 2 farben wählen kann, und n radierer    | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Di 21.06.05 17:49 
 
Wegen den Schriften werden ich mir noch ein System ausdenken.
 Momentan gibt es keine Hintergrundfarbe für die einzelnen Felder (warum auch), daher reicht eine Farbe IMHO    Radierer kommt ja auch noch:
 	  | readme.txt hat folgendes geschrieben: |  	  | [...] Folgende Features
 könnte ich mir für die Zukunft aber noch vorstellen:
 
 - komplette Unterstüzung für Rückgängig und Wiederrufen
 - Umwandeln mehrerer .txt in .adf Dateien
 - Exporter für JS Animationen
 - Importer für Grafiken
 - .adf Dateien mit dem Programm verknüpfen
 - ClipArt Gallerie
 - weitere Modi (bspw. Radiergummi, Füllen...)
 - Erweiterung der Pixelerkennung
 - Diagramm-Generator
 - (Pluginschnittstelle)
 - überarbeitetes Design der Hilfe^^
 [...]
 | 
 | 
|  | 
| F34r0fTh3D4rk 
          Beiträge: 5284
 Erhaltene Danke: 27
 
 Win Vista (32), Win 7 (64)
 Eclipse, SciTE, Lazarus
 
 | 
Verfasst: Di 21.06.05 18:22 
 
Und o Red o fehlt auch noch !    | 
|  | 
| F34r0fTh3D4rk 
          Beiträge: 5284
 Erhaltene Danke: 27
 
 Win Vista (32), Win 7 (64)
 Eclipse, SciTE, Lazarus
 
 | 
Verfasst: Mi 14.12.05 15:09 
 
gibts schon wieder was neues, bin total auf den Bildimporter gespannt    | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: Mo 19.12.05 17:34 
 
Nein, ich hatte noch keine Zeit dafür, da der ASCII Designer nur ein Nebenprojekt ist (welches ich aber nicht vergesse). Doch es könnte noch etwas dauern, (vielleicht auch ein halbes Jahr...kA) bis ich mit bestimmten anderen Projekten an einem Punkt angelangt bin an dem ich sagen kann, dass die Projekte nun laufen und ich mich dem ASCII Designer widmen kann. Habe leider seit der Arbeit nicht mehr so viel Zeit wie früher bei der Schule   | 
|  | 
| F34r0fTh3D4rk 
          Beiträge: 5284
 Erhaltene Danke: 27
 
 Win Vista (32), Win 7 (64)
 Eclipse, SciTE, Lazarus
 
 | 
Verfasst: Mo 19.12.05 17:39 
 
oder du gibst den source frei    | 
|  | 
| Pr0g  
          Beiträge: 220
 
 
 D7 Pers
 
 | 
Verfasst: So 25.12.05 01:50 
 
	  |  F34r0fTh3D4rk hat folgendes geschrieben: |  	  | oder du gibst den source frei  | 
 Du hast dir das Projekt aber mal angesehen, oder? Dies hier ist die Sparte für "Open Source  Projekte" und im ersten Post von mir steht:
 	  | Pr0g hat folgendes geschrieben: |  	  | Hier nun der Download, das ganze ist unter der GPL lizensiert: .zip (~661Kb). | 
 Der Download enthält:
 Executable
Beispiele
Source
Dokumentation
PHP Source der Onlinegalerie
 Was willst du mehr   | 
|  | 
| F34r0fTh3D4rk 
          Beiträge: 5284
 Erhaltene Danke: 27
 
 Win Vista (32), Win 7 (64)
 Eclipse, SciTE, Lazarus
 
 | 
Verfasst: So 25.12.05 12:11 
 
ups, hatte ich ja ganz vergessen ^^ hab mir ja auch den source schon angesehen, sorry    siehe meinen post:
 												| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 25:
 26:
 27:
 28:
 29:
 30:
 31:
 32:
 33:
 34:
 35:
 36:
 37:
 38:
 
 | procedure CreateTextBox(Memo: TMemo; Txt: TStrings; EdgeChar, FrameChar, SideFrameChar: char);var
 i, max: Integer;
 str, frame: String;
 begin
 max := 0;
 with Memo do
 begin
 font.Name := 'fixedsys';
 for i := 0 to Txt.Count - 1 do
 if Length(Txt[i]) > max then
 max := Length(Txt[i]);
 Lines.BeginUpdate;
 Lines.Clear;
 Frame := EdgeChar + StringOfChar(FrameChar, max + 2) + EdgeChar;
 Lines.Add(Frame);
 for i := 0 to Txt.Count - 1 do
 begin
 str := Txt[i];
 if Length(str) < max then
 str := str + StringOfChar(' ', max - Length(str));
 str := SideFrameChar + ' ' + str + ' ' + SideFrameChar;
 Lines.Add(str);
 end;
 Lines.Add(frame);
 Lines.EndUpdate;
 end;
 end
 |  ^^ war wohl nicht ganz bei mir   | 
|  |