Creating Help File
Biên soạn : Phạm Hoàng Việt (hoangviet@tlnet.com.vn)
Microsoft Windows đã cung cấp cho chúng ta một hệ trợ giúp cho người sử dụng ứng dụng trong môi trường 32 bit. Windows Help cung cấp một những thông tin về trợ giúp một cách có thứ tự nhằm mục đích cho người sử dụng dễ dàng truy xuất được thông tin cần tìm.
Một cửa sổ Help bao gồm các thành phần cơ bản như sau : Contents tab, Index tab và Find tab. Chức năng của từng tab:
* Contents tab : sắp xếp thông tin trợ giúp một cách có thứ tự để người sử dụng có thể định hướng cho việc xem thông tin của mình.
* Index tab : chứa những từ khóa cho 1 hoặc nhiều file help để có thể dễ dàng truy xuất theo từ khóa.
* Find tab : cung cấp cho chúng ta chức năng tìm kiếm trên tất cảc các file help.
Sơ lược về Help File :Trong Windows Help cho phép chúng tra hiển thị những thông tin bằng cách sử dụng những chức năng được cung cấp như sau :
* Hiển thị
text với kích thước co chữ, màu chữ và kiểu
chữ khác nhau.
* Có hai cửa sổ để hiển thị
thông tin
* Chỉ dẫn tham khảo thông qua liên kết
( Hyperlink )
* Có Popup windows để hiển thị text hoặc hình
ảnh.
* Bitmap và metafile
* Segment-graphics bitmaps với Hot spots
* Video ( .avi)
Ðể tạo một help file chúng ta cần tạo những file như là : topic, hình ảnh, help project, và nội dung. Một file topic dùng để chứa nội dung cho Help topic và chứa những phát biểu trợ giúp và những macro đã định dạng cho text và hình ảnh trong mỗi topic.
Help Project là nơi để chúng ta mô tả việc xây dựng một Help file như thế nào. File nội dung sẽ là phần nội dung chúng ta trình bày trong Contents tab.
Ðể biên soạn hoàn chỉnh thành một Help file chúng ta sử dụng phần mềm Microsoft Help Workshop ( HCW.EXE ) để xây dựng, sau đó biên dịch các file topic, hình ảnh, help project thành một Help File có phần mở rộng là HLP để có thể xem bằng Windows Help.
Tạo Topic File :
Một topic file chứa những nội dung như là những phát biểu trợ giúp và những macro định dạng cho text và hình ảnh trong mỗi topic. Mỗi topic file bao gồm một hoặc nhiều Topic. Và mỗi topic lại chứa nhiều thông tin riêng biệt như là nội dung hiển thị, mô tả khái niệm, list các jump để đi đến các mục khác,à
Windows Help chỉ hiển thị một topic trong một thời điểm nhưng chúng ta ( người sử dụng ) có thể xem nhiều topic khác bằng cách sử dụng các link đến topic hoặc có thể tìm kiếm theo từ khóa của topic.
Ðể biên soạn một file topic này bạn có thể dùng bất cứ trình soạn thảo văn bản nào mà có hổ trợ Rich Text Format ( . RTF ). Microsoft Word là một ví dụ.
Khai báo Font và Color :
Khi bạn biên soạn một topic file bạn phải cho nội dung của topic file đó nằm trong dấu ngoặc {}. Tại đầu mỗi phát biểu bạn phải có tag này : \rtf . Ví dụ như bạn muốn viết cho phát biểu ANSI thì bạn phải khai báo như sau :
{\rtf\ANSI
...
...
...
}
Bạn phải khai báo tên font mà bạn sử dụng bằng tag \fonttbl sau tag này bạn dùng tag \f và kế tiếp và số thứ tự font sẽ dùng trong list font mà bạn khai báo. Bạn xem ví dụ sau sẽ rõ :
{\fonttbl
\f0\froman Times New Roman;
\f1\fdecor Courier New;
\f2\fswiss Arial;
}
Nếu như bạn khai báo dùng font riêng của
bạn thì bạn nên khai báo font mặc định trong
list font của bạn bằng tag \deff . Như trên ví dụ
trên bạn muốn khai báo dùng font mặc định là
Times New Roman thì bạn khai báo như sau :
\deff0
Nếu như bạn không muốn dùng màu
chữ mặc định của Windows thì bạn phải
khai báo màu cho chữ của bạn. Ðể khai báo bạn
dùng tag \colortbl và bạn phải dùng 3 màu cơ bản là
Red, Green, Blue để phối hợp tạo ra màu chữ
cho bạn bằng cách dùng các số để chỉ thị
tỉ lệ pha màu từ các màu cơ bản và những
số tỉ lệ đó bắt đầu từ 0 và kết
thúc ở 255. Ví dụ sau đây sẽ khai báo 4 màu là
black, red, green và blue :
{\colortbl
\red0\green0\blue0;
\red255\green0\blue0;
\red0\green128\blue0;
\red0\green0\blue255;
}
Ðịnh nghĩa những Topic riêng lẻ
Mỗi topic riêng lẻ trong file topic đề được bắt đầu với tag \footnote và kết thúc là tag \page. Tất cả những nội dung và hình ảnh sẽ nằm giữa hai tag này.
Mỗi topic phải có một chuỗi ngữ cảnh và sau mỗi chuỗi ngữ cảnh là một kí tự số. Chuỗi ngữ cảnh bao gồm các kí tự chữ , số và dấu gạch chân ( _ ). Và mỗi chuỗi ngữ cảnh là duy nhất, không được trùng nhau. Và việc khai báo một chuỗi ngữ cảnh bằng cách đặt dấu # nằm phía trước tag \footnote.
Bạn cũng có thể đặt tiêu đề cho chuỗi ngữ cảnh bằng cách đặt dấu $ nằm phía trước tag \footnote. Windows Help sẽ sử dụng tiêu đề đó để nhận ra topic. Bạn phải cung cấp tiêu đề cho topic nếu như bạn muốn khai báo từ khóa cho topic đó.
Ví dụ sau đây là phần khia báo cho chuỗi ngữ cảnh là Topic1 và tiêu đề là My Topic.
\#{\footnote topic1}
${\footnote My Topic}
This is my first topic.
\par
\page
Bạn
phải sử dụng tag \par để cho biết là kết
thúc một Paragraph. Trong ví dụ này, \par chỉ kết
thúc một paragraph trong topic.
Bạn có thể
thêm một macro vào trong topic bằng cách sử dụng kí
tự ( ! ) nằm phía trước. Ví dụ sau đây là
thêm một macro CopyTopic vào trong topic :
!{\footnote CopyTopic()}
Windows help sẽ thực thi macro này mỗi lần hiển thị topic này.
Ấn định Font Size và Font Name :
Bạn có thể đặt lại tên font và co chữ cho từng đoạn text bằng cách sử dụng tag \f và \fs. Tên font chữ trong lần này là bạn phải sử dụng những font chữ mà bạn đã khai báo ở trong phần \fonttbl mà tôi đã nói bên trên. Kích thước font chữ là bắt đầu từ 10 trở đi.
Những gì bạn ấn định font hay co chữ sẽ có hiệu lực từ nơi bắt đầu khi báo cho đến khi bạn dùng tag \plain hoặc bạn định lại kích thước hay co chữ mới thôi. Tag \plain là tag dùng để reset lại để sử dụng tên font khai báo trong phần \deff và co chữ là 12.
Ấn định khoảng cách cho Paragraph :
Trong mỗi paragraph bạn có thể ấn định khoảng cách trước và sau bằng tab \sb và tag \sa. Mỗi khi bạn ấn định khoảng cách như vậy nó sẽ có hiệu lực cho đến khi bạn dùng tab \pard để reset lại khoảng cách đó và sử dụng mặc định hoặc cho đến khi bạn ấn định lại giá trị mới cho paragraph.
Ví dụ sau đây sẽ ấn định khoảng cách trước cho paragraph :
\sb360
This paragraph has 360 twips space immediately before it.
\par
This paragraph also has 360 twips before it.
\par
Tọa độ sử dụng là TWIP ( 1
twip = 1/1440 inch hoặc 1 twip = 1/20 printer's point )
Ấn định lề trái và lề phải :
Windows Help sẽ tự động cho việc
canh lề trái và phải cho nội dung hiển thị nhưng
bạn có thể sử dụng tag \li và \ri để
ấn định lề trái và lề phải cho nội
dung hiển thị.
Việc ấn định lề trái và lề
phải sẽ có hiệu lực cho đến khi bạn dùng
tag \pard để reset hoặc bạn ấn định lại
giá trị mới.
Bạn cũng có thể ấn định
giá trị thụt vào của dòng đầu tiên trong một
paragraph bằng tag \fi.
Ví dụ sau đây sẽ ấn định
lề trái cho một paragraph :
\li1440
This paragraph is indented 1 inch.
\par
\pard
This paragraph is not indented.
Ấn định tab dừng :
Bạn có thể ấn định tab dừng
cho từng vị trí trong nội dung hiển thị bằng
tag \tx. Bạn có thể ấn định nhiều giá trị
tab dừng ví trí bắt đầu là lề trái.
Sau khi ấn định tab dừng xong bạn
dùng tag \tab để đưa text vào đến tab mà bạn
muốn. Việc ấn định tab này sẽ có hiệu
lực cho đến khi bạn dùng tag \pard để reset.
Ví dụ sau đây minh họa việc sử
dụng tab dừng và canh lề trái , nó sẽ chia nội
dung hiển thị ra làm 2 cột :
\fi-1440\li1440\tx1440
left
\tab
right
\par
left
\tab
right
\par
\pard
Xuống hàng :
Windows Help tự động xuống hàng
cho bạn khi đã hết dòng, nhưng nếu bạn muốn
xuống hàng để hiển thị thì bạn có thể
dùng tag \line Và bạn có thể điều khiển việc
xuống hàng bằng cách sử dụng tag \keep và tag \pard.
Ví dụ sau đây minh họa việc xuống
dòng, dùng tag \keep để tắt chế độ tự
động, tiếp theo ngắt thành 3 dòng nội dung bằng
\line, sau đó dùng tag \pard để trả lại mặc
định.
\keep
3 pairs black socks\line
5 pairs blue socks\line
2 pairs brown socks\line
\par
\pard
Tạo link và Popup cho Topic :
Windows Help chỉ hiển thị một
topic trong một thời điểm do đó bạn sẽ
cần tạo ra những link để xem những topic khác.
Ðể tạo nó bạn phải sử dụng tag \strike,
\ul hoặc \ulbd và bạn dùng tag tướng ứng là \v.
Khi bạn tạo một link bạn phải cung cấp một
chuỗi ngữ cảnh cho topic đề nó nhảy đến
topic tương ứng.
Ví dụ sau đây sẽ tạo một
hot spot có tên là "Glossary" và thiết lập một
link đến một chuỗi ngữ cảnh có tên là
"glo1".
You can find a list of terms used in this
help file in the {\uldb Glossary}{\v glo1}.
Khi Windows Help hiển thị, nó sẽ gạch
chân và đổi màu chữ là màu xanh của Hot spot
Glossary, khi người dùng click vào hot spot nó sẽ nhảy
đến và hiển thị nội dung của topic mà nó
liên kết đến là glo1.
Tag \strike và \ulbd được dùng để
tạo liên kết nhảy đến một topic khác. Tag
\ul thì dùng để tạo một link đến popup của
topic.
Bạn cũng có thể kết hợp một
Help macro với 1 hot spot trong topic. Ví dụ sau sẽ dùng tag
\ulbd và tag \v để tạo một hot spot cho macro
ExecProgram
{\uldb Clock}{\v !ExecProgram("clock.exe", 1)}
Windows Help sẽ thực thi macro này khi người
sùng chọn hot spot và Windows help vẫn tiếp tục hiển
thị trừ khi macro đó nhảy đến một topic
khác mà thôi.
Tạo từ khóa ( Keyword ):
Bạn có thể tạo từ khóa cho topic
để người dùng dễ dàng tìm kiếm nội
dung theo từ khóa. Tất cảc những từ khóa bạn
tạo ra Windows Help sẽ đưa vào trong tab Index của
Windows Help vàngười dùng nhập vào từ liên quan
đến nội dung tìm kiếm, nếu từ đó
trùng với từ khóa bạn tạo hoặc có liên quan
gì đến từ khóa bạn tạo nó sẽ hiển thị
ra theo list cho người dùng.
Ðể tạo từ khóa cho topic bạn
thêm kí tự K vào phía trước tag \footnote.
Ví dụ sau đây sẽ tạo một từ
khóa có tên là Sample Topics :
#{\footnote topic1}
${\footnote My Topic}
K{\footnote Sample Topics}
This is my first topic.
\par
\page
Nếu như từ khóa của bạn bắt
đầu bằng chữ K thì bạn phải thêm khỏang
trắng phía trước nó, và nhiều từ khóa trong một
topic thì bạn phải ngăn cách với nhau bằng dâu
chấm phẩy. Một từ khóa bạn có thể có nhiều
topic và khi người dùng chọn một từ khóa trong
tab Index mà nó liên quan đến nhiều topic thì Windows Help
sẽ xuất hiện một cửa sổ liệt kê tất
cả các topic liên quan đến từ khóa đó.
Tạo Browse :
Bạn có thể tạo Browse để xem
help topic một cách có thứ tự và liên tục. Một
browse bao gồm có 2 hoặc nhiều topic liên quan đến
nhau, và bạn tạo ra một browse bằng cách thêm dấu
+ và trước tag \footnote.
Ví dụ như sau :
#{\footnote topic5}
${\footnote A Topic}
+{\footnote shorttopics}
This is one topic in a browse sequence.
\par
\page
Chèn hình ảnh :
Windows Help cho phép bạn chèn hình ảnh
vào trong nội dung hiển thị. Ðể hình ảnh của
bạn được chèn vào, Windows Help hổ trợ cho
chúng ta một số loại hình ảnh được
định dạng sau đây có thể chèn vào help file :
Windows bitmap (.BMP)
Windows metafile (.WMF)
Multiple-resolution bitmap (.MRB)
Segmented-graphics bitmap (.SHG)
Chèn hình ảnh vào text :
Ðể chèn hình ảnh vào trong text của
bạn bạn cần phải sử dụng đến tag
bmc, và bạn chỉ cần nhập tag này vào ngay vị
trí cần chèn tag này thì hình ảnh của bạn sẽ
hiển thị tại vị trí đó, ví dụ như sau
:
Press the
{bmc enter.bmp} key to complete the task and return to the main window.
Khi hình ảnh chọn vào bằng cách này, hình ảnh đó được xem như là một text, cho nên tôi khuyên bạn nên chọn hình ảnh nhỏ thôi vì nếu như bạn chọn hình ảnh lớn thì sẽ tạo ra một khoảng trắng rất lớn giữa dòng có hình ảnh và dòng phía trên.
Ðịnh dạng text bao quanh hình ảnh :
Nếu như bạn muốn văn bản bao quanh hình ảnh của bạn thì bạn dùng tag bml và bmr. Sử dụng bml nếu bạn muốn chèn hình ảnh nằm ở lể trái và bmr nếu muốn hình ảnh nằm ở lề phải.
Muốn cho text bao quanh hình ảnh thì bạn phải chèn tag đó nằm phía trên đầu của đoạn paragraph. Khi nào không muốn những phần text còn lại không bao quanh hình ảnh nữa thì bạn chèn một tag \par vào vị trí đó.
Ví dụ sau đây sẽ chèn một hình ảnh vào trong text nằm theo lề trái của cửa sổ :
{bml mybitmap.bmp}
The text in this paragraph wraps around the right edge of the bitmap. \par
Sử dụng hình ảnh như một Hot spot :
Cũng tương tự như text, bạn có thể dùng hình ảnh để tạo ra một Hot spot để nhảy đến một topic khác hoặc là thực thi một macro. Việc sử dụng hình ảnh như một Hot spot này sẽ làm cho help file của bạn trở nên sinh động hơn vì nó như những icon, button vậy.
Ví dụ sau đây sẽ tạo một hot spot cho một hình ảnh mybutton.bmp, khi click vào nó sẽ nhảy đến topic với chuỗi ngữ cảnh là topic
{\strike
{bml mybutton.bmp}}{\v topic15}
Bạn có thể chia hình ảnh của bạn ra làm nhiều hot spot để đi đến những topic khác nhau hoặc macro khác nhau. Ðể tạo nhiều hot spot như vậy trên hình ảnh của bạn, bạn phải dùng Hotspot Editor. Việc tạo nhiều hot spot như vậy được gọi là segmented-graphics bitmaps.IV.Tạo Help Project :
Ðây là phần dùng để mô tả việc định dạng và nội dung của file Help Project dùng để xậy dựng help file. File project chứa tất cảc những thông tin mà Microsoft Help Workshop cần để kết hợp file topic và những thành phần khác vào trong file help.
File project là file trong đó nội dung được chia thành nhiều section. Những section đó sẽ được quản lý bởi Help Workshop.
Những Section trong file project :
Trong file project có nhiều section và mỗi section có một cái tên, tên của section sẽ được nằm trong dấu ngoặc vuông [ ]. Sau đây là các section được sử dụng trong file project :
|
[ ALIAS ] |
ãn định 1 hoặc nhiều cảm ngữ cảnh đến cùng một topic |
|
[ BAGGAGE ] |
Liệt kê những file mà đưa vào trong help file |
|
[ BITMAP ] |
Chỉ rõ những file hình ảnh. Section này có thể không cần thiết nếu bạn sử dụng chức năng BMROOT hoặc ROOT |
|
[ BUILDTAGS ] |
Chỉ rõ valid build tag |
|
[ CONFIG ] |
Chỉ rõ help macro và button sử dụng trong help file. |
|
[ CONFIG : x ] |
Chứa 1 hoặc nhiều macro để Windows Help chạy khi mở cửa sổ tương ứng. |
|
[ FILES ] |
Chỉ rõ những file topic dùng để tạo Help File, section này là bắt buộc. |
|
[ MAP ] |
Liên kết các topic với các số ngữ cảnh |
|
[ MACROS ] |
Liên kết các macro với từ khóa |
|
[ OPTIONS ] |
Khai báo những chức năng điều khiển quá trình xây dựng. Nếu section này được dùng thì sẽ đặt nó nằm đầu tiên nhất trong file project để được sử dụng trong quá trình xây dựng help file. |
|
[ WINDOWS ] |
Dùng để định nghĩa đặc điểm của cửa sổ chính và cửa sổ phụ trong Help file |
Mỗi file project đều bắt buộc phải có section [ FILES ] để liệt kê tất cảc các file topic. Và section [ OPTIONS ] nếu được sử dụng thì thường sẽ có chức năng COMPRESS để ấn định việc nén hay không nén. Nếu chúng ta nén file help sẽ làm cho kích thước sẽ nhỏ lại.
Ví dụ sau đây nó sẽ nén hai file MAIN.RTF và MENUS.RTF
[OPTIONS]
COMPRESS=TRUE
[FILES]
MAIN.RTF
MENUS.RTF
Sử dụng Macro trong file project :
Bạn có thể thêm macro vào trong file
project của bạn trong section [ MACROS ]. Những Macro đó
sẽ được thực thi nếu như người
dùng chọn những từ khóa trong index.
Bạn cũng có thể tạo một menu
mới và những button trong Windows Help bằng cách sử dụng
những chức năng như là : CreateButton và InsertMenu.
Bạn có thể phát triển thêm về
Windows Help của bạn bằng các chức năng có sẵn
trong thư viên liên kết động ( .DLL ). Tạo ra các
macro bằng cách gọi các hàm có trong thư viện. Nếu
như bạn sử dụng những hàm trong thư viện
DLL thì bạn phải khai báo những hàm đó bằng
macro RegisterRountine trong section [ CONFIG ] của file project.
Ví dụ :
Sau đây là ví dụ về file project của
ứng dụng Cardfile :
; Options used to define the Help title bar and icon
[OPTIONS]
ROOT=C:\HELP
BMROOT=C:\HELP\ART
CONTENTS=cont_idx_card
TITLE=Cardfile Help
ICON=CARDHLP.ICO
COMPRESS=OFF
WARNING=3
REPORT=ON
ERRORLOG=CARD.BUG
; Files used to build Cardfile Help
[FILES]
RTFTXT\COMMANDS.RTF
RTFTXT\HOWTO.RTF
RTFTXT\KEYS.RTF
RTFTXT\GLOSSARY.RTF
; Button macros and Using help file
[CONFIG]
CreateButton("btn_up", "&Up", "JumpContents('HOME.HLP')")
BrowseButtons()
SetHelpOnFile("APPHELP.HLP")
; Secondary-window characteristics
[WINDOWS]
picture = "Samples", (123,123,256,256), 0, (0,255,255), (255,0,0)
PcLeHoan
1996 - 2002
Mirror :
http://www.pclehoan.com
Mirror :
http://www.lehoanpc.net
Mirror :
http://www.ktlehoan.com