|
|
wiki:images [2018/11/30 01:13] |
wiki:images [2020/10/29 07:08] (текущий) |
| ====== Работа с изображениями и медиафайлами ====== |
| |
| Вы можете загружать и включать в статьи «[[dokuwiki|Докувики]]» любые медиафайлы с помощью того же [[wiki:tags#картинки_и_другие_файлы|синтаксиса]], что и изображения. В то время как изображения и флэш-анимация отображаются непосредственно в статье, другие файлы (такие как документы 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> |