DvbViewerSkinner
Eine Anwendung zur grafischen Bearbeitung von OSD-Skins für die TV-Software DVBViewer. Mit Vorschau und Echtzeit-Datenbindung zum einfacheren Layouten.
Archivierter Inhalt: Diese Anwendung ist derzeit inaktiv und möglicherweise veraltet, nicht mehr gewartet oder funktioniert nicht mehr.
Mit diesem Programm lassen sich OSD-Skins komfortabel bearbeiten. Als ich mich in die OSD-Skin-Materie eingearbeitet habe, habe ich dafür den vorhandenen SkinEditor verwendet und bin ständig über Probleme in der Benutzerführung, Verarbeitungsfehler oder uneinheitliche Benennungen gestolpert. Da ich keine Möglichkeit sah, das vorhandene Programm zu verbessern, und aufgrund der erkennbaren Entwicklungsgeschwindigkeit in naher Zukunft keine substantiellen Veränderungen zu erwarten wären, habe ich mir selbst eins geschrieben. (Ja, so bin ich…) Dadurch konnte ich auch einen guten Einblick in die Struktur von OSD-Skins erhalten (und habe wieder mal einiges zu diversen .NET-Technologien gelernt). Ich habe mit dem Programm bereits an einem eigenen OSD-Skin gebastelt und es hat auch ein paar andere beliebte Skins vollständig gelesen und angezeigt, weshalb ich davon ausgehe, dass keine wesentlichen Teile mehr fehlen sollten. Bei der Benutzeroberfläche habe ich mich ein bisschen von Visual Studio inspirieren lassen, weshalb sich zumindest VS-Entwickler da einigermaßen zurecht finden müssten. Für manche Funktionen wird eine funktionsfähige DVBViewer-Installation benötigt. Die Dokumentation setzt stillschweigend einen PDF-Betrachter voraus.
Im Übrigen kann es sicherlich nicht schaden, einmal über die vierseitige Doku drüberzuschauen. Dort werden die unterstützten Funktionen aufgelistet, nützliche Hotkeys beschrieben und ich habe ein paar einleitende Worte zur OSD-Skin-Erstellung allgemein sowie zur Arbeitsweise des Programms verloren. Anfänger sollten dadurch verstehen, worum es geht, und Fortgeeilte mögen mich bitte korrigieren, falls notwendig.
Weitere Informationen zum Programm sind in der Dokumentation (siehe Downloads) beschrieben. Die ursprüngliche Ankündigung befindet sich im DVBViewer-Forum.
Kompatibilität: Ab Version 2.0
Funktionsumfang
- Bearbeiten von DVBViewer-OSD-Skins
- Anzeigen und Bearbeiten von Skin-Eigenschaften wie Autor oder Abmessungen
- Auflistung aller Seiten, wenn bekannt mit „freundlichem Namen“ und Klassifizierung
- Realistische Darstellung einer OSD-Seite (WYSIWYG)
- Anzeigen und Bearbeiten von Seiten-Eigenschaften wie Hintergrund oder Standard-Objekt
- Auflistung aller OSD-Objekte (Steuerelemente) einer Seite in einer Liste
- Sortierung nach Z-Reihenfolge, Objekttyp, Control-ID und Objektbeschreibung
- Ausblenden einzelner Objekte für die Seitenansicht
- Interaktive Bearbeitung der Objekte mit Maus und Tastatur
- Auswählen einzelner oder mehrerer Objekte
- Verschieben der ausgewählten Objekte
- Vergrößern und Verkleinern der ausgewählten Objekte
- Ausrichten an anderen Objekten während dem Verschieben oder Vergrößern/Verkleinern mit Darstellung von Linienmarkierungen
- Anzeigen und Bearbeiten aller Eigenschaften der ausgewählten Objekte
- Auswahldialog für Farben, Schriftarten und Bilddateien
- Hinzufügen und Entfernen von Objekten
- Duplizieren von Objekten mit automatischer Positions- und Größenanpassung
- Verschieben von Objekten in der Z-Reihenfolge (per Menü/Hotkey/Drag&Drop)
- Diverse Ansichtsoptionen
- Zoom der Seitenansicht, 4:3-zu-16:9-Simulation
- Auswahl der Helligkeit des Seitenhintergrunds
- Hervorhebung von Control-IDs in der Seitenansicht
- Hervorhebung von Navigationsverknüpfungen in der Seitenansicht
- Optionale Rahmen um Objekte
- Anzeigen und Bearbeiten der Vorlagenseite (references.xml)
- Einfacher Start von DVBViewer aus dem Programm heraus
- Variablenauflösung und Textübersetzung in Labels, Images und anderen Objekttypen (erfordert DVBViewer)
- DVBViewer-Variablenauflistung (erfordert DVBViewer)
Bilder
Die folgenden Screenshots sind relativ groß und können erst ab Bildschirmauflösungen von 1280×1024 oder größer vollständig angezeigt werden. Bitte das Browser-Fenster entsprechend vergrößern.
Kanalliste mit Variablenauflösung
Mini-EPG-Seite skaliert
Einstellungsseite
Download
DvbViewerSkinner-1.0.4-Setup.exe830 KiBInstallationsprogramm, Version 1.0.4
DvbViewerSkinner-1.0.4.7z269 KiBKomprimierte Programmdateien, Version 1.0.4
Dokumentation.pdf91 KiBProgrammdokumentation
Vorherige Versionen
Offene Punkte
Die folgenden Erweiterungen und Korrekturen sind für zukünftige Programmversionen geplant. Die Auflistung erfolgt einigermaßen absteigend nach Dringlichkeit sortiert.
- Wenn DVBViewer durch den DvbViewerSkinner gestartet wurde, um Variablen aufzulösen oder anzuzeigen, kann sich der DVBViewer-Prozess beim Beenden von DvbViewerSkinner aufhängen. Die Ursache dafür ist unklar. In diesem Fall muss der Prozess dvbviewer.exe mit dem Task-Manager beendet werden.
- Das Verhalten von DvbViewerSkinner beim Aktivieren einer DVBViewer-COM-Funktion, wenn DVBViewer nicht verfügbar ist, ist undefiniert.
- Manche Objekteigenschaften werden in der Eigenschaftenliste angezeigt, obwohl sie von DVBViewer nicht verwendet werden. Dazu zählen v. a. Größenangaben von einzelnen Unterobjekttypen. Eine Angabe eines Werts hat in diesem Fall keinen Effekt auf die Darstellung in DVBViewer.
- Einige Objekteigenschaften sind noch nicht übersetzt oder beschrieben.
- Rückgängig- und Wiederherstellen-Funktion
- Zwischenablage
- Ebenenverwaltung für Controls auf einer Seite
- Ausrichten in Objekten
- Verteilen mehrerer Objekte (gleicher Abstand)
- Abstand (Margin) für alle Controls speichern (in eigenen XML-Elementen) und zum Snappen verwenden (andere Linien zeichnen)
- Zustand von Controls einstellen und speichern (Focused, Toggled, ...)
- Bearbeitung des XML-Quelltext
- Einfügen von Variablen in Eigenschaften vereinfachen
- Resize Keep Aspect Ratio (mit gedrückter Ctrl-Taste)
- Center-Symmetric Resize (mit gedrückter Shift-Taste)
- 16:9-Simulation erweitern: auf bestimmtes Seitenverhältnis zoomen (5:4, 4:3, 16:10, 16:9, ~1:2,35)
- Ungenutzte Bilddateien im Images-Verzeichnis auflisten
- Weitere Control-Typen erforschen
- TV-Liste (type=tvlistcontrol)
- EditField (type=edit)
- Dokumentation der Variablen mit einer Übersicht
- Hilfestellung zur Verwendung von Control-IDs auf den einzelnen Seiten
Änderungen
2010Mai9
Version 1.0.4
- Darstellungsfehler in der Objektliste behoben.
- Fehler bei Schriftarten, die nicht alle Schnitte unterstützen, werden abgefangen.
- Updateprüfung hinzugefügt.
2010Apr13
Version 1.0.3
- Fehlerbehandlung beim Laden von Skins verbessert. Doppelte Schriftdefinitionen werden erkannt.
2010Apr8
Version 1.0.2
- Menübefehl Beenden implementiert.
- Menübefehle Löschen und Duplizieren im Kontextmenü verbunden.
- Menübefehle zur Zwischenablage permanent deaktiviert (Funktion ist noch nicht implementiert).
2010Apr7
Version 1.0.1
- NullReference-Fehler auf Systemen ohne installierten DVBViewer behoben.
- Erkennung des DVBViewer-Pfads auf 64-bit-Systemen hinzugefügt.
- Fehlende Interop-DLL zum Installer hinzugefügt. (Update)
Lizenz und Nutzungsbedingungen
Dieses Programm ist „Freeware“. Das bedeutet, dass es für private sowie kommerzielle Nutzung kostenlos ist. Die weitere Verbreitung ist nicht ohne meine Genehmigung gestattet. Der Quelltext ist nicht verfügbar. Ich gebe keine Garantie, auch nicht auf Lauffähigkeit oder Benutzbarkeit. Die Nutzung erfolgt auf eigene Gefahr, ich hafte nicht für Schäden, die durch sachgemäßen oder unsachgemäßen Gebrauch dieses Programms entstehen.
Statistische Daten
- Erstellt am 2010-03-09, aktualisiert am 2010-05-09.
- Ca. 14 150 Codezeilen, geschätzte Entwicklungskosten: 14 000 - 57 000 €