Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Do Jul 17, 2025 18:00

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 36 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3  Nächste
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 20, 2009 23:01 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Traude hat geschrieben:
Aya hat geschrieben:
PS: Wenn ich das ding hinbekomme, bestünde dann interesse daran das ich das als lib oder sonstwas rausgeb?

Wenns OpenSource ist - definitiv JA. An einer "verschlossenen" DLL hätte ich kein Interesse.
Traude


a) Wäre es wenn so oder so nur C++ source.
b) Würde ich es OpenSource machen, müßte ich viele teile meines cores OpenSource machen (z.B. Strings, Streams, Arrays etc).. und ich schreibe ja alles selber um eben grade diesem ganzen OpenSource Lizenz-krampf zu umgehen ;)

von daher.. wenn würde es eine DLL/SO werden, bzw für C++ auch gerne eine static-lib.. aber OpenSource nicht.

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Aug 21, 2009 12:19 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 18, 2004 16:45
Beiträge: 2623
Wohnort: Berlin
Programmiersprache: Go, C/C++
Dies macht allerdings es dann recht unlukrativ, Binäre Pakete sind ein ziemlicher Schmerzvolle Angelegenheit und entfernt sich auch von dem, was du selber damit vor hast. Binärpakete machen dann die, die nutzen wollten davon abhängig, wie oft du den Code kompilierst, für welche Platformen, mit welchen Flags und so weiter und selbst dann musst du dich immer noch mit einer Lizenz rum Kämpfen, da die Header File noch benötigt wird.

Es wäre sicherlich interessant, wenn es um embeded Hardware geht allerdings kann man da auch freetype nehmen, ich hab noch kein Gerät gehabt wo make nicht out of the box funktioniert hat. Verständlich, wenn man bedenkt, das es überall laufen muss, wo es Linux gibt, da es ein Bestandteil von Linux basierten Distributionen ist. Weshalb ich nicht wirklich verstehe, wieso das Rad neu erfindest und noch dazu dir die Arbeit es zu pflegen Aufhalst Ich würde das verstehen, wenn du mit den Code etwas bezwecken wolltest, was die anderen Lösung nicht bieten aber das ist mir hier nicht wirklich ersichtlich geworden.
Das ganze ist auch weniger schlimm, jeder soll machen was er für richtig hält aber das kann dir böse auf die Füße fallen, wenn du Patente, Urheberrechte oder Lizenzrechte verletzt, wie es z.B. Freetype schon mehr als einmal erlebt hat. Der Aufwand alle paar Monate und Jahre mal die Patente und Lizenzen gegen den eigenen Code zu prüfen wäre mir definitiv zu aufwändig. Gerade bei TrueTypeFont gibt es viele in Bezug auf Rasterisierung(ist ja nicht so als ich nicht auch schon über ein eigenen ttf loader und rasterizer gedacht und recherchiert hätte).

Viel interessanter finde ich da eher deine STL Implementierung, denn da kann man viel Zeit rein stecken um es wirklich schön hin zu bekommen und die STL von c++ ist recht mager, um es nett aus zu drücken. Für Karmarama hab ich ein neues Font Format vor, welches für OpenGL geignet ist(Vektoren,kubische/quadratische bezierkurven) ohne erst noch vorher den kram noch ewig zu verarbeiten(ttf inhalt interpretieren, mesh konstruieren, tesselieren) müssen. Um das nicht als eine Ansammlung an Kritik dar stehen zu lassen bleibt mir nur zu sagen, möge die hineingesteckte Energie/Zeit sich auszahlen.

_________________
"Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren"
Benjamin Franklin

Projekte: https://github.com/tak2004


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Aug 21, 2009 12:50 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
TAK2004 hat geschrieben:
Dies macht allerdings es dann recht unlukrativ, Binäre Pakete sind ein ziemlicher Schmerzvolle Angelegenheit und entfernt sich auch von dem, was du selber damit vor hast. Binärpakete machen dann die, die nutzen wollten davon abhängig, wie oft du den Code kompilierst, für welche Platformen, mit welchen Flags und so weiter und selbst dann musst du dich immer noch mit einer Lizenz rum Kämpfen, da die Header File noch benötigt wird.


Das stimmt allerdings, aber.. ich bin halt einfach kein Fan von OpenSource..
Bzw. vom Grundgedanken dahinter schon, aber ich hab zuviele Programmierer kennengelernt die sich an OpenSource einfach nur bedienen und dieses dann als ihr eigenes ausgeben. Das ist mir zwar auch relativ egal, aber stört schon.

Die 2 Hauptgründe für mich gegen OpenSource sind:

a) Ich möchte immer die absolute freiheit haben den code so anzupassen wie ICH ihn brauche.. das alles mache ich in meiner Freizeit für meine Projekte, da ist es mir egal ob andere meine Libs nutzen können oder nicht.. sobald ich aber etwas OS mache, müßte ich entweder das ganze einmalig OpenSource stellen und dann getrennt davon weiterarbeiten... oder alternativ immer alles was andere wünschen, ändern etc mit einbauen.. darauf hab ich keine lust :)

b) GPL und konsorten sind für mich der größte OS killer den es gibt..


Aber OpenSource ist ein langes Thema.. und ich hab einfach kein interesse daran :)

TAK2004 hat geschrieben:
Es wäre sicherlich interessant, wenn es um embeded Hardware geht allerdings kann man da auch freetype nehmen, ich hab noch kein Gerät gehabt wo make nicht out of the box funktioniert hat. Verständlich, wenn man bedenkt, das es überall laufen muss, wo es Linux gibt, da es ein Bestandteil von Linux basierten Distributionen ist. Weshalb ich nicht wirklich verstehe, wieso das Rad neu erfindest und noch dazu dir die Arbeit es zu pflegen Aufhalst Ich würde das verstehen, wenn du mit den Code etwas bezwecken wolltest, was die anderen Lösung nicht bieten aber das ist mir hier nicht wirklich ersichtlich geworden.


Mir geht es ja nicht zwingend darum das Rad neu zu erfinden.. klar kann ich auch FreeType weiter benutzen - werde ich auch erstmal eine zeit lang noch tun :)
Aber ich mag es einfach wenn alles ineinander greift.. im moment ist FT halt das einzige bei mir was aus der reihe tanzt.. alles andere basiert komplett auf meiner STL wenn du es so nennen magst.

Und zum anderen einfach die neugierde und herausforderung an neuen dingen :)

TAK2004 hat geschrieben:
Das ganze ist auch weniger schlimm, jeder soll machen was er für richtig hält aber das kann dir böse auf die Füße fallen, wenn du Patente, Urheberrechte oder Lizenzrechte verletzt, wie es z.B. Freetype schon mehr als einmal erlebt hat. Der Aufwand alle paar Monate und Jahre mal die Patente und Lizenzen gegen den eigenen Code zu prüfen wäre mir definitiv zu aufwändig. Gerade bei TrueTypeFont gibt es viele in Bezug auf Rasterisierung(ist ja nicht so als ich nicht auch schon über ein eigenen ttf loader und rasterizer gedacht und recherchiert hätte).


Das mit den Patenten stimmt natürlich - leider..

TAK2004 hat geschrieben:
Viel interessanter finde ich da eher deine STL Implementierung, denn da kann man viel Zeit rein stecken um es wirklich schön hin zu bekommen und die STL von c++ ist recht mager, um es nett aus zu drücken. Für Karmarama hab ich ein neues Font Format vor, welches für OpenGL geignet ist(Vektoren,kubische/quadratische bezierkurven) ohne erst noch vorher den kram noch ewig zu verarbeiten(ttf inhalt interpretieren, mesh konstruieren, tesselieren) müssen.


Ja.. die C++ STL ist nicht so das wahre... das war auch das was mich immer abgeschreckt hat bei C++ früher, die notwendigkeit unmengen fremder libs für jeden kleinkram zu brauchen... oder alternativ so monster sachen wie boost.

Deswegen war das erste was ich damals in C++ gemacht hab meine String-Klasse.. gefolgt von immer mehr Standard dingen.. :)

TAK2004 hat geschrieben:
Um das nicht als eine Ansammlung an Kritik dar stehen zu lassen bleibt mir nur zu sagen, möge die hineingesteckte Energie/Zeit sich auszahlen.

Diesen betrag hab ich ausnahmsweise mal positiv aufgefasst :P ^^

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Aug 21, 2009 13:23 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Aya hat geschrieben:
Die 2 Hauptgründe für mich gegen OpenSource sind:

a) Ich möchte immer die absolute freiheit haben den code so anzupassen wie ICH ihn brauche.. das alles mache ich in meiner Freizeit für meine Projekte, da ist es mir egal ob andere meine Libs nutzen können oder nicht.. sobald ich aber etwas OS mache, müßte ich entweder das ganze einmalig OpenSource stellen und dann getrennt davon weiterarbeiten... oder alternativ immer alles was andere wünschen, ändern etc mit einbauen.. darauf hab ich keine lust :)


Das hast du falsch verstanden. Als orginal Lizensgeber kannst du einen unter ABC-Lizens veröffentlichten Code auch unter einer anderen Lizens wiederveröffentlichen. Es ist ja deine Arbeit und du hast da alle Rechte dran.
Das ginge nur dann nicht, wenn andere etwas beitragen und du ihre Anteile mit unter einer anderen Lizens veröffentlichen wölltest. (Außer sie stimmen dem alle zu).

Und du musst fremden Code ja nicht mit in deinen Aufnehmen. Gibts ja viele Beispiele, wo es mehrere Entwicklungsstränge aus einem Orginalcode heraus gibt.

Kurz: An deinem Code kannst du dir selbst nicht die Rechte nehmen. ;)

Aya hat geschrieben:
b) GPL und konsorten sind für mich der größte OS killer den es gibt..


Stimme hier auch zu. Ich vermeide GPL/LGPL wo immer möglich. Sowas kommt mir nicht ins Package. ;)

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Aug 21, 2009 15:32 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 01, 2003 18:59
Beiträge: 887
Wohnort: (The Netherlands)
Programmiersprache: fpc/delphi/java/c#
Phew is was already afraid it would become gpl. Do consider mpl though or make it public domain. Or best http://www.opensource.org/licenses/mit-license.php as that sould be compatible with al other licenses someone would like to use for their own.

But unough about licenses, how is your progress reading the glyphs?

_________________
http://3das.noeska.com - create adventure games without programming


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Aug 21, 2009 15:51 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
noeska hat geschrieben:
But unough about licenses, how is your progress reading the glyphs?


Haven't worked on it the last 2 days.. I just decided to go to the Gamescom this Weekend and had to do my Cosplay for this :)
Sunday I'll go on working on the TTF stuff.

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 25, 2009 11:15 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
So,

hab mich Sonntag und gestern abend nochmal hingesetzt an das TTF problem.. :)

Die TTF datei kann ich nun komplett einlesen und mir auch von jedem beliebigen Glypen die outline besorgen und selbst zeichnen.
Da es ja beim Rastern diverse Patente gibt hab ich mir gedacht, ich erspar mir hier die mühe und nehm den Standalone Rasterer von Freetype den ich zufällig entdeckt hatte :)

Nachdem ich dann die 2 abende hauptsächlich damit verbracht habe rauszubekommen wie man diesen Rasterer benutzt (er ist nicht dokumentiert) hab ich es gestern abend dann endlich hinbekommen ^_^

Das ganze ist jetzt sogar noch schneller als es vorher war, denn jetzt geb ich dem rasterer direkt mein Bitmap objekt zum draufzeichnen.. früher hat er mir ein Freetype Bitmap gegeben welches ich dann in mein eigenes reinkopieren mußte.

Und der andere vorteil.. dadurch das ich jetzt selbst die Outline berechne (die outline übergebe ich dann dem FT Rasterizer), könnte ich auch ziemlich unprolematisch geometrie aus den Schriftzeichen erzeugen :)


Damit hab ich also jetzt mit nicht allzuviel aufwand (ca. 4-5 abende á 3-4h) Freetype mehr oder weniger verbannt für mich :)
Und habe alles gut strukturiert und übersichtlich untergebracht so das es in mein restliches core-conzept passt.


Nur mit dem veröffentlichen wird es jetzt problematisch da ich ja den Standalone rasterizer benutze..

Aya


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 25, 2009 11:44 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 01, 2003 18:59
Beiträge: 887
Wohnort: (The Netherlands)
Programmiersprache: fpc/delphi/java/c#
But if you render the outlines as geometry you do not need the rasterizer? How about an version without an raserizer?

_________________
http://3das.noeska.com - create adventure games without programming


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 25, 2009 13:23 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Aya hat geschrieben:
Nur mit dem veröffentlichen wird es jetzt problematisch da ich ja den Standalone rasterizer benutze...
Ich kann da kein Problem entdecken:

FreeType hat die freizügigste Lizenz, die man sich nur vorstellen kann: http://freetype.sourceforge.net/license.html
Siieh Dir mal die obere von den beiden möglichen Lizenzen an. Das ist eine BSD-ähnliche Lizenz, die im Wesentlichen sagt: "Macht damit, was ihr wollt, aber wir garantieren für nichts."

Diese Lizenz erlaubt auch, nur Teile des FreeType-Codes zu verwenden.

Die einzige Einschränkung: FreeType will in den Credits genannt werden. Wenn Dich das nicht stört, dass Du sagen musst: "Powered By FreeType", dann kannst Du damit machen, was Du willst.

"Powered By FreeType" hört sich übrigens gut an, find ich. Sollte ich die Auswahl zwischen zwei Programmen unbekannter Herkunft haben, und eines davon sagt mir "Powered By FreeType", dann wüßte ich schon, welches ich nehmen würde. Freetype hat aber nicht nur einen guten Namen, sondern das bloße Verwenden von Freetype bietet auch rechtlichen Schutz.

Denn die Alternativen wären:

1. Du machst es selbst, und schreibst auch wirklich den Code selber. Das wär ein Risiko sowohl für Dich als auch für Deine Kunden: Du hast das Risiko einer Klage für Produkte, die in den USA angeboten werden und Deine Kunden müssen sich ein neues Programm suchen. Die Sache mit den Lizenzen ist vielleicht jetzt uninteressant, aber reden wir in fünf Jahren nochmal drüber. Spiele sollten international fit sein, Europa ist ein bisschen klein.

2, Du versteckst einfach den FreeType-Code in Deinem Code und kannst im Falle von Problemen immer beweisen, dass Du eine lizenzfreie Technik verwendest. FreeType wird wohl kaum was gegen Dich unternehmen. Aber das ist nicht grade das, was ich als die feine englische Art bezeichnen würde. ("Powered By FreeType" tut echt nicht weh!)

3. Du suchst Dir eine andere unabhängige Font-Library. Kennst Du eine? Ich nicht.

Viele Grüße,
Traude


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 25, 2009 13:35 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hi,

klar stimmt schon.. ich könnte es einfach mit dem rasterizer von freetype veröffentlichen..

Aber, da komme ich dann wieder doch an das Problem das ich teile meines cores veröffentlichen müßte, die ich eigentlich nicht veröffentlichen will..
Zumal ihr hier ja sowieso nur OpenSource wollt, und das gibt es bei mir in dem falle nicht, sorry ;)

Es ist ja auch "nur" der TTF Loader jetzt wirklich von mir, und der war nicht wirklich schwer.. hier und da ein paar kleine scherereien mit einer ungenauen dokumentation, aber im großen und ganzen recht problemlos..

Auch habe ich es bisher nur mit den Schriftarten die ich so verwende getestet (Arial, Arial Unicode, Tahoma, etc).. es gibt sicher noch einige wo ich die Format-Tabelle noch nicht implementiert habe für. Aber das ist halt das problem.. ich für mich brauche es nicht anders, also mache ich es auch nur so :)


Was ich anbieten kann wäre den code für das laden vom TTF hier zu posten, aber ob das soviel bringt weiß ich auch nicht.. verwenden könnte ihn niemand ohne ihn zu modifizieren da er halt Strings, Streams und Bitmaps von meinem Core benutzt. Da wäre es denke ich sinnvoller das ich einfach - falls jemand auch mal nen TTF Reader bauen will mit rat und tat zu seite stehe :)

Oder wie seht ihr das?

Aya~

PS: Wiese besteht denn eigentlich interesse daran? Freetype selbst ist viel ausgereifter als meine variante.. und eine Fremdlib holt ihr euch mit beidem ins haus.. wieso also nicht die umfangreichere, bessere nutzen? ^^


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 25, 2009 14:05 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Finde ich gut, das mit dem Rat und Tat.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 27, 2009 20:32 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hi,

ein kleines problem habe ich noch mit den TrueType Fonts... bzw. 2.

1) in der glyf-tabelle gibt es einen part "Instructions" der auch mit anderen tabellen ("cvt", "fpgm" und "prep") irgendwie zusammenhängt... aber ich verstehe zum einen nicht was diese instructions sein sollen, und zum anderen finde ich absolut nichts dazu wie man die verwendet..

2) Ich habe jetzt eine outline im em-space (glaube ich)... wie wandel ich das in die standard schriftgrößen um? Also welcher schriftgröße entspricht 1em..?

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 27, 2009 21:02 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Möglicherweise hilft das hier in Bezug auf Punkt 1 weiter:

1. http://home.kabelfoon.nl/~slam/fonts/tticomp/introduction.html

oder auch:

2. http://www.microsoft.com/typography/SpecificationsOverview.mspx


Kleine Zusatzinfo: das habe ich gefunden beim googeln nach: "True type file format instruction"


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 27, 2009 21:08 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jan 04, 2008 21:29
Beiträge: 419
Wohnort: Lübeck
ich denke diese Erklärung wird dir helfen: http://en.wikipedia.org/wiki/Em_(typography)
Edit: merkwürdig, mein post wird leer angezeigt!?
Edit2: gnz komisch, das (typography) gehört natürlich mit zum link...

Edit Lossy: Link angepasst.

_________________
Klar Soweit?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 27, 2009 22:18 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Mhh... ich hab noch das hier zu den instructions gefunden:
http://developer.apple.com/textfonts/TT ... Chap5.html

Da scheint mehr oder weniger ne komplette scriptsprache in den TTFs zu stecken :shock:
Ich glaube das werde ich dann doch einfach mal still schweigend ignorieren und damit leben das die ein oder andere Font nicht 100% traumhaft schön perfekt dargestellt wird..


Bleibt noch das problem mit der Schriftgröße..

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 36 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3  Nächste
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.012s | 15 Queries | GZIP : On ]