Инструменты пользователя

Инструменты сайта


wiki:plugin:typography

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
wiki:plugin:typography [2025/01/19 01:54] – [Синтаксис] vladpolskiywiki:plugin:typography [2025/01/19 02:47] (текущий) – [Использование короткого синтаксиса с меню панели инструментов] vladpolskiy
Строка 30: Строка 30:
 <ff BrushScriptMS>Brush Script MS</ff>\\   <ff BrushScriptMS>Brush Script MS</ff>\\  
 <ff Georgia>Georgia</ff>\\   <ff Georgia>Georgia</ff>\\  
-<ff Tangerine; fs:30px>Tangerine</ff>\\  +<ff Tangerine; fs:30px>Tangerin</ff>\\  
 <ff Calligraph; fs:30px>Шрифт Calligraph</ff>\\   <ff Calligraph; fs:30px>Шрифт Calligraph</ff>\\  
 <ff DS Yermak_D; fs:20px>Шрифт DS Yermak_D</ff>\\   <ff DS Yermak_D; fs:20px>Шрифт DS Yermak_D</ff>\\  
Строка 45: Строка 45:
 <ff BrushScriptMS>Brush Script MS</ff>\\   <ff BrushScriptMS>Brush Script MS</ff>\\  
 <ff Georgia>Georgia</ff>\\   <ff Georgia>Georgia</ff>\\  
-<ff Tangerine; fs:30px>Tangerine</ff>\\  +<ff Tangerine; fs:30px>Tangerin</ff>\\  
 <ff Calligraph; fs:30px>Шрифт Calligraph</ff>\\   <ff Calligraph; fs:30px>Шрифт Calligraph</ff>\\  
 <ff DS Yermak_D; fs:20px>Шрифт DS Yermak_D</ff>\\   <ff DS Yermak_D; fs:20px>Шрифт DS Yermak_D</ff>\\  
Строка 58: Строка 58:
 Плагин Typography расширяет разметку «ДокуВики» за счет возможностей набора текста. Парный тег разметки <typo …> </typo> включает в себя в качестве параметров CSS-правила, такие как тип шрифта, размер, толщина и цвет текста. Аналогично CSS-синтаксису параметры состоят из пар "свойство:значение", отделяемых друг от друга точкой с запятой (;), однако последняя в списке может быть опущена. Между тегом и его параметрами ставится один пробел, после точки с запятой также можно в эстетических целях добавлять пробел. Вместо полного имени свойства можно использовать сокращённое. Значения поддерживают любые CSS-единицы, включая словарные (px, em, %, x-small и пр.) Плагин Typography расширяет разметку «ДокуВики» за счет возможностей набора текста. Парный тег разметки <typo …> </typo> включает в себя в качестве параметров CSS-правила, такие как тип шрифта, размер, толщина и цвет текста. Аналогично CSS-синтаксису параметры состоят из пар "свойство:значение", отделяемых друг от друга точкой с запятой (;), однако последняя в списке может быть опущена. Между тегом и его параметрами ставится один пробел, после точки с запятой также можно в эстетических целях добавлять пробел. Вместо полного имени свойства можно использовать сокращённое. Значения поддерживают любые CSS-единицы, включая словарные (px, em, %, x-small и пр.)
  
-Некоторые сокращения сами доступны как парные теги, например, <ff> (тип шрифта), <fs> (размер), <fc> (цвет), <bg> (цвет фона), <fw> (толщина). В качестве разделителя можно использовать как двоеточие, так и пробел. За счёт полного совпадения функционала и синтаксиса плагин Typography свободно, без правок статей может заменить плагины FontFamily, FontSize2 и FontColor.+Некоторые сокращения сами доступны как парные теги, например, %%<ff> (тип шрифта), <fs> (размер), <fc> (цвет), <bg> (цвет фона), <fw> (толщина).%% В качестве разделителя можно использовать как двоеточие, так и пробел. За счёт полного совпадения функционала и синтаксиса плагин Typography свободно, без правок статей может заменить плагины FontFamily, FontSize2 и FontColor.
  
 ^  Короткое имя  ^ CSS-cвойство ^ Описание ^ ^  Короткое имя  ^ CSS-cвойство ^ Описание ^
Строка 132: Строка 132:
 </file> </file>
  
-{{https://raw.githubusercontent.com/ssahara/dw-plugin-typography/master/example/typography-example4.png|Example 4}}+<ff Tangerine; fs:48px>Tangerine 48px</ff> 
 +<wf:tangerine; fs:48px>Making the Web Beautiful!</wf> 
 + 
  
 ---- ----
Строка 154: Строка 157:
  
 =====Правки плагина===== =====Правки плагина=====
 +Добавлена регистрация обработчика события fontname
 +<code php action.php [enable_line_numbers="true", start_line_numbers_at="24"]>
 +     /* Добавлена регистрация обработчика события fontname*/
 +        if (plugin_isdisabled('fontname')) {
 +            $controller->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'fontNameToolbar', array());
 +        }
 +</code>
 +Раскоментированы семейства шрифтов sans-serif и cursive и добавлены fantasy и monospace
 +<code php action.php [enable_line_numbers="true", start_line_numbers_at="97"]>
 + /*Раскоментированы семейства шрифтов sans-serif и cursive*/
 +            'sans-serif'  => 'sans-serif',
 +            'cursive'     => 'cursive',
 + /*Добавлены семейства шрифтов fantasy и monospace*/
 +            'fantasy'     => 'fantasy',
 + 'monospace'   => 'monospace',
 +</code>
 +{{:wiki:plugin:plugin_typography_5.png?|}}
 +Добавлена кнопка FontName (примеры шрифтов) на панель инструментов.
 +<code php action.php [enable_line_numbers="true", start_line_numbers_at="161"]>
 +    /**
 +     * Adds FontName toolbar button
 + * Добавляет кнопку FontName на панель инструментов.
 +     * @see https://www.dokuwiki.org/plugin:
 +     */
 +    public function fontNameToolbar(Doku_Event $event, $param)
 +    {
 +        $options = array(
 +     'Arial'                 => 'Arial',
 +     'Calligraph'            => 'Calligraph',     
 + 'DS Yermak_D'           => 'DS Yermak_D',
 +     'CyrillicGoth'          => 'CyrillicGoth',
 +            'Times New Roman'       => 'TimesNewRoman',
 +            'Impact'                => 'Impact',
 +            'Brush Script MS'       => 'BrushScriptMS',
 +            'Georgia'               => 'Georgia',
 + 'Tangerine'             => 'Tangerine',
 + 'Tangerine 48px'        => 'Tangerine; fs:48px',
 +            'Multiple options'      => ': Georgia; MS Serif; serif; fs:36px; lh:1.1',
 + 'Nesting syntax'        => ': Georgia; MS Serif; serif><fs:36px; lh:1.1>There is nothing either good or bad, but thinking makes it so. </fs><fs:smaller;>//-- William Shakespeare, “Hamlet”, Act 2 scene 2//</fs',
  
 +        );
 +        $button = array(
 +                'type' => 'picker',
 +                'title' => $this->getLang('fn_picker'),
 +                'icon' => DOKU_REL.'lib/plugins/typography/images/fontname/picker.png',
 +                'list' => array()
 +        );
 +        foreach ($options as $familyName => $familyValue) {
 +            $button['list'][] = array(
 +                'type'  => 'format',
 +                'title'  => $this->getLang('fn_'.$familyName),
 +                'sample' => $this->getLang('fn_'.$familyName.'_sample'),
 +                'icon'   => DOKU_REL.'lib/plugins/typography/images/fontname/'.$familyName.'.png',
 +                'open'   => '<ff '.$familyValue.'>',
 +                'close'  => '</ff>',
 +            );
 +        }
 +        $event->data[] = $button;
 +
 +
 +
 +    }
 +</code>
 +{{:wiki:plugin:plugin_typography_4.png?|}}
 +====файл fontcolor.php====
 +Удалено условие для корректного отображения цветов текста
 +<file>
 +//if ($isSameHost && $isColorSet) {
 +// }
 +</file>
 +<code php fontcolor.php [enable_line_numbers="true"]>
 +<?php
 +/**
 + * DokuWiki Plugin Typography; Syntax typography fontcolor
 + *
 + * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 + * @author     Satoshi Sahara <sahara.satoshi@gmail.com>
 + *
 + * provide fontcolor plugin syntax compatibility
 + * @see also https://www.dokuwiki.org/plugin:fontcolor
 + */
 +
 +require_once(dirname(__FILE__).'/base.php');
 +
 +class syntax_plugin_typography_fontcolor extends syntax_plugin_typography_base
 +{
 +    /**
 +     * Connect pattern to lexer
 +     */
 +    public function preConnect()
 +    {
 +        // drop 'syntax_' from class name
 +        $this->mode = substr(get_class($this), 7);
 +
 +        // syntax pattern
 +        $this->pattern[1] = '<fc\b.*?>(?=.*?</fc>)';
 +        $this->pattern[4] = '</fc>';
 +    }
 +
 +    public function connectTo($mode)
 +    {
 +        if (plugin_isdisabled('fontcolor')) {
 +            $this->Lexer->addEntryPattern($this->pattern[1], $mode, $this->mode);
 +        }
 +    }
 +
 +    public function postConnect()
 +    {
 +        if (plugin_isdisabled('fontcolor')) {
 +            $this->Lexer->addExitPattern($this->pattern[4], $this->mode);
 +        }
 +    }
 +
 +}
 +
 +</code>
 +{{:wiki:plugin:plugin_typography_3.png?|}}
 +Заменины и добавлены новые иконки
  
 =====Обновление===== =====Обновление=====
wiki/plugin/typography.1737240857.txt.gz · Последнее изменение: 2025/01/19 01:54 — vladpolskiy