| 
 | 
| Название | HTMLImageWithThumb | 
| Имя файла (*.txt) | HTMLImageWithThumb.txt | 
| Описание | Заносит в буфер список картинок с соответствующими thumbnails (не знаю, как это по-русски), подготовленный для вставки в файл формата html. | 
| Автор | Вахмурка | 
| Параметры | ("%L", "%T") | 
| Вызываемые плагины | file, vec, ini, clip | 
| Иконка | 
 | 
    
| Версия | 1.0 | 
| Дата обновления | 16.09.2005 | 
local fh = file.open(arg(1), "r")
local Str, Counter, Temp, ThumbSuffix,	AddBefore, AddAfter, ThumbSubDir
local INIfile = "путь\HTMLImageWithThumb.ini"
local BigImage, i
SetString Quote "
if(fh > 0) do
	for(not(file.eof(fh))) 
		Str = file.readstring(fh)
	if(Str != 0)
		Counter = Counter + 1
	endfor
else
	messagebox("ok error", "File not opened", "FILE plugin error")
	quit
endif
v = vec.create(Counter)
if(v == 0) do
	messagebox("ok error", "Vector not created", "VEC plugin error")
	quit
endif
if(ini.check_exists(INIfile, "Configuration", "ImagePath") != 3) do
	ImagePath = ""
else
	ImagePath = ini.get(INIfile, "Configuration", "ImagePath")
endif
if(ini.check_exists(INIfile, "Configuration", "ThumbSuffix") != 3) do
	ThumbSuffix = "_t"
else
	ThumbSuffix = ini.get(INIfile, "Configuration", "ThumbSuffix")
endif
if(ini.check_exists(INIfile, "Configuration", "AddBefore") != 3) do
	AddBefore = ""
else
	AddBefore = ini.get(INIfile, "Configuration", "AddBefore")
endif
if(ini.check_exists(INIfile, "Configuration", "AddAfter") != 3) do
	AddAfter = ""
else
	AddAfter = ini.get(INIfile, "Configuration", "AddAfter")
endif
if(ini.check_exists(INIfile, "Configuration", "ThumbSubDir") != 3) do
	ThumbSubDir = ""
else
	ThumbSubDir = ini.get(INIfile, "Configuration", "ThumbSubDir")
endif
if(ImagePath == "%T") do
	ImagePath = arg(2)
	local Len = length(ImagePath)
	local Char
	local Slash = -1
	if(ini.check_exists(INIfile, "Configuration", "PathDepth") != 3) do
		Temp = "Key 'PathDepth' does not exist in section 'Configuration' of file '"
		Temp = Temp ++ INIfile ++ "'"
		messagebox ("ok error", Temp, "INI plugin error #1")
		quit all
	endif
	local Depth = ini.get(INIfile, "Configuration", "PathDepth")
	for(local i = Len; i > 0; i = i - 1)
		Char = select(ImagePath, i, i)
		if(Char == "\") do
			Slash = Slash + 1
			if(Slash == Depth) do
				ImagePath = select(ImagePath, i + 1, Len)
				break
			endif
		endif
	endfor
	ImagePath = replacechars(ImagePath, "\/")
endif
local SmallImage
file.restart(fh)
for(i = 0; i < Counter; i = i + 1)
	BigImage = file.name(file.readstring(fh))
	SmallImage = BigImage ++ ThumbSuffix ++ ".jpg"
	if(ImagePath != "") do
		BigImage = ImagePath ++ BigImage
	endif
	v[i] = "<a href=" ++ Quote ++ BigImage ++ ".jpg" ++ Quote ++ "><img SRC="
	if(ThumbSubDir != "") do
		v[i] = v[i] ++ Quote ++ ImagePath ++ ThumbSubDir ++ "/"
	endif
	v[i] = AddBefore ++ v[i] ++ SmallImage ++ Quote ++ "></a>" ++ AddAfter
endfor
file.close(fh)
Str = vec.makelines(v)
clip.set(Str)
vec.destroy(v)
vec.unload
При подготовке веб-страничек, содержащих ссылки на картинки (файлы с расширением jpg), удобно пользоваться так называемыми thumbnails, то есть уменьшенными копиями картинок (обычно не больше 60 пикселей по длинной стороне). Вес thumbnails чаще всего составляет порядка 1 килобайта, поэтому страничка грузится очень быстро. Тhumbnails позволяют приблизительно представить себе содержание основной картинки и по щелчку просмотреть ее.
Чаще всего thumbnails выкладывают в отдельную директорию. То есть имеем:
Скрипт позволяет одним щелчком крысы заносить в буфер информацию, которая после вставки в текст веб-странички создает ссылки на thumbnails и сами картинки. Знание языка html необходимо на примитивном (как у меня) уровне.
Для настройки скрипта используется ini-файл со следующими ключами:
[Configuration]
ThumbSubDir=Thumbs
;имя дочерней директории с thumbnails.
;Если thumbnails лежат в директории с картинками, задать ""
;или поставить ; перед ключом
ImagePath=%T
;если равно %Т, то путь к директории с картинками
;берется из противоположной панели.
;В противном случае задать равным ""
;или поставить ; перед ключом
PathDepth=2
;используется только при ImagePath=%T.
;Показывает глубину пути к thumbnails
;относительно текущей директории
ThumbSuffix=_t
;символы, добавляемые к имени thumbnails
AddBefore=""
;символы, добавляемые перед ссылкой
AddAfter=<p>
;символы, добавляемые после ссылки
Рассмотрим пример. Настройки файла HTMLImageWithThumb.ini соответствуют приведенным выше. В текущей директории, где лежит сама веб-страничка, находится поддиректория Galleries. В ней - несколько галерей, типа Vasia, Masha, и пр.
Прежде всего переходим в противоположную панель и делаем текущей директорию Galleries\Vasia - ведь мы задали ключ ImagePath=%T. Значит, сами картинки будут браться из Galleries\Vasia. Ключ PathDepth=2 указывает, что количество директорий, начиная от Galleries\Vasia, до текущей, считая в направлении корня, равно двум.
Возвращаемся в прежнюю панель и заходим в Galleries\Vasia. Там лежат интересующие нас картинки, thumbnails которых находятся в Galleries\Vasia\Thumbs.
Выделим несколько картинок (напомню, мы находимся в Galleries\Vasia), и нажимаем кнопку на панели, которой соответствует данный скрипт. Пусть выделенные картинки имеют имена 
vasia_v_more.jpg
vasia_v_restorane.jpg
pjany_v_hlam_vasia.jpg
Thumbnails находятся в Galleries\Vasia\Thumbs и имеют имена
vasia_v_more_t.jpg
vasia_v_restorane_t.jpg
pjany_v_hlam_vasia_t.jpg
Нажали кнопку? Остается только перейти в редактор, где мы ваяем нашу страничку, и выполнить команду Paste. Появится вот что:
<a href="Galleries/Vasia/vasia_v_more.jpg"><img SRC="Galleries/Vasia/Thumbs/vasia_v_more_t.jpg"></a><p>
<a href="Galleries/Vasia/vasia_v_restorane.jpg"><img SRC="Galleries/Vasia/Thumbs/vasia_v_restorane_t.jpg"></a><p>
<a href="Galleries/Vasia/pjany_v_hlam_vasia.jpg"><img SRC="Galleries/Vasia/Thumbs/pjany_v_hlam_vasia_t.jpg"></a><p>
Осталось лишь сохранить страничку, загрузить в браузер и наслаждаться.
 
 | 
На главную | 
 
 | 
Все о Total Commander | 
 
 | 
PowerPro | 
 
 | 
PowerPro & Total Commander |