|
|
wiki:images [2016/03/30 23:13] prospero78 создано |
wiki:images [2018/11/30 01:13] |
====== Работа с изображениями и медиафайлами ====== | |
| |
Вы можете загружать и включать в статьи «[[dokuwiki|Докувики]]» любые медиафайлы с помощью того же [[ru:wiki:syntax#картинки_и_другие_файлы|синтаксиса]], что и изображения. В то время как изображения и флэш-анимация отображаются непосредственно в статье, другие файлы (такие как документы PDF) показываются как ссылки. За дополнительной информацией можете обратиться к статье «[[mime|Конфигурация MIME]]». | |
| |
[[media_manager|{{:wiki:mediamanager.png?200 |Менеджер медиафайлов}}]] | |
| |
{{http://wiki.splitbrain.org/lib/images/toolbar/image.png?16x16&nolink}}Загрузка на сайт новых файлов осуществляется с помощью [[media_manager|менеджера медиафайлов]], вызываемого из [[toolbar|панели инструментов]]. | |
| |
Для загрузки файла просто используйте форму в правом верхнем углу страницы. Опционально вы можете дать название файлу. Убедитесь, что сохранили правильное расширение файла! Если вы используете в названии новое [[namespace|пространство имён]], это пространство будет создано автоматически. | |
| |
Обратите внимание: если администратор активировал поддержку [[acl|контроля доступа]], загрузка файлов может быть запрещена отдельным пользователям. Пользователям без достаточных прав форма загрузки файлов не будет показана. | |
| |
На то, как именно изображение включается в страницу, влияют различные параметры. Параметры добавляются в стиле URL: добавлением вначале знака вопроса (?) и разделением разных параметров амперсандом (&). | |
| |
===== Изменение размеров ===== | |
| |
«ДокуВики» может масштабировать изображения двумя методами. По умолчанию используется поддерживаемая PHP-библиотека «[[.:config:gdlib|LibGD]]» (если она установлена). Однако, лучшие результаты могут быть достигнуты с помощью внешней программы «[[.:config:im_convert|ImageMagick]]». | |
| |
При использовании «LibGD» при масштабировании может произойти ошибка из-за нехватки памяти или если формат файла не поддерживается установленной версией «LibGD». | |
| |
Для масштабирования внешних изображений, они должны быть скэшированы на вашем сервере. Для этого вы должны разрешить «ДокуВики» загружать файлы с помощью увеличения параметра «[[.:config:fetchsize]]» в файле настройки. | |
| |
Для пропорционального масштабирования изображения, задайте только желаемую ширину в пикселях: | |
| |
<code>{{wiki:dokuwiki-128.png?20}}</code> | |
| |
{{wiki:dokuwiki-128.png?20 }}--- это изображение уменьшено до ширины 20 пикселей. | |
| |
Если вы зададите ширину и высоту, то изображение будет растянуто точно до этих размеров игнорируя изменение соотношения сторон: | |
| |
<code>{{wiki:dokuwiki-128.png?20x50}}</code> | |
| |
{{wiki:dokuwiki-128.png?20x50 }}--- это изображение масштабировано до ширины 20 пикселей и высоты 50 пикселей. | |
| |
В [[ru:devel:develonly|development]]-версии «ДокуВики» задание одновременно ширины и высоты влечет за собой обрезание изображения непосредственно перед масштабированием для избежания искажений. | |
| |
===== Поведение при клике ===== | |
| |
«ДокуВики» позволяет разместить изображение на странице и сделать ссылку на другую страницу, дающую детальную информацию об этом изображении или содержащую полноразмерное изображение. Так же можно включить изображение, которое не ссылается на другие страницы. | |
| |
По умолчанию нажатие на изображении открывает страницу детальной информации. Страница детальной информации формируется с помощью файла шаблона ''detail.php''. Стандартный файл ''detail.php'' показывает большую версию изображения вместе с перечислением метаданных [[EXIF]] и IPTC, содержащихся в изображении (таких как заголовок, автор, дата размещения и т. д.), а также другой описывающей информацией. | |
| |
Следующий синтаксис встраивает изображение в статью в оригинальном размере, и кликание по этому изображению приводит к странице детальной информации с метаданными этого изображения: | |
| |
<code>{{wiki:dokuwiki-128.png}}</code> | |
| |
{{wiki:dokuwiki-128.png }}Попробуйте кликнуть по этому изображению для того, чтобы увидеть страницу детальной информации. | |
| |
На странице детальной информации вы можете кликнуть изображение и открыть другую страницу, содержащую только само изображение в его настоящем размере. Чаще всего так и бывает: в статье размещено изображение малого размера, на странице детальной информации присутствует то же самое изображение среднего размера, и только эта последняя прямая ссылка ведёт к изображению в его полном размере. | |
| |
Вместо такой реакции на клик по изображению вы можете указать, что ссылка должна вести непосредственно к полноразмерному изображению на отдельной странице. Такая ссылка называется прямой и признаком того, что вы хотите сделать именно такую ссылку, служит указание опции **''direct''** (прямая): | |
| |
<code>{{wiki:dokuwiki-128.png?20&direct}}</code> | |
| |
{{wiki:dokuwiki-128.png?20&direct }}Попробуйте кликнуть по этому уменьшенному изображению для того, чтобы увидеть «прямую» страницу. | |
| |
Так же возможно встроить изображение в статью вовсе без ссылки на какую-либо страницу. Для этого вам нужно указать опцию **''nolink'',** как показано ниже: | |
| |
<code>{{wiki:dokuwiki-128.png?20&nolink}}</code> | |
| |
{{wiki:dokuwiki-128.png?20&nolink }} Попробуйте кликнуть по этому изображению. Ничего не получается? Странно, правда? | |
| |
Вы можете комбинировать параметры **''nolink''** и масштабирования, вставляя амперсанд **''&''** между ними: | |
| |
<code>{{wiki:dokuwiki-128.png?nolink&100}}</code> | |
| |
{{wiki:dokuwiki-128.png?nolink&100}} | |
| |
Если вам нужно сделать ссылку на изображение? не показывая его самого в тексте статьи, используйте параметр **''linkonly'':** | |
| |
<code>{{wiki:dokuwiki-128.png?linkonly}}</code> | |
| |
{{wiki:dokuwiki-128.png?linkonly}}--- это просто ссылка на изображение. | |
| |
| |
===== Динамические изображения ===== | |
| |
Иногда вам может понадобиться включить в статью динамическое((создаваемое «на лету»)) изображение, подобное этому: | |
[[http://kalsey.com/tools/buttonmaker/button.php?barPosition=50&leftText=Dynamic&leftTextColor=ffffff&rightText=IMG&rightTextPosition=54|this one]] | |
| |
Использование обычного способа: | |
<code>{{http://kalsey.com/tools/buttonmaker/button.php?barPosition=50&leftText=Dynamic&leftTextColor=ffffff&rightText=IMG&rightTextPosition=54}}</code> | |
| |
не срабатывает: | |
| |
{{http://kalsey.com/tools/buttonmaker/button.php?barPosition=50&leftText=Dynamic&leftTextColor=ffffff&rightText=IMG&rightTextPosition=54}} | |
| |
Это происходит потому, что «ДокуВики» предполагает, что файл-изображение заканчивается на ''.gif'', ''.jpg'' или ''.png'', а данный файл заканчивается обозначением расширения ''.php''. Тут можно использовать следующий трюк: добавить еще один параметр CGI вроде такого ''&.png'' --- CGI-скрипт проигнорирует этот неизвестный ему параметр, зато парсер «ДокуВики» будет думать, что это изображение. | |
| |
Так же нужно добавить знак вопроса в самый конец иначе «ДокуВики» будет думать, что параметры CGI --- это опции изображения (такие как описаны в разделах «[[#Поведение при клике]]» и «[[#Кэширование]]»). | |
| |
| |
<code>{{http://kalsey.com/tools/buttonmaker/button.php?barPosition=50&leftText=Dynamic&leftTextColor=ffffff&rightText=IMG&rightTextPosition=54&.png?}}</code> | |
| |
{{http://kalsey.com/tools/buttonmaker/button.php?barPosition=50&leftText=Dynamic&leftTextColor=ffffff&rightText=IMG&rightTextPosition=54&.png?}} | |
| |
| |
Кстати: вы можете найти веб-интерфейс к скрипту buttonmaker здесь: | |
| |
* [[http://www.yugatech.com/make.php|www.yugatech.com/make.php]] | |
* [[http://kalsey.com/tools/buttonmaker/|kalsey.com/tools/buttonmaker/]] | |
| |
===== Удаление медиафайлов ===== | |
| |
Иногда требуется удалить медиафайл, который был ранее загружен на сервер. Для этого должны быть включен [[acl|контроль доступа]] и у пользователя, собирающегося удалять файл, должно быть право «DELETE». И тогда файлы можно удалять нажимая на иконку с мусорным ведром. | |
| |
Также смотрите «[[.:faq:deletemedia|Удаление медиафайлов]]». | |
| |
| |
===== Ссылки-изображения ===== | |
| |
Для создание ссылки-изображения на другой ресурс, просто используйте обычный синтаксис ссылок, только после знака вертикальной черты '|' впишите ссылку на изображение в двойных фигурных скобках. | |
| |
Пример: [[http://www.google.com/|{{wiki:dokuwiki-128.png}}]] | |
<code>Пример: [[http://www.google.com/|{{wiki:dokuwiki-128.png}}]]</code> | |
| |
===== Кэширование ===== | |
| |
Для уменьшения времени загрузки статьи «ДокуВики» старается кэшировать внешние изображения. Если вы хотите? чтобы внешнее изображение не кэшировалось, то можете добавить параметр **''nocache''** следующим образом: | |
<code>{{http://de3.php.net/images/php.gif?nocache}}</code> | |
| |
Это параметр можно также совмещать с масштабированием: | |
<code>{{http://de3.php.net/images/php.gif?300x50&nocache}}</code> | |
| |
Запрашивать внешний сервер при каждой загрузке вашей страницы --- не очень вежливо. Вместо этого вы можете использовать параметр **''recache''** для того, чтобы «ДокуВики» сама обновляля свой кэш этого изображения с интервалом, заданным опцией ''[[.:config:cachetime|cachetime]]'' в конфигурации: | |
<code>{{http://de3.php.net/images/php.gif?recache}}</code> | |