|
|
| Название | 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 |