Ein Shellscript zur automatisierten Post-Erstellung in einem WordPress-Fotoblog Fotografie Shellscript Tools Wordpress 

Ein Shellscript zur automatisierten Post-Erstellung in einem WordPress-Fotoblog

Bisher war das Posten neuer Bilder in meinem Fotoblog für mich immer mit einem relativ hohen Arbeitsaufwand verbunden. Bis zur Veröffentlichung auf dem WordPress-Blog durchlaufen meine Fotos folgende Schritte Die Fotos werden skaliert, d.h. verkleinert (voll aufgelöste Bilder gibt es nur gegen Bezahlung 😉 ). Dafür habe ich z.B. die Programme “Fotosizer” oder “FastStone Photo Resizer” genutzt, da sie in der Lage sind, mehrere Bilder auf einmal zu verarbeiten. Dabei benötige ich von jedem Foto eine große Variante (für die Detailansicht) und eine kleine Variante (Breite 300px für die Vorschau…

Read More
Neue Schwerpunkte für die Entwicklung von Benutzerschnittstellen und Betriebssystemen (Teil 2) User Interfaces 

Neue Schwerpunkte für die Entwicklung von Benutzerschnittstellen und Betriebssystemen (Teil 2)

Immer mehr Apps und Betriebssysteme lassen sich per Sprachsteuerung bedienen. Ich frage mich, welche Auswirkungen dieser Trend auf die Gestaltung grafischer Benutzeroberflächen haben könnte? Werden noch komplexe Menüs und Toolbars gebraucht, in denen alle verfügbaren Befehle aufgelistet sind? Ich könnte mir vorstellen, dass grafische Oberflächen in Zukunft hauptsächlich der Datenpräsentation dienen werden, während die grafische Befehlspräsentation, wie wir sie heute kennen, verkümmern bzw. auf ein Minimum reduziert werden wird! Wie ich bereits im Fazit des ersten Teils dieses Artikels verdeutlicht habe, sollte die Gestaltung der Benutzerschnittstelle nicht von Trends, sondern von…

Read More
Neue Schwerpunkte für die Entwicklung von Benutzerschnittstellen und Betriebssystemen (Teil 1) User Interfaces 

Neue Schwerpunkte für die Entwicklung von Benutzerschnittstellen und Betriebssystemen (Teil 1)

Lisa möchte ein farbiges Foto in ein Graustufenbild umwandeln. Ihr Bildbearbeitungsprogramm enthält ein umfangreiches Menü mit vielen Befehlen. Lisa weiß jedoch nicht, mit welchem Befehl sie ihr Ziel erreichen kann. Mit Hilfe einer Internet-Suchmaschine findet sie schnell heraus, dass der Vorgang zum Entfärben eines Fotos oft als “Entsättigen” bezeichnet wird. Nun durchsucht sie sämtliche Menüs ihres Programms nach einem Befehl mit diesem Namen. Tatsächlich wird sie nach einer Weile fündig und kann nun endlich die Bildbearbeitung vornehmen. Diese kleine Geschichte zeigt ein typisches Beispiel für eine problematische Mensch-Computer-Interaktion: Nur mit…

Read More
Konfiguration von Microsoft MapPoint auf Windows Server 2008 zur  Verwendung in einer ASP .NET Web-Applikation ASP .NET Frameworks Windows Server 

Konfiguration von Microsoft MapPoint auf Windows Server 2008 zur Verwendung in einer ASP .NET Web-Applikation

Problem: Beim Aufruf der MapPoint-Komponente (oder einer anderen Office-Komponente) aus einer ASP .NET  Web-Applikation heraus wird eine Exception ausgelöst: 0x80080005 (CO_E_SERVER_EXEC_FAILURE) – Starten des Servers fehlgeschlagen Ursache: MapPoint gehört in die Reihe der Office-Applikationen. Diese sind nur für den interaktiven Einsatz (also mit GUI) unter einem normalen Windows-Benutzerkonto vorgesehen. In der Webapplikation wird MapPoint allerdings unter dem Konto „Netzwerkdienst“ ausgeführt, welches kein normales Benutzerkonto ist (eine Anmeldung bei Windows ist unter diesem Konto z.B. nicht möglich). Microsoft erklärt u.a. unter folgendem Link ausdrücklich, dass bei einer derartigen Verwendung u.a. der…

Read More
WordPress: Javascript-Code interaktiv in einem Post ausführen Plugin-Entwicklung Wordpress 

WordPress: Javascript-Code interaktiv in einem Post ausführen

Viele WordPress-Blogs behandeln Inhalte aus der Informatik. Naturgemäß müssen dabei häufig mehr oder weniger umfangreiche Quellcode-Abschnitte erläutert werden. Die Anschaulichkeit und Lernförderlichkeit solcher Webseiten kann erheblich gesteigert werden, indem für den Leser die Möglichkeit geboten wird, den betreffenden Code direkt in der Webseite auszuführen und die Resultate zu betrachten. Das ProgrammingWiki verfolgt diesen Ansatz, um u.a. das Erlernen von Programmiersprachen zu erleichtern. In diesem Beitrag zeige ich, wie mit Hilfe eines selbst entwickelten Plugins auch in WordPress-Posts und -Pages Quellcode interaktiv ausgeführt werden kann. Ich beschränke mich dabei auf Javascript-Code….

Read More
WordPress: mit einem eigenen Plugin eine Übersicht über Postinhalte generieren Plugin-Entwicklung Wordpress 

WordPress: mit einem eigenen Plugin eine Übersicht über Postinhalte generieren

Ziel ist es, Inhalte gleichen Typs, die in zahlreichen WordPress-Posts verstreut sind, auf einer Übersichtsseite zusammenzufassen. Folgende Typen sind z.B. denkbar: alle Bilder, die in den Posts enthalten sind bzw. Bilder mit einer bestimmten ID oder Klasse alle Tabellen bzw. Tabellen mit einer bestimmten ID oder Klasse alle Überschriften bzw. Überschriften einer bestimmten Ebene (h1, h2 usw.)   Die Übersichtsseite soll sozusagen als Bild-, Tabellen-, oder Inhaltsverzeichnis dienen. In meinem Blog “Blaustern Fotografie” gibt es z.B. eine Bildzusammenfassung (siehe Abbildung unten). Es wird ein Plugin benötigt, welches automatisch den HTML-Code…

Read More
WordPress: Farben und Styles einzelner Posts mit einem eigenen Plugin individuell anpassen (Teil 2) Plugin-Entwicklung Wordpress 

WordPress: Farben und Styles einzelner Posts mit einem eigenen Plugin individuell anpassen (Teil 2)

Ich betrachte den Fall, dass der Nutzer eine Farbe auswählen möchte, die perfekt auf ein im Post enthaltenes Bild abgestimmt ist. Dann wäre es wünschenswert, wenn die Auswahl direkt durch Anklicken einer bestimmten Stelle in einem ausgewählten Bild erfolgen könnte. Das im ersten Teil entwickelte Plugin werde ich um diese Funktionalität erweitern. Folgende Schritte sind notwendig: Die Meta-Box wird erweitert, sodass ein Bild aus der Media-Library geladen werden kann. Dem ausgewählten Bild wird eine Event-Handler-Funktion zugeordnet, die beim Anklicken des Bildes aufgerufen wird. Die Handler-Funktion extrahiert den Farbwert des Bildes an…

Read More
WordPress: Farben und Styles einzelner Posts mit einem eigenen Plugin individuell anpassen (Teil 1) Plugin-Entwicklung Wordpress 

WordPress: Farben und Styles einzelner Posts mit einem eigenen Plugin individuell anpassen (Teil 1)

Jedes WordPress-Theme enthält ein CSS-Stylesheet, welches die Formatierung für alle Posts und Pages einheitlich festlegt (z.B. Hintergrundfarben, Schriftgrößen oder Abstände). Manchmal ist es jedoch erwünscht, bestimmte Posts (bzw. Pages) individuell gestalten zu können. In meinem Blog “Blaustern Fotografie” wollte ich z.B. die Hintergrundfarbe der Menüleiste am oberen Rand der Seite für jeden Post individuell anpassen. Um diese Funktionalität zu erhalten, habe ich ein Plugin entwickelt, welches folgende Merkmale besitzt: Das Plugin ergänzt im Admin-Bereich neben dem Editor eine Meta-Box. Die Meta-Box enthält einen Color-Picker, der die Auswahl eines Farbwertes ermöglicht. Des…

Read More
Integration des GLPK-Solvers in ein C#-Programm (Teil 2) Frameworks 

Integration des GLPK-Solvers in ein C#-Programm (Teil 2)

Nachdem ich im ersten Teil des Tutorials das Einbinden und Aufrufen des GLPK-Solvers in ein C#-Programm beschrieben habe, möchte ich nun auf die weiteren Schwierigkeiten eingehen, denen man speziell bei der Nutzung des MIP-Solvers aus einem C#-Programm gegebenübersteht. Der GLPK-MIP-Solver arbeitet mit Branch-and-Cut-Algorithmen, deren Abarbeitung vom Anwendungsprogramm über eine callback-Methode gesteuert werden kann. An dieser Stelle sei wieder auf die GLPK-Webseite zu genauen Details über diese Verfahren verwiesen. Im Folgenden ist der Ausschnitt einer solchen Callback-Funktion zu sehen, die sich nicht von einer entsprechenden C-Funktion unterscheidet. Die Verwendung von Zeigern…

Read More
Integration des GLPK-Solvers in ein C#-Programm (Teil 1) Frameworks 

Integration des GLPK-Solvers in ein C#-Programm (Teil 1)

Im ersten Teil dieser Serie wird das Einbinden und Aufrufen des Solvers behandelt. Da es sich bei der glpk-dll um nicht verwalteten C-Code handelt, der aus verwaltetem C#-Code heraus aufgerufen wird, muss zunächst folgender Namespace eingebunden werden: using System.Runtime.InteropServices; Des Weiteren ist der Pfad zur glpk-dll in einer konstanten String-Variable abzulegen. Der Pfad kann also nicht zur Laufzeit gesetzt werden: const string glpkLibrary = “C:\…\glpk_4_34.dll” Das DllImport-Attribut wird vor die Funktionsdeklaration jedes verwendeten glpk-Einstiegspunktes, d.h. jeder verwendeten glpk-Funktion, gesetzt. Die Signatur jeder Funktion muss dem Namen einer von der DLL…

Read More