What's New
LeVeL BBS
HTML Gallery maker
v.3.1 for Win9x/NT/W2K Freeware (18 Oct 2001)

Contents

0. Disclaimer
1. What is "Gallery Maker"?
2. Installation and startup guide
3. Description and structure of HTML-pages
  3.01 Description and structure of "Table" HTML-page
3.02 Description and structure of "Image Shell" HTML-page
3.03 Description and structure of "Main Index" HTML-page
3.04 Description and structure of "Local Index" HTML-page
4. The description of .INI-file
  4.01 Section [ General ]
4.02 Section [ Image ]
4.03 Section [ Thumbnail ]
4.04 Section [ TablePage ]
4.05 Section [ TableNavigation ]
4.06 Section [ ShellPage ]
4.07 Section [ ShellNavigation ]
4.08 Section [ MainIndexPage ]
4.09 Section [ LocalIndexPage ]
4.10 Section [ Auto ]
4.11 Section [ User ]
4.12 Section [ GM Messages ]
5. The description of all possible variables
  5.01 Group "TCF + SCF + MICF + LICF + TNI + SNI + MIPI + LIPI + UDV + JC"
5.02 Group "TCF + SCF + LICF + CSV + JC"
5.03 Group "TCF + SCF"
5.04 Group "CCF + SCF + CSV + JC"
5.05 Group "CCF + SCF"
5.06 Group "CCF"
5.07 Group "TCF + LICF"
5.08 Group "TCF"
5.09 Group "TCF + TNI"
5.10 Group "TNI"
5.11 Group "SCF + LICF"
5.12 Group "SCF"
5.13 Group "SCF + SNI"
5.14 Group "TCF + SCF + LICF"
5.15 Group "TCF + SCF"
5.16 Group "TCF + SCF + LICF + MIRC + TNI + SNI + MIPI + LIPI"
5.17 Group "MIRC"
5.18 Group "MICF"
5.19 Group "TCF + SCF + LICF + TNI + SNI + MIPI + LIPI + UDV"
6. Special expressions
7. Registration and licensing
8. Acknowledgments
9. "GM" Gallery hall
10. Awards
11. Download and how to contact me
 
0. Disclaimer Top

The usage of this program is at your own risk! I assume no liability, whatsoever. Although this program has been extensively tested, you are adviced that random problems might occur. I'm in no way responsible for any damage caused by this program to the system or in any other way.
 
1. What is "Gallery Maker"? Top

Screenshot   The purpose of this software - creation virtual picture galleries, museums, catalogs, presentation and foto- or image-albums on the HTML basis or thumbnails generation (with differents F/X).
  While surfing web you can find many galleries which not always have a good design. Of course, creating a picture gallery is a hard and time-consuming work, so try out my program and find put that it delivers you professional tools at a minimum expense.
  The program is intended for the advanced users, which know HTML, since logic of the program is based on fragments of a HTML-code from which all HTML-pages are created, and "variables" - instead of which the program automatically inserts concrete values.

Main features:
System requirements:
P-133, RAM 5-10 Mb, HDD 2.5Mb, Win9x/NT4/2k/Millennium
 
2. Installation and startup guide Top

Installation.

Extract all files from archive into some directory, for example:
  C:\Program Files\GM\
Note: The archive contains some files with long names. Make sure that you correctly expand these files!
Installation complete ;)

Quick start.

Go to directory where Gallery Maker is located and execute next command:
  Demo.bat <ENTER>
This command will start process of creation demo-gallery in GM Path\Target\ directory.
After terminating a process you can load Main Index Page - index.html (which will be located in you Gallery Maker directory) in your favorite web browser for viewing a result of work.

Step-by-step start.

In the beginning you should check up main configuration .INI-file. Go to directory where is located Gallery Maker and execute next command:
  gm.exe Check <ENTER>
This command will check up default gm.ini file. Check gm.log for errors. If fatal errors not found then you can execute a command:
  gm.exe Start <ENTER>
This command will start thumbnails and all HTML-pages creation process with default gm.ini.
You also can run:
  gm.exe Check my_project.ini <ENTER> or
  gm.exe Check C:\MY\my_project.ini <ENTER> or
  gm.exe Start my_project.ini <ENTER> or
  C:\Soft\GM\gm.exe Start D:\MY\Gallery\my_project.ini <ENTER>
In this case Check or Start process will be executed for user's my_project.ini file.
Note: You can look the summary table on all "Exit Codes" in a file ExitCode.txt
 
3. Description and structure of HTML-pages Top

  I have divided all HTML-pages on some logic fragments (11 for Table page, 9 for Image Shell page, 3 for Main Index page, 4 for Local Index page). Each HTML-fragment is intended to special purposes. You can change any HTML-fragment as you want.
  By default all HTML-fragments are located in GM Path\Fragments directory. You can move them to any directory, but in this case you should correct your .INI-file.
  Say, in some subdirectory inside source directory the file is found. Its name coincides with a name of some HTML-fragment. In this case given file will be used as HTML-fragment for this directory. But if local .INI-file exists in this directory then values from local .INI-file will have higher priority.
  The Table, Image Shell and Local Index HTML-files are placed in the folders with the corresponding output images. If you are duplicating source tree the program will create HTML-files in all folders where there are image files.

Scheme of links between HTML-pages in gallery Schema links
 
3.01 Description and structure of "Table" HTML-page

  "Table"-pages is a central part of any gallery. Usually this HTML-page consists from a header, table with thumbnails, navigational panels and footer. The popularity of your gallery strongly depends on the quality of "Table"-page and comfort of navigation between this and others HTML-pages.

1. Header Code
2. Body Code
3. Top Code
4. Top Navigate Code
5. Before Table Code
6. Table Begin Code
   TRopen
      7. Cell Code
       ...
      7. Cell Code
   TRclose
    ...
   TRopen
      7. Cell Code
       ...
      7. Cell Code     Empty Cell Code
   TRclose
8. Table End Code
9. After Table Code
10. Footer Navigate Code
11. Footer Code

Note: You can inserts any navigation elements into any "Table" HTML-fragments.
 
3.02 Description and structure of "Image Shell" HTML-page

  What is an "Image Shell"? When you click on a thumbnail image, a larger image is displayed in your web browser. Normally this image is left-top justified and displayed with the default (white) background. An "Image Shell" allows you to display this image inside an HTML document. You can create a shell that will display all the your images. When you manually making a gallery then the process of creation "Image Shell" pages is a hard and time-consuming work but with the help of Gallery Maker you can easy and quickly create "Image Shell" with any difficulty level.

1. Header Code
2. Body Code
3. Top Code
4. Top Navigate Code
5. Before Image Code
6. Image Code
7. After Image Code
8. Footer Navigate Code
9. Footer Code

Note: You can inserts any navigation elements into any "Image Shell" HTML-fragments.
 
3.03 Description and structure of "Main Index" HTML-page

   Main Index page is the very important one because it links together all the pages of your gallery. From this page the user may surf to any part of gallery. The programm allows you to fully automatically create Main Index page and insert the most important information (number of "Table" HTML-pages and images, images size) into this page for each part of gallery and total statistics. Also you can create individual Record Code for each subdirectory. It will allow you to create the Main Index page practically of any form and contents.

1. Header Code
  2. Record Code
    ...
  2. Record Code
3. Footer Code

Note: If you have to use the user-defined variables inside Index Header Code and Index Footer Code than you should use only the user-defined variables which defined in the main .INI-file.
 
3.04 Description and structure of "Local Index" HTML-page

  For understanding of essence of this page I will describe two examples of its using:
  1. "Information" about the current directory.
  Sometimes can be necessary to add into some part of gallery a small "introduction" part (for example: the introduction, biography of the artist, comment of the author...) In this case, from MainIndexPage the user should first get this information page, but afterwards can go on Table-page, Image Shell-page in this directory or return to MainIndexPage.
  2. "Lock-page".
   The name of a file for this page select so that it coincided with the "default" WWW-server filename. Usually it "index.html" or "default.html", but can be and another - depends from settings concrete WWW-server. If the user will input the url http://www.server_name.com/gallery/lions/ then server automatically "upload" for this user your "lock-page" from subdirectory lions/.
  The main difference between "lock-page" and "information" in that that on "lock-page" in gallery can not be of the direct link.

1. Header Code
2. Body Code
3. Top Code
4. Footer Code

Note: It is possible situation when inside a some subdirectory there are no graphic files which should be included in gallery (for example, as a result of a filtration "by FileNames" or when using "ImagesList"). In this case you should correct Main Index Record Code for this subdirectory thus that it pointed on LocalIndexPage.
 
4. The description of .INI-file Top

This part contains explanation of the .INI-file variables.

| General | Image | Thumbnail | TablePage | TableNavigation | ShellPage | ShellNavigation | MainIndexPage | LocalIndexPage | Auto | User | GM Messages |
 
4.01 Section [ General ]

SrcDir
This is where you specify the root directory from which input images will be read. This path must exist.
Ex. 1: Source\ - in this case for SrcDir will be accepted GM Path\Source\
Ex. 2: C:\Pics\ - in this case for SrcDir will be accepted C:\Pics\
Note: You can't use for SrcDir and DstDir values like "C:", "D:\"...
DstDir This is where you specify the root directory for all output images and HTML-pages to be placed.
Ex. 1: Destination\ - in this case for DstDir will be accepted GM Path\Destination\
Ex. 2: C:\MySite\ - in this case for DstDir will be accepted C:\MySite\
Note: Will be careful when you set values SrcDir and DstDir. Correct case of pathnames is very important for Linux and Web-servers.
ScanSubDirs Yes - to process all image files in all subdirectories of the specified SrcDir.
No - to process only SrcDir directory.
LocalINIFileName This variable defines a name of a local-configuration file.
This file can be placed in any subdirectory inside SrcDir. In this file you can redefine any variables (including user-defined variables but excluding all variables from [ General ] section). All reassigned variables will be active only for this subdirectory.
Ex. : gm-local.ini
Note: All invalid variables and values in local .INI-file will be automatically skipped.
CreateLog Yes - to create a log-file.
No - to not create a log-file.
LogFileName This variable defines a log filename.
Ex. 1: gm.log
Ex. 2: c:\temp\gm.log
LogOverwrite Yes - to overwrite a log-file with each start of programm.
No - to append new data in the end of existing log-file.
Language This variable defines the path and filename of language-module which program must use for output of different messages.
By default, with the program are distribut three language module: English.lng - English language, Russian.lng - Russian language and Dutch.lng - Dutch language.
You can create the language module for the necessary language and use it.
Also see topic "GM Messages"
Ex. : Language=Language\English.lng
ColorInterface Yes - to allow "color" interface.
No - to forbid "color" interface (more fasted method for text out).
AlertMaxHDDFree If size of free HDD-space on target partition will be less then value of this variable then you will get a warn message. This variable's meaning is Kbytes. It's value must be [10...10000000].
Ex. : 3000
AlertMinHDDFree If size of free HDD-space on target partition will be less then value of this variable then the action will be executed according to meaning variable AlertAction. This variable's meaning is Kbytes. It's value must be [10...10000000].
Ex. : 1500
AlertAction 0 - not pay attention (I strongly don't recommend this mode).
1 - stop programm and show dialogue with a question about the next action.
Keys Description
ENTER The program will be auto-started as soon free space on target partition will be more than AlertMinHDDFree.
SPACE Ignore this warning message (don't recommend).
ESC Immediately exit from program with ExitCode=11.
2 - Immediately terminate of program without any questions. In this case ExitCode=10.
ClearDst 0 - Don't clear DstDir before processing (all destination files will be overwritten on measure of need).
1 - The program will delete all files and directories in the DstDir before starting to process (Fast method).
2 - The program will move all files from DstDir to the Recycle Bin before starting to process (Slow method).
Note:Network drives don't support remove into Recycle Bin, in this case all files will be removed directly (like method 1).
DstFileCase
DstDirsCase
0 - No Change. Leave upper/lower case as set in input file/directory name.
1 - Lower. Force output file/directory name to lower case.
2 - Upper. Force output file/directory name to upper case.
Note: If you choise is 1 or 2 then selected case will be also used for all corresponding variables.
CreateMainIndex Yes - to create Main Index page for gallery.
No - don't create Main Index page for gallery.
Note: Main Index page will be created only if you set CreateTable=Yes or CreateLocalIndex=Yes
MainIndexPageFileName This variable defines Main Index page filename without path.
Main Main Index page always will be created in the directory on one level above than DstDir.
Ex. : MainIndexPageFileName=index.html and DstDir=C:\my\gallery\out\, in this case Main Index page will be created as C:\my\gallery\index.html
MainIndexPageHeaderCode This variable defines a name of file containing Main Index Header Code HTML-fragment.
Ex. 1: fragments\mi01_Header.htm
Ex. 2: C:\My\GM\Fragments\miHeader.html
MainIndexPageFooterCode This variable defines a name of file containing Main Index Footer Code HTML-fragment.
Ex. 1: fragments\mi01_Footer.htm
Ex. 2: C:\My\GM\Fragments\miFooter.html
CodePageFileName This variable defines a name of file containing character tables (code pages).
Ex. 1: CodePage.ini
Ex. 2: C:\My\CodePages.ini
You may change or add the new character table, for this read the commentary inside this file.
CreateMainCSV Yes - to create a main CSV-file.
No - to not create a main CSV-file.
MainCSVFileName This variable defines main CSV-file name without path. Main CSV-file always will be created in the directory on one level above than DstDir.
Ex. : MainCSVFileName=Main.csv
MainCSVFormat This variable defines the format of main CSV-file. Inside this string you can use any variables from CSV group or user-defined variables.
Ex. : MainCSVFormat=~DST_IMAGE_NAME_L~, ~SRC_IMAGE_SIZE_B~, ~SRC_IMAGE_CRC32~
PostProcess Directly before termination of work (post-process stage) program processes special expressions. If you do not use these expressions in your project, then for increasing speed of program you may forbid this stage.
Yes - "post-process" allowed.
No - "post-process" forbidden.
 
4.02 Section [ Image ]

CopySrcImagesToDst
Yes - to copy source images into DstDir.
No - don't copy source images into DstDir.
SrcImageNameMask You can define scenario and masks for INclude or EXclude images in/from source PicFileList.
Scenario consists from rules:
SrcImageNameMask = Rule 1 Rule 2 ... Rule N
Rule consists from IN or EX switchers and filename mask:
Rule N = IN | EX "mask"
A valid mask consists of literal characters, sets, and wildcards. The comparison to literal characters is case-insensitive. Each mask begins and ends with a symbol " (quote).
Order of work:
0. Select all graphical files in current directory (Obligatory step).
If value of SrcImageNameMask is not blank then for each image next steps will be run:
1. Check Rule 1 for current image filename. If a filename conforms to the mask then this image will be included into PicFileList, else - excluded.
2. Check Rule 2 ...
N. Check Rule N
Note: File may be excluded from list first, but after that may be included by following rule.
Ex. : SrcImageNameMask = EX "*.bmp" IN "a*.bmp" IN "b*.bmp". In this case all graphic files will be added into PicFileList excluding *.bmp, but including a*.bmp and b*.bmp.
SrcImageDateMask This variable and its work is very like on SrcImageNameMask, but "mask" consists of a range of dates.
For analysis is used the date of last modification of a file. If your file system does not support "last modification date" that is used "creation date of file".
Ex. : SrcImageDateMask = EX "01.01.1995<>01.01.2002" IN "05.05.1996<>10.10.1997" IN "08.08.1999<>11.11.1999". In this case all graphic files will be added into PicFileList excluding 01.01.1995...01.01.2002, but including two subrange 05.05.1996...10.10.1997 and 08.08.1999...11.11.1999.
SrcImageSizeMask This variable and its work is very like on SrcImageNameMask, but "mask" consists of a range of sizes.
Ex. : SrcImageSizeMask = EX "1<>10000000" IN "50000<>60000" IN "100000<>200000". In this case all graphic files will be added into PicFileList excluding 1...10000000, but including two subrange 50000...60000 and 100000...200000.
SrcImageAttributeMask You may set the file attributes that will define the appearance of image in PicFileList.
Format of this variable: [Read only | Archive | Hidden | System]
All this four fields may have next values:
Value Description
* Attribute may be any.
+ Attribute must be set.
- Attribute must be not set.
Ex. : SrcImageAttributeMask=[*+--] In this case only files with next attributes: ReadOnly=Any, Archive=Yes, Hidden=No, System=No will be added into PicFileList.
Warning: The program analyse the meanings all four variable ( SrcImageNameMask, SrcImageDateMask, SrcImageSizeMask и SrcImageAttributeMask ) simultaneously at acceptance of the decision about addition (or exception) image in gallery.
DstImageFileNameSchema This variable defines the schema of filename creation for image files during copying process (from SrcDir to DstDir).

Value Description Sample of target image filename
i Use source image name as name of target image. PicName.jpg
pi Use DstImageFileNamePrefix + source image name as name of target image. i_PicName.jpg
ip Use source image name + DstImageFileNamePostfix as name of target image. PicName_i.jpg
psp Use DstImageFileNamePrefix + DstImageFileNameSuffix + DstImageFileNamePostfix as name of target image. i_001_i.jpg
ps Use DstImageFileNamePrefix + DstImageFileNameSuffix as name of target image. i_001.jpg
sp Use DstImageFileNameSuffix + DstImageFileNamePostfix as name of target image. 001_i.jpg
DstImageFileNamePrefix This variable sets prefix string which will be added to the beginning of the output image filename.
Ex. : i_
DstImageFileNameSuffixPS This variable defines a symbol which will be used as a padding symbol in a suffix.
Ex. : 0
DstImageFileNameSuffix This variable defines the suffix length of filename of target image. May be [1...5].
All examples are given for ps-schema:
1 - simple numbering:
    Ex. : i_1.jpg, i_2.jpg, i_3.jpg ... i_99999.jpg ...
    no limits.
For meanings 2, 3, 4 and 5 the DstImageFileNameSuffixPS is applied to padding suffix up to specified length.
2 - Length of a suffix is 2 symbols:
    Ex. : i_01.jpg, i_02.jpg, i_03.jpg ... i_99.jpg
    in this case "99" - the maximal meaning for suffix.
3 - Length of a suffix is 3 symbols:
    Ex. : i_001.jpg, i_002.jpg, i_003.jpg ... i_999.jpg
    in this case "999" - the maximal meaning for suffix.
4 - Length of a suffix is 4 symbols:
    Ex. : i_0001.jpg, i_0002.jpg, i_0003.jpg ... i_9999.jpg
    in this case "9999" - the maximal meaning for suffix.
5 - Length of a suffix is 5 symbols:
    Ex. : i_00001.jpg, i_00002.jpg, i_00003.jpg ... i_99999.jpg
    in this case "99999" - the maximal meaning for suffix.
DstImageFileNameSuffixSV This variable defines "suffix startup value" for destination image filename.
Ex. : 1
DstImageFileNamePostfix This variable sets postfix string which will be added to the end of the output image filename.
Ex. : _i
SchemaSort This variable defines images sorting order of gallery.
0 - No Sort. Images will be processed in the same (apparently random) order that they are listed in when you type DIR from a DOS prompt.
1 - to sort by Name of file (ascending).
2 - to sort by Name of file (descending).
3 - to sort by Size of file (ascending).
4 - to sort by Size of file (descending).
5 - to sort by DateTime of file (ascending).
6 - to sort by DateTime of file (descending).
7 - to sort in order specified inside ImagesListName.
8 - to sort by the contents of a file "Table"-comment (ascending).
9 - to sort by the contents of a file "Shell"-comment (ascending).
Note: If you use "byNameAsc" or "byNameDes" then file extensions are not used in sorting process.
ImagesListName This variable defines a name of file (without path) which contains list of images and, if required, "ThumbFrame" coordinates. This file should be located in the same directory as the source image which are specified in it. Only images from this list will be included into gallery at order that they are listed in this file.
"ImageList" is created by the special utility ILM.exe. Here you can read the small recommendations on its use.
Q. What is a "ThumbFrame"?
A. This is a rectangular area on the source image. Only this fragment of the source image will is used for creation a thumbnail. Thus you can create thumbnail on which is represented only small, but most important, fragment of source image.
Ex. : ImagesList.txt
Note: Only if you set SchemaSort=7 this variable will be used.
RestoreSrcImageDate Yes - to set date and time of source image for destination image and its thumbnail.
No - don't change date and time of target image.
CreateLocalCSV Yes - to create a local CSV-file.
No - to not create a local CSV-file.
LocalCSVFileName This variable defines local CSV-file name without path. All local CSV-files will be created in corresponding directories inside destination tree.
Ex. : MainCSVFileName=Local.csv
LocalCSVFormat This variable defines the format of local CSV-file. Inside this string you can use any variables from CSV group or user-defined variables.
Ex. : MainCSVFormat=~DST_IMAGE_NAME_L~, ~SRC_IMAGE_SIZE_B~, ~SRC_IMAGE_CRC32~
 
4.03 Section [ Thumbnail ]

CreateThumbs
Yes - to create thumbnails.
No - to not create thumbnails.
ThumbFormat This variable sets format of output thumbnails.
Valid values: jpg, bmp
ThumbFileNameSchema This variable defines the filename schema for thumbnails.

Value Description Sample of thumbnail filename
pi Use ThumbFileNamePrefix + source image name as thumbnail name. t_PicName.jpg
ip Use source image name + ThumbFileNamePostfix as thumbnail name. PicName_t.jpg
psp Use ThumbFileNamePrefix + ThumbFileNameSuffix + ThumbFileNamePostfix as thumbnail name. t_001_t.jpg
ps Use ThumbFileNamePrefix + ThumbFileNameSuffix for thumbnail name. t_001.jpg
sp Use ThumbFileNameSuffix + ThumbFileNamePostfix as thumbnail name. 001_t.jpg
ThumbFileNamePrefix This variable sets prefix string which will be added to the beginning of the output thumbnail filename.
Ex. : t_
ThumbFileNameSuffixPS This variable defines a symbol which will be used as a padding symbol in a suffix.
Ex. : 0
ThumbFileNameSuffix This variable defines the suffix length of thumbnail filename. May be [1...5].
All examples are given for ps-schema:
1 - simple numbering:
    Ex. : t_1.jpg, t_2.jpg, t_3.jpg ... t_99999.jpg ...
    no limits.
For meanings 2, 3, 4 and 5 the ThumbFileNameSuffixPS is applied to padding suffix up to specified length.
2 - Length of a suffix is 2 symbols:
    Ex. : t_01.jpg, t_02.jpg, t_03.jpg ... t_99.jpg
    in this case "99" - the maximal meaning for suffix.
3 - Length of a suffix is 3 symbols:
    Ex. : t_001.jpg, t_002.jpg, t_003.jpg ... t_999.jpg
    in this case "999" - the maximal meaning for suffix.
4 - Length of a suffix is 4 symbols:
    Ex. : t_0001.jpg, t_0002.jpg, t_0003.jpg ... t_9999.jpg
    in this case "9999" - the maximal meaning for suffix.
5 - Length of a suffix is 5 symbols:
    Ex. : t_00001.jpg, t_00002.jpg, t_00003.jpg ... t_99999.jpg
    in this case "99999" - the maximal meaning for suffix.
ThumbFileNameSuffixSV This variable defines "suffix startup value" for thumbnail filename.
Ex. : 1
ThumbFileNamePostfix This variable sets postfix string which will be added to the end of the output thumbnail filename.
Ex. : _t
ThumbResamplingFilter This variable defines the filter type which must be used for stretching an image to thumbnail.
Value Description
Box, Triangle, Hermite, Bell, Spline, Lanczos3, Mitchell High quality, but low speed.
Bilinear Good quality, good speed.
StretchBlt Repugnant quality, best speed.
Internal Windows function ;)
Ex. : ThumbResamplingFilter = Bilinear
ThumbWidth
ThumbHeight
This variables defines the max thumbnail width and height. Must be [5...10000]
Ex. 1: ThumbWidth=100
Ex. 2: ThumbHeight=50%
Note: For exact understanding the essence of these values will consider the order of program work at time of calculation the real sizes of thumbnail. At first, depending on size of source image, values and format variable (pixels or percent) are defined the sizes of rectangle area (in which the thumbnail must be fits entirely). Secondly, at during thumbnail creation process, the program makes proportional scaling of source image, so as thumbnail sizes did not overrun this area. So, most often, the real width or height of thumbnail will less than specified values.
UseSrcImageIfSmall This variable controls process of thumbnail creation.
Yes - if height and width of source image will be less than ThumbWidth and ThumbHeight then the source image will be used as thumbnail.
No - the source image will be scaled to make a thumbnail.
JPEGCompressionQuality This variable sets compression quality value for creation of thumbnail.
Ex. : 70
JPEGProgressiveEncoding Determines whether an image can be progressively displayed when it is decompressed.
JPEGGrayscale Determines whether the image output of a JPEG image is black and white, or color.
JPEGComment You can specify your own comment text to be written to the output JPGs. This must be plain ASCII text.
Warning: The length of comment can not be more than 65533 bytes!
Ex. 1: JPEGComment="~SRC_JPEG_COMMENT~ any other text".
Ex. 2: JPEGComment="File written by "LeVeL BBS HTML Gallery Maker ~Version~"" (~Version~ - user-defined variable).
Ex. 3 JPEGComment="LoadFromFile( "c:\comment.txt" )"
In this case inside "comment.txt" you can use any variables from any JC-group and any user-defined variables.
BorderSchema

This variable defines style (effect) of border at creation of thumbnail.
Available values: 0, 1, 2, 3, 4, 5, 6, 7

0 - StretchRectangle 1 - StretchEllipse 2 - Shadow Detail
FX0_StretchRectangle FX1_StretchEllipse FX2_Shadow
3 - RectangleBevel Detail 4 - FadeRectangleBevel 5 - FadeEllipseBevel
FX3_RectangleBevel FX4_FadeRectangleBevel FX5_FadeEllipseBevel.gif
6 - FadeShadow Detail 7 - Film Detail 8 - Stamp Detail
FX6_FadeShadow FX7_Film FX8_Stamp
FX2_Shadow

All this variables defines geometrical (in pixels) and colour parameters of thumbnail.
You must specify Color as a specific 4-byte hexadecimal number, the low three bytes represent RGB color intensities for blue, green, and red, respectively.
If the highest-order byte is zero ($00), the color obtained is the closest matching color in the system palette. If the highest-order byte is one ($01), the color obtained is the closest matching color in the currently realized palette. If the highest-order byte is two ($02), the value is matched with the nearest color in the logical palette of the current device context.

Some values For instance Meaning
$00000000 Sample clBlack
$00FF0000 Sample clBlue
$0000FF00 Sample clGreen
$000000FF Sample clRed
$00FFFF00 Sample clCyan
$0000FFFF Sample clYellow
$00FF00FF Sample clMagenta
$00FFFFFF Sample clWhite

FX6_FadeShadow
Warning: Don't set very large value for Shadow_X. The optimal value - [5...15].

FX7_Film
For creation of this effect the proportions of a real foto-film (35 mm) are used. The optimal condition ThumbWidth / ThumbHeight = 1,375. You should establish only colour characteristics. The thickness for all contour lines 1 pixel.

FX8_Stamp
Note: For this F/X values Shadow_X and Shadow_Y must be more then 0. Optimal - [3...10],
Shadow_X,
Shadow_Y
This variables sets value of delta between image and his shadow. Change the sign (+/-) of this variables and shadow direction will be changed. May be [-50 ... 50].
Ex. : 4
Top_Amount,
Left_Amount,
Right_Amount,
Bottom_Amount
This variables actually only for RectangleBevel effect. They sets values of lightness for four sides of rectangle. May be [-255 ... 255].
Ex. 1: 130
Ex. 2: -150
SharpenRadius This variable sets radius (in pixels) for Sharpen effect. Must be more that 0.
If SharpenRadius=0 then sharpen effect will not be used.
Ex. : 1
SharpenLevel This variable sets depth (number of passages) for Sharpen effect. Must be more that 0.
If SharpenLevel=0 then sharpen effect will not be seen.
Ex. : 1
 
4.04 Section [ TablePage ]

CreateTable
Yes - to create "Table" HTML-pages.
No - to not create "Table" HTML-pages.
TableFileNameSchema This variable defines the filename schema for "Table"-pages.

Value Description Sample of "Table"-page filename
psp Use TableFileNamePrefix + TableFileNameSuffix + TableFileNamePostfix as "Table"-page name. Page_001_Page.htm
ps Use TableFileNamePrefix + TableFileNameSuffix as "Table"-page name. Page_001.htm
sp Use TableFileNameSuffix + TableFileNamePostfix as "Table"-page name. 001_Page.htm
TableFileNamePrefix This variable sets prefix string which will be added to the beginning of the output "Table"-page filename.
Ex. : Page_
TableFileNameSuffixPS This variable defines a symbol which will be used as a padding symbol in a suffix.
Ex. : 0
TableFileNameSuffix This variable defines the suffix length of "Table"-page filename. May be [1...5].
All examples are given for ps-schema:
1 - simple numbering:
    Ex. : Page_1.htm, Page_2.htm, Page_3.htm ... Page_99999.htm ...
    no limits.
For meanings 2, 3, 4 and 5 the TableFileNameSuffixPS is applied to padding suffix up to specified length.
2 - Length of a suffix is 2 symbols:
    Ex. : Page_01.htm, Page_02.htm, Page_03.htm ... Page_99.htm
    in this case "99" - the maximal meaning for suffix.
3 - Length of a suffix is 3 symbols:
    Ex. : Page_001.htm, Page_002.htm, Page_003.htm ... Page_999.htm
    in this case "999" - the maximal meaning for suffix.
4 - Length of a suffix is 4 symbols:
    Ex. : Page_0001.htm, Page_0002.htm, Page_0003.htm ... Page_9999.htm
    in this case "9999" - the maximal meaning for suffix.
5 - Length of a suffix is 5 symbols:
    Ex. : Page_00001.htm, Page_00002.htm, Page_00003.htm ... Page_99999.htm
    in this case "99999" - the maximal meaning for suffix.
TableFileNameSuffix This variable defines "suffix startup value" for filename of "Table"-page.
Ex. : 1
TableFileNamePostfix This variable sets postfix string which will be added to the end of the output "Table"-page filename.
Ex. : _Page
TableFileNameExt This variable defines the extension of filename for output "Table" HTML-pages.
Ex. : .htm
Note: Don't forget about the symbol "."
TRopen This variable defines string which will be used as <TR> tag.
Ex. : <TR>
TRclose This variable defines string which will be used as </TR> tag.
Ex. : </TR>
Columns This variable defines maximum number of columns in "Table" HTML-page.
Ex. : 4
Rows This variable defines maximum number of rows in "Table" HTML-page.
Ex. : 5
HeaderCode This variable defines a name of file containing Header Code HTML-fragment.
Ex. 1: fragments\t01_Header.htm
Ex. 2: C:\My\GM\Fragments\tHeader.html
BodyCode This variable defines a name of file containing Body Code HTML-fragment.
Ex. 1: fragments\t02_Body.htm
Ex. 2: C:\My\GM\Fragments\tBody.html
TopCode This variable defines a name of file containing Top Code HTML-fragment.
Ex. 1: fragments\t03_Top.htm
Ex. 2: C:\My\GM\Fragments\tTop.html
TopNavigateCode This variable defines a name of file containing Top Navigate Code HTML-fragment.
Ex. 1: fragments\t04_TopNavigate.htm
Ex. 2: C:\My\GM\Fragments\tTopNavigate.html
BeforeTableCode This variable defines a name of file containing Before Table Code HTML-fragment.
Ex. 1: fragments\t05_BeforeTable.htm
Ex. 2: C:\My\GM\Fragments\tBeforeTable.html
TableBeginCode This variable defines a name of file containing Table Begin Code HTML-fragment.
Ex. 1: fragments\t06_TableBegin.htm
Ex. 2: C:\My\GM\Fragments\tTableBegin.html
CellCode This variable defines a name of file containing Cell Code HTML-fragment.
Ex. 1: fragments\t07_Cell.htm
Ex. 2: C:\My\GM\Fragments\tCell.html
EmptyCellCode This variable defines a name of file containing Empty Cell Code HTML-fragment.
Q. : That is a "Empty Cell Code"?
A. : This is fragment of HTML-code which will be added into table if the number of the filled cells on a row is less than value Columns.
Ex. 1: fragments\t07_EmptyCell.htm
Ex. 2: C:\My\GM\Fragments\tEmptyCell.html
Note: You can forbid addition Empty Cell Code if table contains only one row.
TableEndCode This variable defines a name of file containing Table End Code HTML-fragment.
Ex. 1: fragments\t08_TableEnd.htm
Ex. 2: C:\My\GM\Fragments\tTableEnd.html
AfterTableCode This variable defines a name of file containing After Table Code HTML-fragment.
Ex. 1: fragments\t09_AfterTable.htm
Ex. 2: C:\My\GM\Fragments\tAfterTable.html
FooterNavigateCode This variable defines a name of file containing Footer Navigate Code HTML-fragment.
Ex. 1: fragments\t10_FooterNavigate.htm
Ex. 2: C:\My\GM\Fragments\tFooterNavigate.html
FooterCode This variable defines a name of file containing Footer Code HTML-fragment.
Ex. 1: fragments\t11_Footer.htm
Ex. 2: C:\My\GM\Fragments\tFooter.html
TopCodeOnly1Page
BeforeTableCodeOnly1Page
AfterTableCodeOnly1Page
FooterCodeOnly1Page
Yes - in this case HTML-fragment will be added only to the first "Table"-page in a directory.
No - in this case HTML-fragment will be added to all "Table"-pages in a directory.
AddEmptyCellCode Yes - to allow addition Empty Cell Code into table.
No - to forbid addition.
AddEmptyCellCodeIf1Row You can permit or forbid addition Empty Cell Code into "Table" HTML-page if table consists only of one row.
Yes - to allow addition (also you must set AddEmptyCellCode=Yes).
No - to forbid addition.
AddComment You can allow automatic addition of comments to images from "comment file".
Yes - to permit addition of the comments to images.
No - to forbid addition of the comments to images.
CommentFileExt This variable defines the extension of a "comment file" for "Table" pages.
Q. : What is a "comment file"?
A. : This is a simple file inside which you can place the description (or HTML code) for image. This file should be located in the same directory as the source image. The filename of "comment file" differs from source image filename only by extension.
Ex. : Source image name = Pic1.jpg and CommentFileExt=.txt. In this case the filename of "comment file" must be Pic1.txt.
CommentRecode You can automatically recode content of the "comment file" from "any" to "any" codepages. By default are supported the next characters tables: DOS 866, Windows-1251, ISO 8859-5, KOI-8.
Format of this key: SourceCPName::TargetCPName
Default CPName (aliases): dos, win, iso, koi
For recode skipping set this key to blank or "No".
Ex. 1: CommentRecode=No
Ex. 2: CommentRecode=dos::win and AddComment=Yes. In this case the comment will be recoded from DOS 866 to Windows-1251 codepage.
Note: The original "comment file" will be not modified during the process of recode.
For more details about codepages please read my comment inside CodePage.ini.
BeforeComment This variable defines a fragment of a HTML-code which will be auto-added before the comment.
Ex. : <FONT SIZE="2" COLOR="AQUA">
AfterComment This variable defines a fragment of a HTML-code which will be auto-added after the comment.
Ex. : </FONT>
 
4.05 Section [ TableNavigation ]

DelNavigateIf1Page
You can automatic remove all navigation markers from "Table"-page if current directory in gallery consists only of one "Table"-page.
Yes - to remove all navigation markers.
No - don't delete all navigation markers.
RoundBtnNavigation This parameter more often is applied when you want to create SlideShow-effect for "Table"-pages (this effect is possible to create with the help JavaScript or tag "META HTTP-EQUIV = "Refresh""). That is to say, the TABLE_NEXT_PAGE variable on the last "Table"-page pointed to the first "Table"-page, and conversely, the TABLE_PREV_PAGE variable on the first "Table"-page pointed to the last "Table"-page. We shall get the "round"-links.
Yes - to allow "round"-navigation.
No - to forbid "round"-navigation.
AutoRemoveDisabledButtons This parameter allows to control automatic removing from HTML-pages "disabled" navigational "buttons": Begin, Prev, Next ... "Disabled buttons" it "buttons" which are formed from variable BtnNav...A or do not point to concrete HTML-document.
Yes - to allow automatic removing "disabled" buttons.
No - to forbid removing "disabled" buttons (in this case is used BtnNav...A variable).
If button on navigation panel is linked to active "Table"-page then for this button will be used variable with suffix "A", else - "O".
BtnNavTableBeginA
BtnNavTableBeginO
This variable should contain a string HTML-code which will be used as "Table Begin"-button.
BtnNavTablePrevA
BtnNavTablePrevO
This variable should contain a string HTML-code which will be used as "Table Previous"-button.
BtnNavMainIndexA
BtnNavMainIndexO
This variable should contain a string HTML-code which will be used as "Main Index"-button.
BtnNavLocalIndexA
BtnNavLocalIndexO
This variable should contain a string HTML-code which will be used as "Local Index"-button.
BtnNavTableNextA
BtnNavTableNextO
This variable should contain a string HTML-code which will be used as "Table Next"-button.
BtnNavTableEndA
BtnNavTableEndO
This variable should contain a string HTML-code which will be used "Table End"-button.
MaxTxtLinksToPage This variable defines the maximum number of elements for "text" navigation on "Table"-page.
There can be any number from 3 up to 50, I recommend to use odd numbers: 5, 7, 9...
Ex. : 7
BeforeTxtNav This variable defines HTML-code which will be added in the begin ~TXT_NAV~.
TxtNavLabel This variable defines a label name which will be used in ~TXT_NAV~.
Ex. : "Page "
TxtNavA
TxtNavO
This variable should contain a string of HTML-code which will be used for "Text" link.
TxtNavSeparator This variable should contain a string of HTML-code which will be used as separator between "Text" links.
AfterTxtNav This variable defines HTML-code which will be added in the end ~TXT_NAV~.
 
4.06 Section [ ShellPage ]

CreateShell
Yes - to create "Image Shell" pages.
No - to not create "Image Shell" pages.
ShellFileNameSchema This variable defines the filename schema of "Image Shell" files.

Value Description Sample of "Image Shell" filename
i Use source image name as name of "Image Shell". PicName.htm
pi Use ShellFileNamePrefix + source image name as name of "Image Shell". s_PicName.htm
ip Use source image name + ShellFileNamePostfix as name of "Image Shell". PicName_s.htm
psp Use ShellFileNamePrefix + ShellFileNameSuffix + ShellFileNamePostfix as name of "Image Shell". s_001_s.htm
ps Use ShellFileNamePrefix + ShellFileNameSuffix as name of "Image Shell". s_001.htm
sp Use ShellFileNameSuffix + ShellFileNamePostfix as name of "Image Shell". 001_s.htm
ShellFileNamePrefix This variable sets prefix string which will be added to the beginning of the output "Image Shell" filename.
Ex. : s_
ShellFileNameSuffixPS This variable defines a symbol which will be used as a padding symbol in a suffix.
Ex. : 0
ShellFileNameSuffix This variable defines the suffix length of filename of "Image Shell". May be [1...5].
All examples are given for ps-schema:
1 - simple numbering:
    Ex. : s_1.htm, s_2.htm, s_3.htm ... s_99999.htm ...
    no limits.
For meanings 2, 3, 4 and 5 the ShellFileNameSuffixPS is applied to padding suffix up to specified length.
2 - Length of a suffix is 2 symbols:
    Ex. : s_01.htm, s_02.htm, s_03.htm ... s_99.htm
    in this case "99" - the maximal meaning for suffix.
3 - Length of a suffix is 3 symbols:
    Ex. : s_001.htm, s_002.htm, s_003.htm ... s_999.htm
    in this case "999" - the maximal meaning for suffix.
4 - Length of a suffix is 4 symbols:
    Ex. : s_0001.htm, s_0002.htm, s_0003.htm ... s_9999.htm
    in this case "9999" - the maximal meaning for suffix.
5 - Length of a suffix is 5 symbols:
    Ex. : s_00001.htm, s_00002.htm, s_00003.htm ... s_99999.htm
    in this case "99999" - the maximal meaning for suffix.
ShellFileNameSuffix This variable defines "suffix startup value" for filename of "Image Shell"-page.
Ex. : 1
ShellFileNamePostfix This variable sets postfix string which will be added to the end of the output "Image Shell" filename.
Ex. : _s
ShellFileNameExt This variable defines the extension of filename for output "Image Shell" HTML-pages.
Ex. : .htm
Note: Don't forget about the symbol "."
HeaderCode This variable defines a name of file containing Header Code HTML-fragment.
Ex. 1: fragments\s01_Header.htm
Ex. 2: C:\My\GM\Fragments\sHeader.html
BodyCode This variable defines a name of file containing Body Code HTML-fragment.
Ex. 1: fragments\s02_Body.htm
Ex. 2: C:\My\GM\Fragments\sBody.html
TopCode This variable defines a name of file containing Top Code HTML-fragment.
Ex. 1: fragments\s03_Top.htm
Ex. 2: C:\My\GM\Fragments\sTop.html
TopNavigateCode This variable defines a name of file containing Top Navigate Code HTML-fragment.
Ex. 1: fragments\s04_TopNavigate.htm
Ex. 2: C:\My\GM\Fragments\sTopNavigate.html
BeforeImageCode This variable defines a name of file containing Before Image Code HTML-fragment.
Ex. 1: fragments\s05_BeforeImage.htm
Ex. 2: C:\My\GM\Fragments\sBeforeImage.html
ImageCode This variable defines a name of file containing Image Code HTML-fragment.
Ex. 1: fragments\s06_Image.htm
Ex. 2: C:\My\GM\Fragments\sImage.html
AfterImageCode This variable defines a name of file containing After Image Code HTML-fragment.
Ex. 1: fragments\s07_AfterImage.htm
Ex. 2: C:\My\GM\Fragments\sAfterImage.html
FooterNavigateCode This variable defines a name of file containing Footer Navigate Code HTML-fragment.
Ex. 1: fragments\s08_FooterNavigate.htm
Ex. 2: C:\My\GM\Fragments\sFooterNavigate.html
FooterCode This variable defines a name of file containing Footer Code HTML-fragment.
Ex. 1: fragments\s09_Footer.htm
Ex. 2: C:\My\GM\Fragments\sFooter.html
AddComment You may allow automatic addition of the comments to images from "comment file".
Yes - to permit addition of the comments to images.
No - to forbid addition of the comments to images.
CommentFileExt This variable defines the extension of a "comment file" for "Image Shell" pages.
See this topic for details.
CommentRecode See this topic for details.
BeforeComment See this topic for details.
AfterComment See this topic for details.
 
4.07 Section [ ShellNavigation ]

RoundBtnNavigation
See this topic for details.
AutoRemoveDisabledButtons See this topic for details.
If button on navigation panel is linked to active "Image Shell" page then for this button will be used variable with suffix "A", else - "O".
BtnNavShellBeginA
BtnNavShellBeginO
This variable should contain a string HTML-code which will be used as "Shell Begin"-button.
BtnNavShellPrevA
BtnNavShellPrevO
This variable should contain a string HTML-code which will be used as "Shell Previous"-button.
BtnNavMainIndexA
BtnNavMainIndexO
This variable should contain a string HTML-code which will be used as "Index"-button.
BtnNavLocalIndexA
BtnNavLocalIndexO
This variable should contain a string HTML-code which will be used as "Local"-button.
BtnNavTable This variable should contain a string HTML-code which will be used as "Table"-button.
BtnNavShellNextA
BtnNavShellNextO
This variable should contain a string HTML-code which will be used as "Shell Next"-button.
BtnNavShellEndA
BtnNavShellEndO
This variable should contain a string HTML-code which will be used as "Shell End"-button.
 
4.08 Section [ MainIndexPage ]

DirDescFilename
This variable defines filename of "Directory Description File" (DDF) without path.
Q. : What is a "Directory Description File"?
A. : This is a file inside which you can place the description of the current directory (or some HTML code). This file should be located in a directory for which it is intended. This is a very useful file, if inside directory exists DDF then for ~TITLE~ variable the contents file will be used. If DDF is not exist then ~TITLE~ is equal to short directory name.
Ex. : dir_desc.txt.
MainIndexPageRecordCode This variable defines a name of file containing Main Index Record Code HTML-fragment.
Ex. 1: fragments\mi01_Record.htm
Ex. 2: C:\My\GM\Fragments\miRecord.html
RecNN This variable should contain a string of HTML-code which will be used as ~REC_NN~ variable.
RecTitle This variable should contain a string HTML-code which will be used as ~REC_TITLE~ variable.
RecPages This variable should contain a string HTML-code which will be used as ~REC_PAGES~ variable.
RecImages This variable should contain a string HTML-code which will be used as ~REC_IMAGES~ variable.
RecSize This variable should contain a string HTML-code which will be used as ~REC_SIZE~ variable.
RecCSV This variable should contain a string HTML-code which will be used as ~REC_CSV~ variable.
IncriminateNNCount This variable defines the order of numbering of records (variable ~DIR_NN~).
Yes - Simple numbering. Adds one to serial number of current record.
No - Skip numbering. Don't include current record into numbering of records. In this case ~DIR_NN~ is blank.
 
4.09 Section [ LocalIndexPage ]

CreateLocalIndex
Yes - to create Local Index page.
No - don't create Local Index page.
LocalIndexPageFileName This variable defines Local Index page filename without path.
Ex. : LocalIndexPageFileName=index.html
LocalIndexPageHeaderCode This variable defines a name of file containin Local Index Header Code HTML-fragment.
Ex. 1: fragments\li01_Header.htm
Ex. 2: C:\My\GM\Fragments\liHeader.html
LocalIndexPageBodyCode This variable defines a name of file containin Local Index Body Code HTML-fragment.
Ex. 1: fragments\li02_Body.htm
Ex. 2: C:\My\GM\Fragments\liBody.html
LocalIndexPageTopCode This variable defines a name of file containin Local Index Top Code HTML-fragment.
Ex. 1: fragments\li03_Top.htm
Ex. 2: C:\My\GM\Fragments\liTop.html
LocalIndexPageFooterCode This variable defines a name of file containin Local Index Footer Code HTML-fragment.
Ex. 1: fragments\li04_Footer.htm
Ex. 2: C:\My\GM\Fragments\liFooter.html
AutoRemoveDisabledButtons See this topic for details.
If button on navigation panel points on nonexistent HTML-page, then for this button will be used variable with suffix "A", else - "O".
BtnNavTableBeginA
BtnNavTableBeginO
This variable should contain a string HTML-code which will be used as "Table Begin"-button.
BtnNavTableEndA
BtnNavTableEndO
This variable should contain a string HTML-code which will be used as "Table End"-button.
BtnNavShellBeginA
BtnNavShellBeginO
This variable should contain a string HTML-code which will be used as "Shell Begin"-button.
BtnNavShellEndA
BtnNavShellEndO
This variable should contain a string HTML-code which will be used as "Shell End"-button.
BtnNavMainIndexA
BtnNavMainIndexO
This variable should contain a string HTML-code which will be used as "Main Index"-button.
 
4.10 Section [ Auto ]

AutoIncrementAStart
AutoIncrementBStart
AutoIncrementCStart
AutoIncrementDStart
AutoIncrementEStart
This variable defines a startup values of AutoIncrement variables.
Q. : What is "AutoIncrement" variables?
A. : This is a special variables which value will be incremented according to subdir depth level. The incremental step is equal to AutoIncrement?Start.
There are no differences between these variables. You can use any one.
These variables are very useful for creation of links on BACKGROUNDs or TITLE/BUTTON images.
 
4.11 Section [ User ]
The user can create the unlimited number of user-defined variables. The names of user-defined variable should consist of symbols: [A...Z] [a...z] [1..0] - _
You can use user-defined variables inside other user-defined variables.
Note: The names of user-defined variable should not coincide with names of system variables.
For instance:
   [User]
   USER_SAMPLE1="<a HREF="www.XYZ.com">Jump to XYZ</a>"
   MyVariable="Hello, World!"
   CreateTime="15 Oct 2000"
   Ver=1.0
   Build=1234
   Release=~Ver~ ~Build~ ~CreateTime~
User-defined variables may be used in any HTML-fragment, inside any HTML-keys in .INI-file and inside Image or Directory description files.
You should specify a name of user-defined variable between ~ symbols.
The names of user-defined variables are not case sensitive.
For example:
   ~USER_SAMPLE1~
   ~MyVariable~
   ~CreateTime~
   ~Release~
Note: If, in the some directory, the name of "main" and "local" user-defined variable will coincide, then value of "local" user-defined variable will be used. Thus you can "reassign" values of "main" user-defined variables.
 
4.12 Section [ GM Messages ]
This section is located in a language module *.lng. Language module contains all messages which are used in the program (exclude some special system messages).
Warning: Please be carefull! Don't change contents of this section if you don't know what you're doing.

 
5. The description of all possible variables Top

The program will automatically replace all variables (markers) founded in the HTML-code. All variables can be used over and over again in any HTML-fragments for which they are intended.
I have divided all variables on the following groups depending on "area of action":
TCF - Any "Table" HTML-fragment
SCF - Any "Image Shell" HTML-fragment
MICF - Any "Main Index" HTML-fragment
LICF - Any "Local Index" HTML-fragment
CCF - "Cell Code" HTML-fragment
MIRC - "Main Index Record Code" HTML-fragment
CSV - For .INI-keys MainCSVFormat and LocalCSVFormat
JC - Inside JPEGComment variable
TNI - HTML-Keys from [ TableNavigation ] section
SNI - HTML-Keys from [ ShellNavigation ] section
MIPI - HTML-Keys from [ MainIndexPage ] section
LIPI - HTML-Keys from [ LocalIndexPage ] section
UDV - User-Defined variables
See the summary table on all variables in a file Vars.txt
 
5.01 Group "TCF + SCF + MICF + LICF + TNI + SNI + MIPI + LIPI + UDV + JC"

~CURRENT_SYSTEM_DATE~
~CURRENT_SYSTEM_TIME~
Inserts current system date/time (Numerical format).
Note: Check value in "My Computer / Control Panel / Regional Settings / Date / Short date style" must be set [dd.mm.yyyy].
Ex. : 01.01.2000
Ex. : 14:35:36
~CURRENT_DAY_VALUE~
~CURRENT_MONTH_VALUE~
~CURRENT_YEAR_VALUE~
Inserts the current day/month/year values.
Ex. : 11
Ex. : 10
Ex. : 2000
~CURRENT_HOUR_VALUE~
~CURRENT_MINUTE_VALUE~
~CURRENT_SECOND_VALUE~
Inserts the current hour/minute/second values.
Ex. : 11
Ex. : 30
Ex. : 56
~CURRENT_DAYOFWEEK_NAME_LONG~
~CURRENT_DAYOFWEEK_NAME_SHORT~
Inserts the current day of the week (long/short format).
Ex. : Saturday
Ex. : Sat
Note: This variables depends from Language key. You can change values of this variables in file *.lng.
~CURRENT_MONTH_NAME_LONG~
~CURRENT_MONTH_NAME_SHORT~
Inserts the current month of the year (long/short format).
Ex. : December
Ex. : Dec
Note: This variables depends from Language key. You can change values of this variables in file *.lng.
~CURRENT_UTC_DATE~
~CURRENT_UTC_TIME~
Inserts current UTC date/time.
Ex. : 11.11.2000
Ex. : 11:11
~CURRENT_INTERNET_DATE~
~CURRENT_INTERNET_TIME~
Inserts current internet date/time. For details see www.swatch.com
Ex. : 11.11.2000
Ex. : 777
~GM_FULL_DIR_NAME~
~GM_FULL_DIR_NAME_W~
Inserts the full (ablosute) name your "Gallery Maker" directory.
Ex. : "Gallery Maker" installed into directory "C:\Program Files\GM". In this case for ~GM_FULL_DIR_NAME~ will be used C:\Program Files\GM and for ~GM_FULL_DIR_NAME_W~ - file:///C:|Program%20Files/GM
~RANDOM_COUNT~ Inserts unique autogenerated variable, can be used for creation banner-links.
Ex. : 23194830640
 
5.02 Group "TCF + SCF + LICF + CSV + JC"

~SRC_FULL_DIR_NAME~
~DST_FULL_DIR_NAME~
~SRC_FULL_DIR_NAME_W~
~DST_FULL_DIR_NAME_W~
Inserts the full (ablosute) SrcDir and DstDir directory name.
Ex. : SrcDir=C:\my\pics\Source. In this case for ~SRC_FULL_DIR_NAME~ will be used C:\my\pics\Source and for ~SRC_FULL_DIR_NAME_W~ - file:///C|/my/pics/Source
Note: if you set DstDirsCase = 1 or 2 then value ~DST_FULL_DIR_NAME~ can differ from DstDir.
~SRC_MIDDLE_DIR_NAME~
~DST_MIDDLE_DIR_NAME~
~SRC_MIDDLE_DIR_NAME_W~
~DST_MIDDLE_DIR_NAME_W~
Inserts the middle part of subdirectory name. For SrcDir and DstDir directory value of this variable equivalent ''.
Ex. : SrcDir=c:\my\pics and inside it exists subdirectory "c:\my\pics\items\dir1". In this case for ~SRC_MIDDLE_DIR_NAME~ for this subdirectory will be accepted "items\dir1" but for ~SRC_MIDDLE_DIR_NAME_W~ - "items/dir1/". Please pay attention on last /, this is very important when you want to create web-pages with absolute addressing.
Note: If you set DstDirsCase = 1 or 2 then values ~SRC_MIDDLE_DIR_NAME~ and ~DST_MIDDLE_DIR_NAME~ may be different.
~SRC_SHORT_DIR_NAME~
~DST_SHORT_DIR_NAME~
~SRC_SHORT_DIR_NAME_W~
~DST_SHORT_DIR_NAME_W~
Inserts the short name of the current subdirectory. For SrcDir and DstDir directory this value equivalent last level of SrcDir or DstDir.
Ex. 1: SrcDir=c:\arc\pics and DstDir=d:\my\imgs. In this case for ~SRC_SHORT_DIR_NAME~ will be accepted "pics" and for ~DST_SHORT_DIR_NAME~ - "imgs".
Ex. 2: SrcDir=c:\my\pics and inside exists subdirectory "c:\my\pics\items\dir1". In this case for this subdirectory ~SRC_SHORT_DIR_NAME~ and ~DST_SHORT_DIR_NAME~ will be accepted "Dir1".
Note: If you set DstDirsCase = 1 or 2 then values ~SRC_SHORT_DIR_NAME~ and ~DST_SHORT_DIR_NAME~ may be different.
~REL_PATH~
~REL_PATH_W~
Inserts the relative path from some subdirectory inside DstDir to corresponding directory inside SrcDir.
Ex. : SrcDir=c:\my\pics and inside it exists some subdirectory "c:\my\pics\dir1" and DstDir=c:\pics\out. In this case for directory c:\pics\out\ the value of this variable will be accepted ../../my/pics, for subdirectory c:\pics\out\dir1 - ../../../my/pics/dir1.
Note: You can't use this variable if SrcDir and DstDir are located on different disks. In this case I recommend use SRC_FULL_DIR_NAME_W.
Note: All variables with suffix _W will be converted in Web syntax:
Space - %20, ! - %21, & - &amp;, \ - /, > - &gt;, < - &lt;
 
5.03 Group "TCF + SCF"

~CUR_TABLE_PAGE_INDEX~
Inserts current "Table" HTML-page index.
Ex. : 2
~BEG_IMAGE_INDEX~ Inserts a index of the first image on the current "Table" HTML-page.
Ex. : 1
~END_IMAGE_INDEX~ Inserts a index of the last image on the current "Table" HTML-page.
Ex. : 10
~IMAGES_ON_PAGE~ Inserts number of images on the current "Table" HTML-page.
Ex. : 10
~THUMB_WIDTH_I~
~THUMB_HEIGHT_I~
Inserts width / height of thumbnail specified in .INI-file.
Note: If in .INI-file the size of thumbnail is specified as percent from source image, this variables will are inserted without symbol "%".
Ex. : 200
 
5.04 Group "CCF + SCF + CSV + JC"

~SRC_IMAGE_NAME_S~
~DST_IMAGE_NAME_S~
Inserts Source / Destination image filename without extension.
Ex. : Black Moon & Dark Sun
~SRC_IMAGE_NAME_L~
~DST_IMAGE_NAME_L~
Inserts Source / Destination image filename with extension.
Ex. : Black Moon & Dark Sun.jpg
~SRC_IMAGE_NAME_SW~
~DST_IMAGE_NAME_SW~
Inserts Source / Destination image filename without extension (Web syntax).
Ex. : Black%20Moon%20&amp;%20Dark%20Sun
~SRC_IMAGE_NAME_LW~
~DST_IMAGE_NAME_LW~
Inserts Source / Destination image filename with extension (Web syntax).
Ex. : Black%20Moon%20&amp;%20Dark%20Sun.jpg
~SRC_IMAGE_DATE~ Inserts date of the source image.
Ex. : 01.01.2000
~SRC_IMAGE_TIME~ Inserts time of the source image.
Ex. : 14:09:10
~SRC_IMAGE_SIZE_B~
~SRC_IMAGE_SIZE_K~
~SRC_IMAGE_SIZE_M~
Inserts the size of the source image in bytes/Kbytes/Mbytes.
Ex. : 126300
Ex. : 126,3
Ex. : 0,126
~SRC_IMAGE_CRC32~ Q. : That is a "CRC-32"?
A. : CRC-32 is an acronym for the 32 bit Cyclical Redundancy Check algorithm. CRC-32 generally refers to a specific 32 bit CRC formula sanctioned by the CCITT, an international standards body primarily concerned with telecommunications. CRC-32 is used to verify the integrity of blocks of data.
You may also calculate CRC-32 for any file with the help of external utility crc32.exe.
Ex. : 44DE5AD1
~SRC_IMAGE_WIDTH~ Inserts width of the source image in pixels.
Ex. : 800
~SRC_IMAGE_HEIGHT~ Inserts height of the source image in pixels.
Ex. : 600
~SRC_IMAGE_BPP~ Inserts the number of bits required to indicate the color of a pixel. This value may be 1, 4, 8, 16, 24 or 32.
Ex. : 24
~SRC_JPEG_COMMENT~ Inserts the text of comment from source JPEG-file.
For editing the comments inside source JPEG-files you can use special external utility - JCE.exe.
Note: Not all JPEG readers or writers will recognize or pay attention to this text.
 
5.05 Group "CCF + SCF"

~CUR_IMAGE_INDEX~
Inserts a index of the current image.
Ex. : 2
~CUR_SHELL_PAGE_INDEX~ Inserts current "Image Shell" HTML-page index.
Ex. : 5
~IMAGE_COMMENT~ Instead of this marker will be added "comment file".
Note: If "comment file" not found or AddComment=No then this marker will be auto removed from "Table" or "Image Shell" HTML-page.
 
5.06 Group "CCF"

~THUMB_NAME~
Inserts thumbnail filename.
Ex. : tn_Black Moon & Dark Sun.jpg
~THUMB_NAME_W~ Inserts thumbnail filename with extension (Web syntax).
Ex. : tn_Black%20Moon%20&amp;%20Dark%20Sun.jpg
~THUMB_WIDTH_R~ Inserts real thumbnail width.
Ex. : 200
~THUMB_HEIGHT_R~ Inserts real thumbnail height.
Ex. : 122
~SHELL_FILENAME~ Inserts filename of "Image Shell" page.
Ex. : Shell_PicName.html
~SHELL_FILENAME_W~ Inserts filename of "Image Shell" page (Web syntax).
Ex. : Shell%20PicName.html
 
5.07 Group "TCF + LICF"

~TABLE_BEGIN~
Inserts valid BtnNavTableBegin? string from .INI-file for "Table" or "Local Index" HTML-pages.
~TABLE_END~ Inserts valid BtnNavTableEnd? string from .INI-file for "Table" or "Local Index" HTML-pages.
 
5.08 Group "TCF"

~TABLE_PREV~
Inserts valid BtnNavTablePrev? string from .INI-file.
~TABLE_NEXT~ Inserts valid BtnNavTableNext? string from .INI-file.
~TXT_NAV~ The auto-generated expression, which consists from BeforeTxtNav + combination TxtNavA, TxtNavO and TxtNavSeparator expressions + AfterTxtNav.
 
5.09 Group "TCF + TNI"

~TABLE_PREV_PAGE~
Inserts filename of the previous "Table"-page in the current directory.
Ex. : Page2.htm
~TABLE_NEXT_PAGE~ Inserts filename of the next "Table"-page in the current directory.
Ex. : Page4.htm.
 
5.10 Group "TNI"

~HTML_PAGE~
This variable used inside TxtNavA and TxtNavO strings for inserts a filename of "Table"-page for each "Text"-link.
Ex. : Page2.htm
~TXT_NAV_LABEL~ Inserts a navigation-link label.
Ex. : Page
~PAGE_INDEX~ Inserts "Table"-page index.
Ex. : 2
 
5.11 Group "SCF + LICF"

~SHELL_BEGIN~
Inserts valid BtnNavShellBegin? string from .INI-file for "Image Shell" or "Local Index" HTML-pages.
~SHELL_END~ Inserts valid BtnNavShellEnd? string from .INI-file for "Image Shell" or "Local Index" HTML-pages.
 
5.12 Group "SCF"

~SHELL_PREV~
Inserts valid BtnNavShellPrev? string from .INI-file.
~TABLE~ Inserts BtnNavTable string from .INI-file.
~SHELL_NEXT~ Inserts valid BtnNavShellNext? string from .INI-file.
 
5.13 Group "SCF + SNI"

~SHELL_PREV_PAGE~
Inserts filename of the previous "Image Shell"-page in current directory.
Ex. : Page2.htm
~TABLE_PAGE~ Inserts filename of Table-page without path.
Ex. : Table2.html
~SHELL_NEXT_PAGE~ Inserts filename of the next "Image Shell"-page in current directory.
Ex. : Page4.htm.
 
5.14 Group "TCF + SCF + LICF"

~MAIN_INDEX~
Inserts valid BtnNavMainIndex? string from .INI-file for "Table", "Image Shell" or "Local Index" HTML-pages.
 
5.15 Group "TCF + SCF"

~LOCAL_INDEX~
Inserts valid BtnNavLocalIndex? string from .INI-file for "Table" or "Image Shell" HTML-pages.
 
5.16 Group "TCF + SCF + LICF + MIRC + TNI + SNI + MIPI + LIPI"

~DIR_NN~
Inserts serial number for current record.
Ex. : 5
~PATH~ Inserts the relative path from Main Index-page to current directory.
Ex. : DstDir=C:\temp\Dst\, in this case for subdirectory C:\temp\Dst\Dir1\ value of this variable equal Dst/Dir1/
~TABLE_BEGIN_PAGE~ Inserts filename of the first "Table"-page in the current directory.
Ex. : Page1.htm
~TABLE_END_PAGE~ Inserts filename of the last "Table"-page in the current directory.
Ex. : Page99.htm
~SHELL_BEGIN_PAGE~ Inserts filename of the first "Image Shell"-page in the current directory.
Ex. : Page1.htm
~SHELL_END_PAGE~ Inserts filename of the last "Image Shell"-page in the current directory.
Ex. : Page99.htm
~MAIN_INDEX_PAGE~ Inserts filename of "Main Index" HTML-page without path.
Ex. : Index.htm.
~LOCAL_INDEX_PAGE~ Inserts filename of "Local Index" HTML-page without path.
Ex. : Index.htm.
~DIR_TITLE~ Inserts short directory name or contents Directory Description File.
Ex. : Dir1
~DIR_TABLE_PAGES_COUNT~ Inserts total number of "Table" HTML-pages in current directory.
Ex. : 5
~DIR_IMAGES_COUNT~ Inserts total number of images (without thumbnails) in current directory.
Ex. : 25
~DIR_IMAGES_SIZE_B~
~DIR_IMAGES_SIZE_K~
~DIR_IMAGES_SIZE_M~
Inserts the total size of images in current directory in bytes/Kbytes/Mbytes.
Ex. : 5120123
Ex. : 5120,1
Ex. : 5,1
~LOCAL_CSV_NAME~ Inserts the name of the local CSV-file for the current directory.
Ex. : Local.csv
 
5.17 Group "MIRC"

~REC_NN~
Inserts RecNN string from .INI-file.
~REC_TITLE~ Inserts RecTitle string from .INI-file.
~REC_PAGES~ Inserts RecPages string from .INI-file.
~REC_IMAGES~ Inserts RecImages string from .INI-file.
~REC_SIZE~ Inserts RecSize string from .INI-file.
~REC_CSV~ Inserts RecCSV string from .INI-file.
 
5.18 Group "MICF"

~TOTAL_NN~
Inserts the total number of numberred records in gallery.
~TOTAL_RECORDS~ Inserts the total number of records (subdirectories) in gallery.
~TOTAL_TABLE_PAGES_COUNT~ Inserts the total number of "Table" HTML-pages in gallery.
~TOTAL_IMAGES_COUNT~ Inserts the total number of images in gallery (without thumbnails).
~TOTAL_IMAGES_SIZE_B~
~TOTAL_IMAGES_SIZE_K~
~TOTAL_IMAGES_SIZE_M~
Inserts the total size of images in gallery in bytes/Kbytes/Mbytes.
~MAIN_CSV_NAME~ Inserts the name of the main CSV-file for the gallery.
Ex. : Main.csv
 
5.19 Group "TCF + SCF + LICF + TNI + SNI + MIPI + LIPI + UDV"

~AutoIncrementA~
~AutoIncrementB~
~AutoIncrementC~
~AutoIncrementD~
~AutoIncrementE~
Insert current value of AutoIncrement? variable.
Ex. : DstDir=C:\PICS\OUT\ and AutoIncrementAStart="../", in this case for directory C:\PICS\OUT\ value ~AutoIncrementA~ will be ../, for subdirs C:\PICS\OUT\L1 or C:\PICS\OUT\K1 - ../../, for subdirs C:\PICS\OUT\L1\M2 or C:\PICS\OUT\K1\S2 - ../../../
 
6. Special expressions Top

Q: What is "special expression"?
A: This is special marker which you can insert inside any HTML-fragment, some keys from .INI-file and any used-defined variables. The special expressions are analysed and processed during post-process stage. You may ask me "Why?". Answer: At time of process of gallery generations some files (for example, Main Index or Main CSV) are not yet ready. Expressions are processed in same order in what they are listed below. If during processing the expression appears some error, then this expression be saved inside HTML-pages without any changes.
Note: The program uses next combinations of symbols for extracting the parameters of expressions: "," and " ) (spaces are allowed), be careful!

LoadFromFile ( "FileName" )
Reads the file specified in "FileName" and loads the data into the current position.
For specify "FileName" you must use full filename or valid internal (or user-defined) variables or their combinations.
Ex. 1: LoadFromFile( "c:\gallery\test1" )
Ex. 2: LoadFromFile( "~SRC_FULL_DIR_NAME~\test2" )
Ex. 3: LoadFromFile( "~GM_FULL_DIR_NAME~\test3" )
Note: For .INI-key JPEGComment this expression is processed immediately and does not depend from .INI-key PostProcess.

SearchAndReplace ( "Text", "SearchText", "ReplaceText", "CodePage" )
Search the "SearchText"-pattern inside source "Text"-string and, if founded, replace it with "ReplaceText"-pattern. In any case, place the value of "Text" into the current position.
As parameters of this expression you may use any text, valid internal (or user-defined) variables or their combinations.
Parameter "CodePage" required for correct "not case sensitive" searching the "SearchText"-pattern. "CodePage" must be equal to some parameter "CPName" from file CodePage.ini
Ex. 1: SearchAndReplace( "c:\gallery\test1", "\", "/", "dos" )
Ex. 2: SearchAndReplace( "any text", "te", "necessary te", "win" )
Ex. 3: SearchAndReplace( "~SRC_FULL_DIR_NAME~\test2", ":\", "", "dos" )
Note: Values of "Text", "SearchText" and "CodePage" can't be blank.

UpperCase ( "Text", "CodePage" ),
LowerCase ( "Text", "CodePage" )

Convert source string "Text" to upper/lower case. To place the value of "Text" into the current position.
As parameters of this expression you may use any text, valid internal (or user-defined) variables or their combinations.
Parameter "CodePage" required for correct transformation the case of symbols. "CodePage" must be equal to some value "CPName" from file CodePage.ini
Ex. 1: UpperCase( "my text", "dos" )
Ex. 2: LowerCase( "Hello, girl!", "win" )
Note: Value of "Text" can't be blank.

RecodeText ( "Text", "SourceCodePage", "TargetCodePage" )
Recode source string "Text" into other code page (from codepage "SourceCodePage" to "TargetCodePage"). To place the value of "Text" into the current position.
As parameters of this expression you may use any text, valid internal (or user-defined) variables or their combinations.
"SourceCodePage" and "TargetCodePage" must be different and equal to some value "CPName" from file CodePage.ini
Ex. 1: RecodeText( "La-La", "dos", "koi" )
Ex. 2: RecodeText( "Привет!", "win", "dos" )
Note: Value of "Text" can't be blank.

SaveToFile ( "Text", "FileName", "Mode" )
Save data ("Text"-pattern) to file specified in "FileName". The source "Text" will be restored into the current position inside HTML-page.
For specify "FileName" you must use full filename or valid internal (or user-defined) variables or their combinations.
Available modes:
A - Append. Opens the file, if it exists. If the file does not exist, the function creates the new file. Append data to the end of file.
O - Overwrite. Creates a new file (if it don't exists). The function overwrites the file if it exists.
Ex. 1: SaveToFile( "any text", "c:\temp\statistics.txt", "A" )
Ex. 2: SaveToFile( "any text", "c:\temp\~SRC_IMAGE_NAME_S~.txt", "O" )
Note: If destination directory does not exist that it will be automatically created.
 
7. Registration and licensing Top

You don't needed it. This product is a FREEWARE ;)
 
8. Acknowledgments Top

- Alex Belashov (belcomp.newmail.ru a_lexx@chat.ru) for his help.
- Mike Lischke (public@lischke-online.de) for his excellent graphic library.
- Gordon Alex Cowie (gfody@jps.net).
 
9. "GM" Gallery Hall Top

If You has created the gallery by "Gallery Maker" and published it in the Web, please, send me url and I'll add your gallery into "GM Gallery Hall".

LeVeL BBS Fantasy/Fantastic and Eros/Pin-Up Art Gallery (temporary down - killed by enemies)
Cactus Picture Gallery
Photo gallery by Max Smolev
Gallery of Rats
... your gallery ...
 
10. Awards Top

Good Wow! BestSoft
 
11. Download and how to contact me Top

Visit LeVeL BBS Gallery Maker in the Web: GM home page | Mirror 1 | Mirror 2 |
Good news! From LICT.Ru you can download the latest version of GM with visual shell.
If you have any comments, suggestions or you found bugs please mail me on LeVeL_BBS@chat.ru.
And don't forget to check the web site for news and updates.

Copyright © 1999-2001 Sergey Antoshin, Russia.