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