Fachportal für Technische Dokumentation

FlashHelp und WebHelp als kompakte Einzeldatei

Moderne Hilfeformate liegen als Sammelsurium unzähliger Einzeldateien und Unterverzeichnisse vor - erstellen Sie daraus eine komprimierte Hilfedatei.

Die klassische Microsoft HTML Help wird heutigen Anforderungen an die grafische Oberflächengestaltung nur noch bedingt gerecht. Hinsichtlich Layout und Funktionalität haben neue Flash- und HTML-basierte Hilfeplattformen einiges mehr zu bieten, finden in der Praxis jedoch nur langsam Verbreitung. Denn mit den neuen Ausgabeformaten sind auch Nachteile verbunden, die mancher Anwendung im Wege stehen. So werden diese Hilfen nicht mehr als kompakte Hilfedatei ausgegeben, sondern als Sammlung zahlreicher Einzeldateien und Unterverzeichnisse, die auf dem Rechner des Endanwenders offen einsehbar und ungeschützt vorliegen. Auch die Portabilität ist eingeschränkt, wenn etwa ein Tutorial als Download für den lokalen Gebrauch angeboten werden soll - hier ist der Anwender mit einer Einzeldatei besser bedient.

Die Vorteile beider Plattformen lassen sich jedoch kombinieren. Das Ergebnis ist eine CHM-Hilfedatei mit der grafischen Oberfläche eines Flash- oder HTML-basierten Hilfesystems.

Beispiele:
(ggf. müssen die Dateien zum betrachten lokal abgespeichert werden)

Beispiel FlashHelp (Flash-Plugin erforderlich)
Beispiel WebHelp

Grundprinzip

Der generierte, unmodifizierte Output einer Flash- oder HTML-basierten Hilfe wird in ein HTML Help-Projekt vollständig eingebettet. Die HTML Help dient quasi als Container - sie bestimmt die Eigenschaften des Hilfefensters und unterstützt den kontextsensitiven Aufruf von Topics. Die Oberflächengestaltung und sämtliche Inhalte werden hingegen im FlashHelp- und WebHelp-Projekt festgelegt.

Vorgehensweise

Nachfolgend wird die Arbeitsweise in RoboHelp beschrieben, einem verbreiteten Autorenwerkzeug für die Erstellung von Online-Hilfen.

So betten Sie eine FlashHelp in ein HTML Help-Projekt ein:

1.Erstellen Sie Ihr FlashHelp-Projekt wie gewohnt, und generieren Sie die Output-Dateien.
Führen Sie die weiteren Arbeitsschritte durch, wenn strukturell nicht mehr viele Veränderungen zu erwarten sind.
2.Erstellen Sie ein neues HTML Help-Projekt.
3.Um im HTML Help-Projekt die Anzeige von Inhaltsverzeichnis und Index zu unterdrücken, deaktivieren Sie in den Fenstereigenschaften die Option TOC & Index
4.Um im Projektmanager ein Verzeichnis mit dem Namen Ihres FlashHelp-Ausgabeverzeichnisses anzulegen, rechtsklicken Sie Baggage Files. In dieses Verzeichnis importieren Sie alle Dateien Ihres generierten FlashHelp-Projekts.
Legen Sie auch die entsprechenden Unterverzeichnisse an (whgdata, whxdata etc.). Ob vor oder nach dem Importieren ist egal; nur die Verzeichnisstrukturen müssen identisch sein.
Hinweis: Beim Importieren können Sie jeweils ca. 8-12 Dateien auf einmal erfassen.
5.Um die Startdatei des FlashHelp-Projekts als Topic zu importieren, rechtsklicken Sie HTML Files (Topics), wählen "Import" und dann die Startdatei.
6.Bestimmen Sie diese Startdatei als Default-Topic des HTML Help-Projektes.
7.Generieren Sie die HTML Help.

Bei Änderungen Ihres FlashHelp-Projektes können Sie das FlashHelp-Verzeichnis in Ihrem HTML Help-Projekt einfach mit Windows Explorer durch den neu generierten Output ersetzen. Allerdings müssen neu erstellte Dateien (z.B. neue Topics) in RoboHelp stets als Baggage-File importiert werden.

Kontextsensitive Hilfen

Da die eingebettete FlashHelp nicht direkt aufgerufen werden kann, müssen kontextsensitive Aufrufe an die HTML Help gerichtet und dann von dieser weitergeleitet werden.

Bei der nachfolgend beschriebenen Lösung werden kontextsensitive Aufrufe mit der ursprünglichen Map-Nummer an die eingebettete FlashHelp 1:1 weitergegeben. Map- und ALI-Dateien werden komplett im FlashHelp-Projekt verwaltet, das dadurch auch einzeln funktionsfähig ist.

Dies erreichen Sie folgendermaßen:

1.Erstellen Sie die für kontextsensitive Aufrufe erforderlichen Map- und ALI-Dateien im FlashHelp-Projekt wie gewohnt.
2.Richten Sie im HTML Help-Projekt nach folgendem Muster eigene MAP- und ALI-Dateien ein

MAP-Datei (*.h)ALI-Datei (*.ali)
#define Dummy 9999
#define t1 1
#define t2 2
#define t3 3
#define t4 4
#define t5 5
Dummy=call_Flash.htm
t1=call_Flash.htm#1
t2=call_Flash.htm#2
t3=call_Flash.htm#3
t4=call_Flash.htm#4
t5=call_Flash.htm#5

Diese fortlaufenden Listen können Sie z.B. in Excel erstellen. Entscheidend ist, dass alle möglichen Map-Nummern, mit denen die FlashHelp aufgerufen werden soll, abgedeckt sind (im Beispiel die Nummern 1-5).
Anmerkung: Aus technischen Gründen ist der Dummyeintrag an erster Stelle (hier mit Map-Nummer 9999, diese Nummer kann verändert werden) notwendig.
3.Erstellen Sie im HTML Help-Projekt ein neues Topic call_Flash.htm.
Durch die Einträge der ALI-Datei wird bei allen kontextsensitiven Aufrufen stets dieses Topic angesprochen, wobei die Map-Nummer des Aufrufes per Hash ("#..") übergeben wird.
4.Erstellen Sie in diesem Topic ein Script, das die übergebene Map-Nummer ausliest und damit die FlashHelp aufruft.
Beispiel:
<html>
<head>
<title>Call FlashHelp</title>
<script type="text/javascript" language=JavaScript1.2 src="RoboHelp_CSH.js">
</script>
</head>
<body>
<script type="text/javascript" language=JavaScript1.2>
<!--
var mapnum = parseInt(window.location.hash.substring(1));
var strPathAndWindow = "FlashHelp/Start.htm>NewWindow";
RH_ShowHelp(0, strPathAndWindow, HH_HELP_CONTEXT, mapnum);
//-->
</script>
</body>
</html>
 
Anmerkungen zu diesem Beispiel:
-Die für kontextsensitive Aufrufe der FlashHelp notwendige Datei RoboHelp_CSH.js muss als Baggage-File in das HTML Help-Projekt aufgenommen werden.
-Beim Aufruf der FlashHelp wird deren Hauptfenster referenziert (hier NewWindow). Für eine Darstellung im gewohnten Hilfefenster muss im FlashHelp-Projekt in den Fenster-eigenschaften die Option View > Two Pane aktiviert sein..
-Die FlashHelp sollte so modifiziert werden, dass sie beim Aufruf kein neues Fenster öffnet. Die Einstellungen hierfür finden Sie in der Datei whcsh_home.htm der FlashHelp Output-Dateien:

Löschen Sie folgende Zeilen (kommen jeweils zweifach vor):

goNewWnd=window.open("about:blank",sNewName,strOpt);
window.open("about:blank",sNewName,strOpt);

Modifizieren Sie folgende Ausdrücke:

alt: var oNewWnd=window.open(sURL,sNewName);
neu: top.location.replace(sURL);
alt: goNewWnd=window.open(sURL,sNewName);
neu: goNewWnd=top.location.replace(sURL);

 


04.05.05
Robert Hinesley - Technikredakteur bei Comet Computer
Weitere Artikel von Robert Hinesley

Mit dem Artikel verknüpfte Schlagwörter:
Flash Hilfeformate Online-Doku Online-Hilfe RoboHelp WebHelp

HTML Druckversion

Suche



Themenbereich:

Werbung

Nicht verpassen
Gezielt informieren mit Author-it Aspect und Assist

Erfolgreiche Bildbearbeitung mit Gimp

Das bietet Open-Source-Software

DITA – Konzepte und Anwendungen: Tools für jeden Bedarf

DITA: ein neuer Standard mit Zukunft

Successful DITA Implementation with FrameMaker

Wissensaustausch mit Wikis: Einfach loslegen

Agil und eXtrem - die Zukunft der Technischen Dokumentation

Startseite | Impressum | Kontakt

[XML-RSS]

Doku.Info ist ein Service von Comet Computer GmbH - Die Profis für Technische Dokumentation