Как изменить tpl

Как использовать файл TPL: назначение и пример использования tpl-файла.

Как использовать файлы TPL

Относительно недавно я писал о том, как создать свой движок для сайта. И там я сказал, что для HTML-кода надо создавать специальные файлы-шаблоны, которые имеют расширение tpl. Однако, один из моих посетителей попросил меня поподробнее рассказать о том, как использовать файлы tpl. И в этой статье я постараюсь подробно рассказать о том, зачем нужны файлы tpl, как их использовать, и приведу небольшой пример.

Файлы tpl используются для написания в них HTML-кода, который впоследствии будет «вытащен» PHP и выведен пользователю на конкретных страницах. Например, в файле tpl может быть форма регистрации. То есть просто HTML-код обычной формы, ничего больше. В другом файле tpl может быть блок с панелью пользователя. В этой панели идёт «Приветствие пользователя» по имени, различные ссылки на редактирование профиля, а также кнопка выхода. Это всё примеры, где регулярно используются файлы tpl.

Однако, есть один очень важный нюанс. Рассмотрим поподробнее файл tpl с панелью пользователя. Я написал, что там идёт приветствие пользователя по имени. Но файл один, а пользователей очень много (следовательно, и имён много). Глупо создавать для каждого пользователя отдельный файл, где жёстко прописано его имя. Поэтому в файлах tpl используются специальные элементы — шаблонизаторы. Они записываются примерно в таком виде: {username}. Давайте приведу пример файла tpl, где используется шаблонизатор {username} (пусть файл называется user_panel.tpl):

<div>
  <p>Здравствуйте, <b>{username}</b>!</p>
  <p><a href = 'editprofile.php'>Редактировать профиль</a></p>
  <p><a href = 'editprofile.php'>Выход</a></p>
</div>

Как видите, никаких <html>, <head> и <body> здесь нет. Только тот HTML-код, который отвечает за панель пользователя.

Теперь напишем PHP-код, который этот tpl-файл обрабатывает:

<?php
  $username = "Пётр"; //Разумеется, это имя Вы должны сначала откуда-то взять, например, из базы данных
  $user_panel = file_get_contents("user_panel.tpl");
  $user_panel = str_replace("{username}", $username, $user_panel);
  echo $user_panel;
?>

Как видите, всё очень и очень легко. Мы здесь получили содержимое файла user_panel.tpl, а затем с помощью функции PHP str_replace() заменили {username} на конкретное имя пользователя.

Это основа, которую необходимо знать для использования tpl-файлов. Далее Вы должны теперь понять, что страница будет собираться по кирпичикам, выводя все tpl-файлы в нужном порядке. Главное преимущество такого подхода, что разделяется программная часть и дизайнерская, благодаря чему становится крайне легко изменять дизайн и код PHP независимо друг от друга.

  • Создано 07.07.2011 18:33:23


  • Михаил Русаков

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Применение tpl-шаблонов совместно с php-скриптами существенно облегчает web-разработку т.к. позволяет автоматизировать рутинные операции. Да и вобще удобная штука.

Механизм работы очень прост: допустим Вы занимаетесь разработкой типовых сайтов, страницы которых содержат какой-то статичный контент

(контент, который не будет изменяться)

и изменяющийся контент.
Вместо того чтоб каждый раз создавать новые файлы, мы создадим tpl-файл, в котором заменим строки c изменяющимся контентом на переменные (они пишутся в фигурных скобках {}) и создадим php-скрипт, который будет вставлять в эти переменные то, что нам нужно и выводить готовые странички.

Предположим что ваша страничка выглядит так:

<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html">
<link rel="stylesheet" type="text/css" href="style2.css">

<title>Новый сайт</title>

</head>
<body>

<h1>Крутой сайт</h1>

Ещё какой-то контент...

</body>
</html>

Менять нужно записи — «Новый сайт», «Крутой сайт», «Ещё какой-то контент…».

Создаём tpl-файл (он же tpl-шаблон)index.tpl.

Собственно расширение .tpl условное (происходит от слова template — шаблон), то есть никто не запрещает написать — .lpt, просто так принято.index.tpl

<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html">
<link rel="stylesheet" type="text/css" href="style2.css">

<title>{TITLE}</title>

</head>
<body>

<h1>{COOL_SITE}</h1>

{SOME_CONTENT}

</body>
</html>

Мы заменили наши записи на переменные ({TITLE}, {COOL_SITE}, {SOME_CONTENT}), на их место наш будущий php-скрипт будет подставлять нужные данные.

Создаём страничку — index.html, из которой мы будем работать с нашим шаблоном.

index.html

<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Сборщик</title>
</head>
<body>

<form method="post" action="build.php">
<label class="nameglavnoe" for="title">Название страницы</label><br /><br />
<input type="text" name="title" size="50"><br /><br /><br />

<label class="nameglavnoe" for="cool_site">Заголовок</label><br /><br />
<input type="text" name="cool_site" size="50"><br /><br /><br />

<label class="nameglavnoe" for="some_content">Контент</label><br /><br />
<input type="text" name="some_content" size="50"><br /><br /><br />

<input id="submit" type="submit" value="Создать">
</form>

</body>
</html>

Для красоты создайте css-файл:

style.css

body{
width:600px;  
margin:15px auto; 
background:#312f2f;
-moz-user-select: none;
-webkit-user-select: none;
-webkit-overflow-scrolling: touch;
text-decoration: none;
}

input, textarea {
height: 34px;
font-size: 18px;
font-weight: normal;
border: 0px;
outline: none;
}

#submit{
width:200px;
height: 50px;
border:0px ;
background:#f969d9;
font-size: 20px;
color: #222;
cursor: pointer;
box-shadow: 0px 5px 2px -1px rgba(0,0,0,0.5);
}

#submit:hover, #submitover:hover, #submitback:hover, #submitread:hover{
box-shadow: 0px 2px 2px -1px rgba(0,0,0,0.6);
}

.nameglavnoe {
position: relative;
margin: 10px auto;
color: #999;
font-size: 28px;
font-weight: normal;
}

Откройте index.html в браузере:

После нажатия кнопки «Создать» заполненные поля передаются скрипту build.php для обработки.

Скрипт

build.php

<?php
header('Content-Type: text/html; charset=utf-8');

require('script.php');  // подключаем скрипт-обработчик

$parse->get_tpl('index.tpl'); // считываем данные из шаблона 

$title = " ";
$cool_site = " ";
$some_content = " ";


if(!empty($_REQUEST['title']) && !empty($_REQUEST['cool_site']) && !empty($_REQUEST['some_content']))  // проверяем чтоб поля не были пустыми
 {
   $title = trim($_REQUEST['title']);
   $cool_site = trim($_REQUEST['cool_site']);
   $some_content = trim($_REQUEST['some_content']);
 }

else
 { 
   echo "Not set data n";
   exit;
 }

// заменяем переменные из шаблона на полученные данные
$parse->set_tpl('{TITLE}', $title); 
$parse->set_tpl('{COOL_SITE}', $cool_site); 
$parse->set_tpl('{SOME_CONTENT}', $some_content); 

$parse->tpl_parse(); // Собираем страничку

echo $parse->template; // Выводим страничку
?>

Скрипт соберёт из шаблона и поступивших данных страничку, и выведет её в браузер. Действия прокомментированы.

Осталось создать скрипт-обработчик — script.php, который подключается в файле build.php и выполняет основную работу — замену переменных нашими данными.

script.php

<?php
class parse_class
  {
    var $vars     = array(); 
    var $template; 

    function get_tpl($tpl_name)
      {
       if(empty($tpl_name) || !file_exists($tpl_name))
        {
          return false;
        }
        
       else
        {
          $this->template  = file_get_contents($tpl_name);
        }
      }
      
    function set_tpl($key,$var)
      {
        $this->vars[$key] = $var;
      }
      
    function tpl_parse()
      {
         foreach($this->vars as $find => $replace)
             {
               $this->template = str_replace($find, $replace, $this->template);
             }
      }
  }
  
$parse = new parse_class;
?>

Всё готово, можно зайти в браузер, заполнить поля, нажать кнопку «Создать» и посмотреть что получилось.

Сейчас вновь сформированную страницу можно увидеть только в браузере. Чтобы она сохранилась на диске, нужно в конец файла build.php добавить пару строк…

if(!$handle = fopen('my.html', 'w')) 
 {
   echo "Not open file";
   exit;
 }

if(fwrite($handle, $parse->template) === FALSE) 
 {
   echo "Not write to file";
   exit;
 }
    
fclose($handle);

В итоге должно получится так…

build.php

<?php
header('Content-Type: text/html; charset=utf-8');

require('script.php');  // подключаем скрипт-обработчик

$parse->get_tpl('index.tpl'); // считываем данные из шаблона 

$title = " ";
$cool_site = " ";
$some_content = " ";


if(!empty($_REQUEST['title']) && !empty($_REQUEST['cool_site']) && !empty($_REQUEST['some_content']))  // проверяем чтоб поля не были пустыми
 {
   $title = trim($_REQUEST['title']);
   $cool_site = trim($_REQUEST['cool_site']);
   $some_content = trim($_REQUEST['some_content']);
 }

else
 { 
   echo "Not set data n";
   exit;
 }

// заменяем переменные из шаблона на полученные данные
$parse->set_tpl('{TITLE}', $title); 
$parse->set_tpl('{COOL_SITE}', $cool_site); 
$parse->set_tpl('{SOME_CONTENT}', $some_content); 

$parse->tpl_parse(); // Собираем страничку

echo $parse->template; // Выводим страничку

//////////////////////////////////////////////////////////

if(!$handle = fopen('my.html', 'w')) 
 {
   echo "Not open file";
   exit;
 }

if(fwrite($handle, $parse->template) === FALSE) 
 {
   echo "Not write to file";
   exit;
 }
    
fclose($handle);
?>

После отработки скрипта в рабочей директории появится файл — my.html.

Помимо создания html-файла, можно создать ещё один tpl-файл или скрипт и продолжать работу уже с ними. Так же можно добавить сюда работу с базой или подключать несколько шаблонов и формировать из них странички. Иными словами — можно делать что угодно…

На этом всё.

Введение

Данная статья предназначена для тех, кто хочет написать собственный шаблон, либо внести какеи-либо изменения в коде стандартных шаблонов, она опишет специфику шаблонизатора движка и саму структуру шаблонов. Тут не будет описываться сами технологии css и html, предпологается, что Вы ими хоть как-то, да владете, если же нет, то самоучитель по html тут, а по css тут.

Про CSS

Все стили для шаблонов рекомендуется вписывать в файл mystyles.css, это единственный файл стилей, который ни при каких обстоятельствах не будет заменен стандартным при обновлении. Во всяком случае, при обновлении движка Вы всегда можете ознакомиться со списком файлов, которые будут заменены и сделать их предварительную копию.

Как поменять ту или иную картинку?

Делается просто, кликаете на картинку правой кнопкой мыши, копируете ссылку на нее(пункт «Копировать ссылку на изображение»), вствляете скопированную ссылку в блокнот и смотрите в каком каталоге размещено ваше изображение, если ссылка вида: «https://demo.gamecms.ru/templates/flat/img/g_logo.jpg», это значит, что изображение лежит в каталоге: «templates/flat/img/g_logo.jpg», начиная с корневой директории движка. Вы можете найти и заменить ее либо через редактор шаблонов движка, либо же через ftp менеджер.

Шаблонизатор движка

При сложившихся обстоятельствах в движок пришлось внедрять собственный шаблонизатор со своим ситаксисом. Об этом подробнее здесь — синтаксис шаблонизатора.

Структура шаблона

Все, что касается шаблонов, лежит в каталоге templates. В данной папке размещены все Ваши шаблоны, названия вложенных папок соответствуют названиям шаблонов. Название admin является зарезервированным, используется для шаблона админ центра. Углубляемся дальше. Переходим в любую папку с шабоном, перед нами будет следующая структура:

css — стили
fonts — шрифты
img — изображения
js — скрипты
tpl — шаблоны

Тут я думаю все понятно, рекомендую всем придерживаться данной структуры. Остановимся подробнее на каталоге tpl. По названиям шаблонов интуитивно понятно в какой части и на каких страницах они применяются, но все же распишу более подробно:

Название файла -> Значение файла:
main.tpl — Главный шаблон, все остальные включаются в него
head.tpl — Заголовочный шаблон, используется на всех страницах сайта — самый верх шаблона, содержит тег head
bottom.tpl — Низ шаблона, используется на всех страницах сайта — самый низ шаблона
error.tpl — Страница ошибки
off_site.tpl — Страница выключенного сайта
config.tpl — Конфигурационный файл шаблона. Не все шаблоны содержат данный файл.

/bans/add_ban.tpl — Страница добавления заявки на разбан
/bans/ban.tpl — Страница просмотра заявки на разбан
/bans/index.tpl — Страница списка всех заявок на разбан
/bans/instructions.tpl — Информация по создании заявки на разбан

/forum/add_topic.tpl — Страница создания новой темы
/forum/edit_forum.tpl — Страница редактирования форума
/forum/edit_message.tpl — Страница редактирования сообщения
/forum/edit_topic.tpl — Страница редактирования темы
/forum/forum.tpl — Страница подфорумов
/forum/index.tpl — Главная страница форума
/forum/topic.tpl — Страница темы

/home/top.tpl — Верхняя часть шаблона(Для авторизованных)
/home/page_top.tpl — Дополнительная верхняя часть шаблона(Для авторизованных)
/home/left.tpl — Дополнитлеьная верхняя часть шаблона(Для авторизованных)
/home/index.tpl
— Главная страница для(Для авторизованных)
/home/admins.tpl — Страница списка администраторов
/home/banlist.tpl — Страница банлиста
/home/edit_user.tpl — Страница редактирования пользователя
/home/friends.tpl — Страница списка друзей пользователя
/home/messages.tpl — Страница личных сообщений
/home/mutlist.tpl — Страница мутлиста
/home/my_stores.tpl — Страница услуг пользователя
/home/myfriends.tpl — Страница друзей
/home/notifications.tpl — Страница уведомлений
/home/page.tpl — Страница статических страниц — тех, что Вы создаете в редакторе страниц(Для авторизованных)
/home/profile.tpl — Страница мой профиль
/home/purse.tpl — Страница пополнения баланса
/home/settings.tpl — Страница настроек пользователя
/home/stats.tpl — Страница статистики
/home/store.tpl — Страница магазина
/home/users.tpl — Страница всех пользователи

/news/add_new.tpl — Страница добавления новости
/news/change_new.tpl — Страница редактирования новости
/news/index.tpl — Страница всех новостей
/news/new.tpl — Страница новости

/support/add_ticket.tpl — Страница создания тикета
/support/all_tickets.tpl — Страница всех тикетов пользователей
/support/index.tpl — Страница всех тикетов пользователя
/support/ticket.tpl — Страница тикета

/index/top.tpl — Верхняя часть шаблона(Для неавторизованных)
/index/body.tpl — Тело главной страницы(Для неавторизованных)
/index/main_info.tpl — Описание вашего проекта
/index/page.tpl — Страница статических страниц — тех, что Вы создаете в редакторе страниц(Для неавторизованных)
/index/recovery.tpl — Страница восстановления пароля(Для неавторизованных)

/elements/ — Элементов в данной папке довольно много, все эти шаблоны служат для отображения динамически подгружаемого контента, по названию и содержанию шаблона, думаю можно определить его применение, поэтому не буду все расписывать.

Виды страниц, последовательность шаблонов на странице, теги с переменными

Страницы бывают 3х типов: доступные только для авторизованных, только для гостей и смешанные. Далее будут описаны все 3 типа этих страниц, в какой последовательности на них подключаются шаблоны и каких теги в них доступны.

  • ДЛЯ НЕАВТОРИЗОВАННЫХ

/elements/title.tpl — Заголовок
    {title} — Название сайта
    {name} — Название страницы
head.tpl
    {site_name} — Заголовок
    {site_host} — Url сайта
    {template} — Название шаблона
    {other} — Подключаемые дополнительные файлы
/index/top.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка
/index/body.tpl
    {site_host} — Url сайта
    {site_name} — Название сайта
    {conf_mess} — Сообщение о статусе регистрации
bottom.tpl — Нижняя часть сайта
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта

  • ДЛЯ СМЕШАННОЙ

/elements/title.tpl — Заголовок
    {title} — Название сайта
    {name} — Название страницы
head.tpl
    {site_name} — Заголовок
    {site_host} — Url сайта
    {template} — Название шаблона
    {other} — Подключаемые дополнительные файлы
    b12adafe055f4b527037007cc8165f16 — Токен

>> Если авторизован:
/home/top.tpl
    {site_name} — Заголовок
    {site_host} — Url сайта
    {template} — Название шаблона
/home/left.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка
/home/page_top.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка

>> Если не авторизован
/index/top.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка
/home/page.tpl — Основной контент страницы, теги зависят от предназначения страницы, но есть и общие теги для всех страниц
    {template} — Название шаблона
    {site_name} — Название сайта

bottom.tpl — Нижняя часть сайта
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта

  • ДЛЯ АВТОРИЗОВАННЫХ

/elements/title.tpl — Заголовок
    {title} — Название сайта
    {name} — Название страницы
head.tpl
    {site_name} — Заголовок
    {site_host} — Url сайта
    {template} — Название шаблона
    {other} — Подключаемые дополнительные файлы
    b12adafe055f4b527037007cc8165f16 — Токен
/home/top.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка
/home/left.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка
/home/page_top.tpl
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта
    {group} — Группа пользователя
    {user_id} — ID пользователя
    {login} — Логин пользователя
    {balance} — Баланс пользователя
    {proc} — Скидка пользователя
    {avatar} — Аватар пользователя
    { menu } — Меню сайта (без пробелов)
    {tickets} — Количество нерассмотренных тикетов(для привилегированного пользователя)
    {bans} — Количество нерассмотренных банов(для привилегированного пользователя)
    {nav} — Навигационная строка
/home/page.tpl — Основной контент страницы, теги зависят от предназначения страницы, но есть и общие теги для всех страниц
    {template} — Название шаблона
    {site_name} — Название сайта
bottom.tpl — Нижняя часть сайта
    {site_host} — Url сайта
    {template} — Название шаблона
    {site_name} — Название сайта

Дополнительная информация

 — Все шаблоны поддерживают вставку php кода, при выключенном безопасном режиме

 — Обращаю внимание, что шаблоны редактировать стоит очень внимательно, удаление некоторых элементов с указанным id, либо изменение id, удаление тегов script может повлечь неработоспособность некоторого функционала

Для чего нужен файловый формат .TPL?

Как сокращение от «Template» (шаблон) расширение .tpl главным образом служит для обозначения различных файлов-шаблонов, создаваемых и используемых широким рядом приложений. Шаблон — это «скелет» документа, заранее подготовленный набор элементов, полей и заголовков документа, который позволяет гораздо легче и быстрее создавать на его основе новые документы такого же типа.

Поскольку множество приложений используют расширение .tpl для обозначения своих шаблонов, такие файлы-шаблоны (.tpl) могут иметь очень разные форматы. Шаблоны TPL должны открываться и в целом использоваться теми приложениями, для которых они изначально предназначены.



Если происхождение файла .tpl неизвестно, можно все равно постараться определить, какие приложения могли бы способны открыть такой файл. Это можно сделать, открыв файл шестнадцатеричным редактором в режиме «только чтение» с целью просмотра сигнатуры формата файла в его заголовке. Кроме этого, можно попробовать открыт файл в текстовом редакторе или воспользоваться онлайн-сервисами для определения формата файла путем анализа его содержимого.


В частности, расширение .tpl очень часто применяется для обозначения шаблонов PHP, особенно применительно к какой-либо системе управления содержимым (content management system, CMS). PHP (PHP HTML Preprocessor) — чрезвычайно популярный интерпретируемый серверный язык программирования, а также среда исполнения, широко используемые на веб-серверах по всему миру.

Файл .tpl представляет собой простой текстовый файл с исходным кодом PHP и/или HTML, который обычно выполняет функцию шаблона дизайна для сайта, реализованного с применением технологии PHP. Большинство веб-серверов с поддержкой PHP обрабатывают файлы .tpl особым образом.


Кроме того, расширение .tpl также находит применение в среде Adobe Photoshop, обозначая формат и тип файлов «Шаблон кисти Adobe Photoshop» (Adobe Photoshop Brush Preset, TPL). Adobe Photoshop (PS) — мощное и гибкое приложение для работы с растровой графикой от Adobe, признанное фактическим стандартом в этой области.

Adobe PS использует файлы шаблонов (.tpl) для хранения заранее подготовленных форм художественных инструментов, которые можно загружать и использовать в процессе рисования или ретуширования. Шаблоны TPL можно изменять по своему усмотрению либо создавать новые. Управление файлами шаблонов кистей (.tpl) в Adobe PS осуществляется через средство Preset Manager.



Программы для открытия или конвертации TPL файлов

Вы можете открыть файлы TPL с помощью следующих программ:



Понравилась статья? Поделить с друзьями:
  • Как изменить touch id на iphone 7
  • Как изменить title через js
  • Как изменить system product name
  • Как изменить title категории woocommerce
  • Как изменить system ini