5. August 2008
In dem Qt SDK der Firma Trolltech gibt es große Möglichkeiten durch enthaltene Widgets. Es ist jedoch auch möglich sehr einfache neue Widgets zusammen zu stellen. Wir habe hier einmal ein neues sehr einfaches Widget für die gewählte Farbe erstellt, welches direkt zur Farbwahl über den nativen ColorPicker-Dialog des jeweiligen Betriebssystems verwendet werden kann:

Es wird anstelle eines Icons, wie sonst, ein Icon in der aktuell gewählten Farbe erstellt, welches angezeigt wird. Der größte Vorteil dieses Widgets ist eine Zusammenfassung mehrerer verständlicher Funktionen zu einem Element.
Vor allem ist aber die Verwendung in sehr wenigen Zeilen, wie bei Qt-Widgets üblich, gegeben:
-
#include <QColorButton.h>
-
-
QColorButton *btn = new QColorButton( widget );
-
btn -> setText( "Mit eigenem Text ohne ToolTip" );
-
btn -> enableColorText( false );
-
btn -> enableToolTip( false );
Download: /examples/qcolorbutton-0.1.tar.gz (2,2 KB)
Vielleicht dürfen wir für Sie einmal ein spezielles Qt-Widget erstellen? Für weitere Fragen stehe ich Ihnen natürlich jederzeit gerne zur Verfügung. Natürlich erreichen Sie mich telefonisch und über meine eMail-Adresse.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: color, colordialog, colorpicker, doxygen, eigenes qt widget, farbdialog, farbe, farbwähler, qt, trolltech, widget
Veröffentlicht in c++, qt, widget | Keine Kommentare »
16. Juni 2008
Durch das Entwickeln von neuer Software kann es nötig sein, auf Wünsche und Fähigkeiten der Mitarbeiter einzugehen. Es wird dadurch möglich, effizienter zu arbeiten und teilweise Kosten für die Einarbeitung zu sparen. Wir nennen es “Kostenreduzierung durch Neuentwicklung”.
Es handelt sich dabei um eine sehr einfache mathematische Aufgabe. Wenn Ihre Mitarbeiter sehr viel Zeit benötigen um “eigentlich” einfache oder bekannte Abläufe zu durchlaufen oder sie mit dem “Handling” einer Software nicht so gut zurecht kommen, da besonders viele Einstellungen oder viele Eigenschaften vorhanden sind, dann sollte man das gesamte Programm in Zahlen umsetzen und errechnen, was man in Zukunft für die Steigerung der Effizienz unternehmen kann.
Folgendes Beispiel möchte ich Ihnen vorstellen:
Sie haben fünf Mitarbeiter an einem System, welche bestimmt 60 Minuten pro Tag durch eine schlecht verständliche Software verlieren. Außerdem sind die Abläufe nicht wunschgemäß und halten noch einmal bei der Ablage auf.
Entschließen Sie sich nun also diese Zeit zu sparen, dann wäre das bei einem Stundensatz von 60 Euro bereits 20 Tage/Monat * 5 Mitarbeiter * 1 Stunde bzw. 6.000 Euro/Monat. Anders ausgedrückt, jeder Mitarbeiter leistet nur 7/8 bzw. 75% seiner eigentlichen Arbeitsleistung, die durch eine neue Software in Eigenentwicklung und betriebliche Anpassung um 25% gesteigert werden kann. Natürlich variiert diese Berechnung, je nach dem, wie viele Mitarbeiter oder wie ineffizient eine Software wirklich ist. Wichtig ist auch, der Umfang einer solchen Software. Dafür kann man pauschal natürlich keine Angaben machen, aber wir erstellen Ihnen hierzu gerne jederzeit ein Angebot und übernehmen die Kalkulation für Sie.
Vielleicht dürfen wir für Ihr Unternehmen einmal eine Steigerung der Effizienz Ihrer Software durchführen. Für weitere Fragen stehe ich Ihnen natürlich jederzeit gerne zur Verfügung. Natürlich erreichen Sie mich telefonisch und über meine eMail-Adresse.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: datenbank, datenmigration, development, effizienz, einsparen, einsparung, kosten reduzieren, kosteneffizienz, kostenreduziert, kostenreduzierung, migration, nachher, neuentwicklung, qt, software, softwareentwicklung, vorher
Veröffentlicht in c++, datenbank, qt | Keine Kommentare »
6. Juni 2008
Was sind eigentlich Particular Attributes? Darunter versteht man Attribute in einer Webseite, die spezielle Werte aufweist. Es ist eine unbekanntere Form bei der CSS-Formatierung, da wesentliche Bestandteile auch erst mit CSS 3 vollständig unterstützt werden. Die nahmhaften Browser ab Internet Explorer 7, sowie Firefox, Opera und Safari beherrschen diese Funktion allerdings schon vollständig.
Folgende Formen der Particular Attributes gibt es:
1. Attribute mit Wert
Element[Attribute]
Das Element enthält ein Attribute mit einem Wert.
-
<!– Beispiel - der Link, der das Attribute href enthält bekommt einen grünen Rahmen –>
-
<style>
-
#test1 a{border:1px solid red;padding:5px}
-
#test1 a[href]{border:1px solid green}
-
</style>
-
<div id="test1"><a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt" target="_blank">Pyades (CSS zutreffend)</a> <a href="http://www.imagy.com" title="Stock Photo Community - Kaufen und verkaufen Sie Ihre Bilder" target="_blank">Imagy (CSS ebenfalls zutreffend)</a></div>
-
<a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt">Pyades</a>
2. Attribute mit bestimmten Wert
Element[Attribute="Wert"]
Das Element enthält ein Attribute mit einem bestimmten Wert.
-
<!– Beispiel - der Link, der als href genau den Wert "http://www.pyades.com" hat, erhält einen grünen Rahmen –>
-
<style>
-
#test2 a{border:1px solid red;padding:5px}
-
#test2 a[href="http://www.pyades.com"]{border:1px solid green}
-
</style>
-
<div id="test2"><a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt" target="_blank">Pyades (CSS zutreffend)</a> <a href="http://www.imagy.com" title="Stock Photo Community - Kaufen und verkaufen Sie Ihre Bilder" target="_blank">Imagy (CSS greift nicht)</a></div>
3. Attribute beginnt mit einem bestimmten Wert
Element[Attribute^="Wert"]
Das Element enthält ein Attribute, welches mit einem bestimmten Wert beginnt.
-
<!– Beispiel - der Link, der als href mit dem Wert "http://" beginnt, erhält einen grünen Rahmen –>
-
<style>
-
#test3 a{border:1px solid red;padding:5px}
-
#test3 a[href^="http://"]{border:1px solid green}
-
</style>
-
<div id="test3"><a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt" target="_blank">Pyades (CSS zutreffend)</a> <a href="http://www.imagy.com" title="Stock Photo Community - Kaufen und verkaufen Sie Ihre Bilder" target="_blank">Imagy (CSS ebenfalls zutreffend)</a></div>
4. Attribute endet mit einem bestimmten Wert
Element[Attribute$="Wert"]
Das Element enthält ein Attribute, welches mit einem bestimmten Wert endet.
-
<!– Beispiel - der Link, der als href mit dem Wert ".com" endet, erhält einen grünen Rahmen –>
-
<style>
-
#test4 a{border:1px solid red;padding:5px}
-
#test4 a[href$=".com"]{border:1px solid green}
-
</style>
-
<div id="test4"><a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt" target="_blank">Pyades (CSS zutreffend)</a> <a href="http://www.imagy.com" title="Stock Photo Community - Kaufen und verkaufen Sie Ihre Bilder" target="_blank">Imagy (CSS ebenfalls zutreffend)</a></div>
5. Attribute enthält einen bestimmten Wert
Element[Attribute*="Wert"]
Das Element enthält ein Attribute, welches einem bestimmten Wert enthält.
-
<!– Beispiel - der Link, der als href den Wert "pyades" enthält, erhält einen grünen Rahmen –>
-
<style>
-
#test5 a{border:1px solid red;padding:5px}
-
#test5 a[href*="pyades"]{border:1px solid green}
-
</style>
-
<div id="test5"><a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt" target="_blank" >Pyades (CSS zutreffend)</a> <a href="http://www.imagy.com" title="Stock Photo Community - Kaufen und verkaufen Sie Ihre Bilder" target="_blank">Imagy (CSS greift nicht)</a></div>
6. Sonstige Attribute
Es gibt noch zwei weitere Particular Attributes, auf die ich allerdings nur am Rande eingehen möchte:
~= ist ein Wert, aus einer durch Leerzeichen getrennte Liste: “Wert1 Wert2 Wert3″ und
|= ist ein Wert, aus einer durch | getrennten Liste: “Wert1|Wert2|Wert3″
7. Bekannteste Anwendung
Die bekannteste Anwendung ist die Kennzeichnung von externen Links.
-
<style>
-
#test6 a[href^="http://"]{background:url(/examples/offsite.gif) no-repeat scroll right center;padding-right:8px;}
-
#test6 a[href^="http://www.pyades.com"]{background:transparent;padding-right:0px;}
-
</style>
-
<div id="test6"><a href="http://www.pyades.com" title="C++ Softwareentwicklung Qt" target="_blank">Pyades (interner Link)</a> <a href="http://www.imagy.com" title="Stock Photo Community - Kaufen und verkaufen Sie Ihre Bilder" target="_blank">Imagy (externer Link)</a></div>
Seiten, wie Wikipedia oder Dr. Web nutzen diese Technik bereits seit einiger Zeit.
Vielleicht darf ich Sie einmal bei einer innovativen Webentwicklung oder besonderem Webdesign helfen? Wenn Sie weitere Fragen haben, würde ich mich über Ihren Anruf freuen. Sie erreichen mich natürlich auch per eMail. Ich nehme mir sehr gerne ein wenig Zeit für Ihre Fragen.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: attributes, besondere eigenschaft, css, dokumentation, element, externe links, firefox, howto, html, ie7, internet explorer 7, links kennzeichnen, opera, particular, particular attributes, safari, webdesign, webentwicklung
Veröffentlicht in css, html | Keine Kommentare »
30. Mai 2008
Es handelt sich um ein generelles Thema in der Anwendungsprogrammierung. Ausgaben grafisch sichtbar machen und für statistische Zwecke oder Verbesserungsmöglichkeit der Software nutzen. Es bestehen immer viele Lösungsansätze, wovon ich die einfachsten in reinem C++ unter Qt aufgearbeitet habe. Natürlich ist es mit C++ nicht unbedingt eine grafische Ausgabe, als vielmehr eine Ausgabe auf der Konsole (Shell, Unix-Shell, MS DOS Eingabeaufforderung, Bash usw. - Begriffe dafür gibt es genügend).
1. Eine einfache Ausgabe in C++ wird unter Umständen so aussehen:
-
/* stl header */
-
#include <iostream>
-
/* default stl namespace */
-
using namespace std;
-
/* simple not-graphical output in stl code */
-
cout << "testoutput" << endl;
Unter Verwendung des standardmäßigen Namespaces der STL erhalten wir die Ausgabe “testoutput”, mit “endl” (End of Line) definieren wir das Ende sowie einen Zeilenumbruch.
2. Unter der Verwendung von Qt erhalten wir ein ähnliches Ergebnis, allerdings einen Tick kürzer als mit der STL:
-
/* qt header */
-
#include <QtDebug>
-
/* simple not-graphical output in qt code */
-
qDebug() << "testoutput";
Beide Beispiele laufen problemlos unter allen Betriebssystemen, darunter natürlich auch Mac OS X 10.5 alias Leopard.
Um die Ausgabe jetzt grafisch zu gestalten, nehmen wir uns ein Oberflächenelement (Widget) von Qt zur Hilfe, und zwar eine Textausgabe. Es handelt sich um die Klasse QTextEdit.
3. Grafische Ausgabe mit QTextEdit unter Leopard:
-
/* qt header */
-
#include <QTextEdit>
-
/* create a textedit */
-
QTextEdit *myTextEdit = new QTextEdit;
-
/* show textedit */
-
myTextEdit -> show();
-
/* append text to textedit */
-
myTextEdit -> append( "testoutput" );
Generell benötigen wir kaum mehr Code und unser Ergebnis sieht wie folgt aus:

Wir können es natürlich noch in der Reihenfolge verändern, bzw. einen Titel mit setWindowTitle oder ein Icon mit setWindowIcon hinzufügen. Aber verschönern kann man GUI-Elemente natürlich immer.
Damit wir nun eine sinnvolle Aufgabe vergeben, geben wir die Fehler/Meldungen von Qt in unserem Textedit aus (hierfür benötigen wir zu Beginn eine Funktion, die bei einer Meldung immer wieder ausgeführt wird - “Callback” genannt). Es handelt sich um die vollständige Main-Funktion zum Starten einer Anwendung. Dieses Beispiel steht Ihnen nach dem Quelltext zum Download zur Verfügung.
4. Grafische Ausgabe von Qt-Meldungen mit QTextEdit unter Leopard:
-
/* qt header */
-
#include <QApplication>
-
#include <QTextEdit>
-
-
/* our textedit */
-
static QTextEdit *myTextEdit;
-
-
void myMessageOutput( QtMsgType type, const char *msg ) {
-
switch ( type ) {
-
/* a debug message */
-
case QtDebugMsg:
-
/* append a message */
-
myTextEdit -> append( QString( "Debug: %1" ).arg( msg ) );
-
break;
-
/* a warning message */
-
case QtWarningMsg:
-
/* append a message */
-
myTextEdit -> append( QString( "Warning: %1" ).arg( msg ) );
-
break;
-
/* a critical message */
-
case QtCriticalMsg:
-
/* append a message */
-
myTextEdit -> append( QString( "Critical: %1" ).arg( msg ) );
-
break;
-
/* a fatal message */
-
case QtFatalMsg:
-
/* append a message */
-
myTextEdit -> append( QString( "Fatal: %1" ).arg( msg ) );
-
abort();
-
}
-
}
-
-
int main( int argc, char **argv ) {
-
/* install qt message handler */
-
qInstallMsgHandler( myMessageOutput );
-
/* add application instance */
-
QApplication app( argc, argv );
-
/* create a textedit */
-
myTextEdit = new QTextEdit;
-
/* show the textedit */
-
myTextEdit -> show();
-
/* return the application instance and run in idle mode */
-
return app.exec();
-
}
Download: /examples/mytextedit-0.1.tar.gz (716 Bytes)
Sie benötigen eine Softwareprogrammierung mit Oberflächenelementen in zeitgemäßem Design? Nehmen Sie doch einfach telefonisch oder per eMail mit mir Kontakt auf. Ich freue mich über Ihre Projektanfragen. Bitte beachten Sie, dass hier oft nur sehr einfache Beispiele verwendet werden, die die Allgemeinheit verständlicher findet als komplexe Softwareentwicklung unter Qt. Allerdings veröffentliche ich auch solche von Zeit zu Zeit (gerne auch nach Anregung).
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: bash, c++, console, debugausgabe, eingabeaufforderung, grafische ausgabe, leopard, mac, mac os x, qt, qtextarea, shell, stl, trolltech, unix, vista, windows, xp
Veröffentlicht in c++, qt | Keine Kommentare »
24. Mai 2008
Als Empfänger gestalteter eMails mit grafischen Inhalten kennen wir das. Die verwendeten Bilder werden über das Internet nachgeladen (und häufig gesperrt, oder es ist eine weitere Erlaubnis zu erteilen) oder man sieht die Bilder im Anhang, wie sie sich mit anderen Anhängen vermischen und somit störend sind.
In beinahe jedem eMail-Client ist es aber möglich, Bilder so in den Text zu integrieren. Man nennt das auch einbetten oder embedden, wie man das im Englischen bezeichnet.
Die Prozedur ist so einfach und besticht doch durch einen so großen Effekt. Gerade einmal zwei wichtige Punkte sind bei Mozilla Thunderbird zu beachten, um Bilder in eine eMail einzubinden. Einfach in vier Schritten erklärt ergibt sich folgendes:
1. Schritt - Neue eMail schreiben

Starten Sie das Schreiben einer neuer eMail.
2. Schritt - Bild als HTML einfügen

An der aktuellen Textstelle wird ein Bild eingefügt.
3. Schritt - Option “Dieses Bild an die Nachricht anhängen” auswählen

Bitte vergewissern Sie sich, dass Sie die Option “Dieses Bild an die Nachricht anhängen” ausgewählt haben. Sollte das Bild nicht mitgeliefert werden, oder der Empfänger keine HTML-Ansicht haben, wird der Alternativtext angezeigt.
4. Schritt - Überprüfen, ob die eMail auch wirklich als HTML-eMail verschickt wird

Mit der Auswahl des Formates können wir nun die Erstellung der eMail abschließen. Beim Versenden und Testen werden Sie feststellen, dass wir ein Bild in die eMail eingebettet haben. Es ist nicht als Anhang sichtbar.
Multimediale Anhänge wie Flash, oder Musikdateien (oder alle anderen Attachments) zu embedden ist generell möglich. Durch bestimmte Einschränkungen, wie das Nichtvorhandensein eines Flashplayers oder eines Musikplayers ist es jedoch eine eher nicht sinnvolle Methode. Außerdem wird Sie von fast keinem eMail-Client unterstützt. Eine Lösung über eine externe, nachzuladene Webseite trifft es hier besser. Es ist oft die Frage, was genau man erreichen möchte.
Wenn Sie weitere Fragen in Bezug auf das Versenden von speziellen eMails haben, stehe ich Ihnen natürlich gerne als Ansprechpartner zur Verfügung. Ich freue mich, wenn Sie mit mir Kontakt aufnehmen, gerne auch via eMail. Vielleicht kann ich Ihnen ja auch den Wunsch erfüllen eine Information zu Mac Mail mit oder nicht mit eingebetteten Bildern zu verwenden.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: anhänge, attachment, bild email, einbetten, eingebettet, email, embed, embedded, flash, grafische email, html, html mail, htmlnachricht, mac mail, mimemail, multimedia, musik, spezielle email, thunderbird
Veröffentlicht in email, html, thunderbird | Keine Kommentare »
18. Mai 2008
Mit Google Maps ergeben sich neue Möglichkeiten für die Darstellung von Inhalt an festgelegten Positionen. Das Schwierigste ist dabei generell die Position korrekt zu bestimmen und zu verwenden. Mit der folgenden Darstellung haben Sie eine Positionssuche, sowie eine Vorschau des erstellten Inhalts, der außerdem per Drag and Drop auf der Karte gesetzt werden kann. Es werden dann die exakten Koordinaten ausgegeben, die dann später weiter verarbeitet werden können um eine Gesamtansicht der Landkarte zu erstellen. Es ist auch möglich diesen selbst erstellten Inhalt dann in das System auf Google Maps zu integrieren.
Mit einem Umstieg auf die AJAX API von Google ergibt sich nun die Möglichkeit, den Maps-Bestandteil zu jeder Zeit an jeder beliebigen Position in einem HTML-Dokument einzubinden. Es wurde weiterhin der Drag und Drop Funktionalität viel Aufmerksamkeit geschenkt. Sie können jetzt einfach nach der ersten Suche irgendwo hinklicken und die neue Position wird gewählt. Ebenso können Sie das Bild einfach verschieben.
Fehlerbereinigungen und Verbesserungen in der neuen Version 0.2:
- Vollständige Umstellung auf Google AJAX API
- Drag und Drop verbessert
- Fehler des Informationsfensters bereinigt
- Schatten verbessert, besseres Kontrastverhältnis
Probieren Sie es hier doch gleich einmal aus:
Download: /examples/google.maps.position-0.2.tar.gz (30,7 KB)
Eine Anleitung für die eigene Installation finden Sie im Download. Durch die gelieferte Dokumentation ist es einfach diese Anwendung für jeden bedarfsgerecht einzubinden.
Sollten Sie eine Implementierung von Google Maps wünschen, würde ich mich über einen Anruf freuen. Ich beherrsche die vollständige Anbindung und kann Ihnen auch gerne persönlich einmal die Möglichkeiten der Verwendung erläutern. Sie können mir natürlich auch eine eMail schreiben.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: ajax api, d'n'd, drag, drag and drop, drag und drop, drag'n'drop, drop, google maps, googlemaps, karte, koordinaten, landkarte, map, maps, positionierung, positionssuche
Veröffentlicht in ajax, google, maps | Keine Kommentare »
25. April 2008
Sicherlich kommt es Ihnen bekannt vor: Das Layout des Designer ist absolut treffend, aber bei der Umsetzung der Seite gibt es massive Unterschiede in den Schriften.
Der Webbrowser kann immer nur Schriften darstellen, die auf dem eigenen System installiert sind. Da es allerdings bei allen Systemen unterschiedliche Schriften gibt, greift der Browser auf eine Alternative zurück, bzw. die Webseiten werden direkt mit websicheren Schriften erstellt.
Durch das dynamische Erstellen von Schriften, in Form von Bildern, können Sie Ihr Design absolut perfekt im Internet nachbilden. Es werden außerdem mehrsprachige Inhalte unterstützt. Der einzige Nachteil, die Erstellung benötigt eine höhere Rechenleistung als eigentlicher Text (Es kann durch ein intelligentes temporäres Auslagern verhindert werden). Was allerdings bleibt, ist ein höheres Datenaufkommen, durch Bandbreiten ab 1 MBit ist das allerdings zu vernachlässigen. Zumal die Bilder auf die eigene Festplatte ausgelagert werden.
Ich stelle Ihnen heute ein Skript vor, welches direkt und einfach als Bild eingebunden werden kann, aber alle Schriftarten darstellen kann. Es handelt sich um eine Implementierung unter Verwendung von IMagick aus den PHP Bibliotheken.
Die Einbindung erfolgt folgendermaßen:
-
<img src="/examples/fonty.php?t=Beispiel" alt="Beispiel" />
Als Resultat erhalten wir folgende Ausgabe:

Ich habe für das Beispiel die Schriftart Visitor verwendet. Als weitere Optionen können noch die Vordergrundfarbe, die Hintergrundfarbe und die Schriftgröße übergeben werden.
Als Beispiel für eine Größe von 20pt mit blauem Hintergrund und weißer Schriftfarbe:
-
<img src="/examples/fonty.php?t=Beispiel&c=ffffff&b=0066CC&s=20" alt="Beispiel" />
Als Ausgabe erhalten wir folgendes Bild:

Natürlich ist das Skript erweiterbar z.B. durch das Verwenden von mehreren Schriftdateien, oder durch das Benutzen von Verläufen und eben alles was grafisch möglich ist. Die Standardwerte können angepasst werden, um es an persönliche Vorstellungen anzugleichen. Folgende optionale Werte können belegt werden:
-
/* configuration */
-
/* allowed referer - else, everyone can generate images over your server */
-
$referer = array( "localhost", "127.0.0.1", "pyades.com", "devqt.com", "imagy.com" );
-
/* default string */
-
$string = "pyades technologies gmbh";
-
/* max string len */
-
$maxStringLen = 24;
-
/* default font point size */
-
$size = 12;
-
/* maximal font point size possible */
-
/* note: a size like 1000pt can slow down or even break the server */
-
$maxSize = 20;
-
/* default font color */
-
$color = "#000000";
-
/* default background color */
-
$background = "transparent";
-
/* image comment */
-
$comment = "imagy.com by Pyades Technologies GmbH";
-
/* the font for writing */
-
$font = "visitor.ttf";
-
/* type of image - also possible, whatever Imagick can use */
-
$imageType = "png";
Durch das Nutzen von $referer haben Sie die Möglichkeit, die Bildausgabe auf bestimmte Hosts zu begrenzen, damit Ihr Server nicht unnötig belastet wird, falls es sich ein anderer zu eigen macht. In einer späteren Anpassung wird eine weitere Sicherung in Form der IP-Adresse oder sogar in Form von Cookies denkbar sein. Ich halte Sie natürlich wie immer auf dem Laufenden.
Download: /examples/fonty-0.1.zip (10,6 KB)
Sollten Sie eine Abwandlung benötigen, oder möchten Sie es in Ihre Webseite integriert haben? Dann sprechen Sie mit mir, wir werden unter Garantie eine Lösung finden. Haben Sie weitere Fragen? Dann rufen Sie mich doch an, oder schreiben Sie mir einfach eine eMail.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: bild generieren, fonts, fonty, grafik, imagick, layout, php, schrift, schriftart, schriften, schriften im web einbinden, true type fonts, webdesign
Veröffentlicht in bilder, php, schriften | Keine Kommentare »
9. April 2008
In geschäftlichen Signaturen werden gerne Firmenlogos oder sogar das persönliche Foto mitversandt. Oft findet man das Bild dann im Anhang und nicht innerhalb des Textes, aber als weitaus wichtigere Anwendungsmöglichkeit, kann die MimeMail Klasse in einem Newsletter System eingebunden werden. Für die Bearbeitung steht dann ein Feld, für eine Textnachricht, und eines für eine HTML-Nachricht zur Verfügung. Als letztes werden alle nötigen Bilder entsprechend eingebettet. Dazu ist es abschließend noch möglich, wirkliche Anhänge der eMail anzufügen und dann an beliebig viele Empfänger zu versenden.
Folgende Vorteile bietet die PHP MimeMail Klasse:
- Versenden einer textbasierten eMail
- Versenden einer HTML-basierten eMail
- Einbetten von Bildern
- Weitere sonstige Anhänge
- Alle diese Funktionen auch kombiniert
- Kopfinformationen können manipuliert bzw. ergänzt werden
- Priorität einer eMail setzen
Die wohl größten Vorteile bestehen darin, dass ein nicht HTML-fähiger MailClient nur die Textvariante anzeigt, dass in HTML-eMails alle Dateien eingebettet sind und nicht extern von einem evtl. blockierten Server nachgeladen werden müssen. Mit den gängigsten eMail-Programmen wurde das Script getestet, unter anderem Mozilla Thunderbird, Opera Mail, Microsoft Outlook, Microsoft Mail, KMail, Mac Mail.
Hier möchte ich Ihnen noch zeigen, wie einfach eine Implementierung ist. Bereits wenige Zeilen Quelltext reichen aus, um die Klasse zu verwenden:
-
/* neue MimeMail erstellen */
-
$mime = new MimeMail();
-
/* Absender der eMail setzen */
-
$mime -> setSender( "$name <$email>" );
-
/* Empfänger der eMail setzen */
-
$mime -> setRecipient( "$name <$email>" );
-
/* Betreff setzen */
-
$mime -> setSubject( $subject );
-
/* Evtl. noch einen neuen Header hinzufügen */
-
$mime -> addHeader( "Organization", "Pyades Technologies GmbH" );
-
/* Priorität der eMail setzen */
-
$mime -> setPriority( "3" );
-
/* HTML-Bereich setzen */
-
$mime -> setHtml( $html );
-
/* eingebettete Dateien hinzufügen - durch die <img src="cid:file1@pyades.com"/> werden die korrekten Bilder zugewiesen - die IDs sind fortlaufend */
-
$mime -> addEmbeddedAttachement( $file, $mimetype );
-
/* Einfachen Textbereich setzen */
-
$mime -> setPlain( $plain );
-
/* weitere Attachments hinzufügen */
-
$mime -> addAttachment( $file, $mimetype );
-
/* Die eMail verschicken */
-
$mime -> sendMimeMail();
Außerdem finden Sie eine genauere Beschreibung der Funktionen in der Datei.
Download: /examples/mimemail.zip (2 KB)
Bei Fragen zu einem Newslettersystem oder zu der beschriebenen Klasse freue ich mich über Ihren Anruf und natürlich auch Ihre eMail.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: email, embed, embedded, html, htmlnachricht, mail, mailclient, mailsystem, mime, mimemail, newsletter, newslettersystem, php, signatur, signature, signaturen, textnachricht
Veröffentlicht in email, php | Keine Kommentare »
4. April 2008
Update: http://www.devqt.com/2008/05/18/positionsbestimmung-mit-google-maps-v2/
Mit Google Maps ergeben sich neue Möglichkeiten für die Darstellung von Inhalt an festgelegten Positionen. Das Schwierigste ist dabei generell die Position korrekt zu bestimmen und zu verwenden. Mit der folgenden Darstellung haben Sie eine Positionssuche, sowie eine Vorschau des erstellten Inhalts, der außerdem per Drag and Drop auf der Karte gesetzt werden kann. Es werden dann die exakten Koordinaten ausgegeben, die dann später weiter verarbeitet werden können um eine Gesamtansicht der Landkarte zu erstellen. Es ist auch möglich diesen selbst erstellten Inhalt dann in das System auf Google Maps zu integrieren.
Live Ansicht:

Live Demo: /examples/google.maps.php
Download: /examples/google.maps.position-0.1.tar.gz (30,9 KB)
Eine Anleitung für die eigene Installation finden Sie im Download. Durch die gelieferte Dokumentation ist es einfach diese Anwendung für jeden bedarfsgerecht einzubinden.
Sollten Sie eine Implementierung von Google Maps wünschen, würde ich mich über einen Anruf freuen. Ich beherrsche die vollständige Anbindung und kann Ihnen auch gerne persönlich einmal die Möglichkeiten der Verwendung erläutern. Sie können mir natürlich auch eine eMail schreiben.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: ajax, api, drag, drag and drop, drop, google, googlemaps, karte, koordinaten, landkarte, map, maps, positionierung, positionssuche
Veröffentlicht in ajax, google, maps | Keine Kommentare »
3. April 2008
Es wird immer wichtiger, dass verschiedene Architekturen auf unterschiedlichen Systemen reibungslos und zeitsparender zusammen arbeiten. Es gibt verschiedenste Konstellationen, bei denen eine Migration Sinn macht. Ich möchte Ihnen hier anhand von einem Alltagsproblem eine Möglichkeiten nennen um eine Lösung zu finden.
Unterschiedliche Datenstrukturen mit verschiedenen Betriebssystemen und Mehrfachnutzungen
Sie greifen von unterschiedlichen Clients auf verschiedene Datenbestände zu, sowohl die verschiedenen Datenbanken, wie auch die unterschiedlichen Betriebssysteme machen dabei Probleme, denn der Bestand befindet sich im nicht konsolidierten Zustand bis zur manuellen oder automatischen Migration. Mehrfachnutzungen belasten das Netzwerk zusätzlich und verlangen den Benutzern mehr ab als nötig sein sollte. Sehen Sie dazu folgende, oft anzutreffende, Konstellation:

Ich kann Ihnen bei diesem Problem eine Echtzeitlösung anbieten. Je nach Umfang des Datenbestands und nach Komplexität der Clients ist ein solches Projekt in durchschnittlich sechs Monaten realisierbar. Sofort nach Umstellung ist eine Einsparung garantiert, denn wir achten bei der Entwicklung auf gleichbleibende Funktionsweise. Bewährte Funktionen aus allen Systemen werden intelligent umgestellt. Im gleichen Schritt kann man natürlich auch eigene Funktionen implementieren und nach eigenen Wünschen erweitern. Nach einer Migration wird Ihr System wie folgt aussehen:

Man kann im direkten Vergleich feststellen, dass der Wegfall von Datenbankservern und unterschiedlicher Client Software zu einer massiven Einsparung führen.
Die Migration von Datenbeständen ist natürlich eine langfristige Investition - aber selbst hierfür biete ich Ihnen eine sichere Lösung. Mit einer Bedarfsanalyse in Ihrem Unternehmen zu einem Festpreis von 500,00 Euro zzgl. Umsatzsteuer pro Tag gehen Sie ein sehr geringes Risiko ein. Eine Analyse in Ihren Räumen mit den nötigen Ansprechpartnern liegt bei normalerweise einem Tag Aufwand, je nach Systemgröße. Danach haben Sie über den tatsächlichen Umfang Gewissheit und auch eine Analyse zur Kostenreduzierung.
Bei Interesse rufen Sie mich doch einfach an oder schreiben Sie mir eine eMail.
Florian Becker
–
Pyades Technologies GmbH
Klosterstr. 3
55232 Alzey
Tel: +49 (0) 67 31.494 878 00
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.494 878 01
Webseite: www.pyades.com
Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker
Schlagworte: betriebssysteme, c++, client server lösung, datenbank, datenmigration, debian, einsparen, einsparung, kosten reduzieren, kosteneffizienz, kostenreduziert, leopard, linux, mac, mac os x, migration, mssql, mysql, nachher, odbc, postgre, postgres, postgresql, qt, sql 9.0, sybase, tiger, unterschied, vista, vorher, windows, xp
Veröffentlicht in datenbank, migration, qt | Keine Kommentare »