Template em SVG por Xon

Template em SVG por Xon 2.7.0

Sem autorização para baixar
Compatibilidade com XF
  1. 2.3.x
  2. 2.2.x
Descrição curta
Dependendo da configuração, este add-on requer suporte de reescrita de URL do servidor web!
Requer Biblioteca Padrão v1.12.0+
Dependendo da configuração, este complemento requer suporte de reescrita de URL do servidor web!

Modelo SVG​

Dependendo da configuração, este complemento requer suporte de reescrita de URL do servidor web!
Permite armazenar imagens SVG (Graphics de Vectors Escaláveis) como modelos. Isso cria um novo arquivo svg.php na raiz do XF.
Para gerar um link para um modelo SVG (O modelo deve conter .svg no final do nome!);
CÓDIGO:
{{ getSvgUrl('tempate.svg') }}
Under Board information, if "Use Full Friendly URLs" (useFriendlyUrls) is set the URL generated is:
Code:
/data/svg/<style_id>/<langauge_id>/<style_last_modified>/<templateName.svg>
Otherwise
Code:
svg.php?svg=<templateName>&s=<style_id>&l=<langauge_id>&d=<style_last_modified>

Render para PNG​

A conversão de SVGs para PNGs requer suporte externo e, dependendo do sistema operacional, pode resultar em limitações estranhas ou renderização pobre.

Suporte php-imagick​

Não é recomendado usar Imagick se possível!
Ubuntu (usando https://launchpad.net/~ondrej/+archive/ubuntu/phpPPA[/heading]);
Nota: Alguns distribuições exigem a instalação da libmagickcore-6.q16-3-extra para habilitar o suporte SVG.
Versões antigas do Imagick têm suporte SVG pobre, além de uma reputação de segurança pobre.

Suporte CLI​

Este é um escape geral para conectar conversões PNG arbitrárias usando proc_open em PHP.
Configure Render usando a opção CLI com;
{sourceFile} é o arquivo SVG escrito como temporário {destFile} é o arquivo PNG de destino escrito como temporário
Alternativamente, entrada/saída pode ser feita via pipes
Nota: os nomes dos modelos são apenas strings alfanuméricas, que são reforçados por validação antes que a opção CLI seja chamada

Suporte CLI do resvg​

Exemplo usando resvg, configure a opção de comando CLI com;
CÓDIGO:
/usr/local/bin/resvg --quiet {sourceFile} {destFile}

Binário pré-compilado​

O binário pré-compilado para Linux x86_64 está disponível aqui. Compilado em CentOS 7, funciona em Ubuntu 18.04/20.04

Compilação​

A compilação pode se ligar a versões mais novas do glibc, o que pode causar problemas de portabilidade.
CÓDIGO:
curl https://sh.rustup.rs -sSf | sh
source $HOME/.cargo/env
cargo install resvg
cp ~/.cargo/bin/resvg /usr/local/bin/resvg
chmod +x /usr/local/bin/resvg

Suporte CLI do Inkscape​

Use snap, caso contrário, é provável que tenha uma instância muito antiga!
CÓDIGO:
sudo snap install inkscape
Configure a opção de comando CLI PIPE com;
CÓDIGO:
inkscape --export-type=png -p

Características​

Renderização condicional SVGs para PNG (para CSS/LESS)​

Um exemplo de uso condicional de CSS para usar o PNG em vez do SVG para clientes móveis
Less:
CÓDIGO:
.mod_interrupt--svg.mod_interrupt
{
&--stop
{
&:before
{
content: url({{ getSvgUrl('sv_bbcode_modinterrupt_stop.svg') }}) !important;
}
<xf:if is="$xf.svg.as.png">
        .is-tablet &:before,
        .is-mobile &:before
{
content: url({{ getSvgUrlAs('sv_bbcode_modinterrupt_stop.svg', 'png') }}) !important;
}
</xf:if>
}
}
Uso explícito nos templates;
CÓDIGO:
<xf:if is="$xf.svg.enabled">
<xf:if is="$xf.svg.as.png and $xf.mobileDetect and $xf.mobileDetect.isMobile()">
<img src="{{ getSvgUrlAs('example.svg', 'png') }}"/>
<xf:else />
<img src="{{ getSvgUrlAs('example.svg', 'svg') }}"/>
</xf:if>
<xf:else />
<i class="fa fa-stop" />
</xf:if>

Integração de rastreamento do XenForo 2​

Enquanto as regras de reescrita do servidor são recomendadas, este complemento suporta estender o sistema de rastreamento do XenForo para fornecer suporte zero-configuração para modelos SVG

Configuração de rastreamento URL do Nginx​

Adicione a regra antes do final do arquivo index.php;
CÓDIGO:
    RewriteRule ^data/svg/([^/]+)/([^/]+)/([^/]+)/([^\.]+\..*)$ svg.php?svg=$4&s=$1&l=$2&d=$3 [B,NC,L,QSA]
Por exemplo, deve parecer semelhante a;
CÓDIGO:
    #    If you are having problems with the rewrite rules, remove the "#" from the
    #    line that begins "RewriteBase" below. You will also have to change the path
    #    of the rewrite to reflect the path to your XenForo installation.
    #RewriteBase /xenforo
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L]
    RewriteRule ^data/svg/([^/]+)/([^/]+)/([^/]+)/([^\.]+\..*)$ svg.php?svg=$4&s=$1&l=$2&d=$3 [B,NC,L,QSA]
    RewriteRule ^.*$ index.php [NC,L]
Contribuindo para as características ou correções de bugs
Por favor, crie uma solicitação de pull no GitHub via o link "Mais Informações".
Autor
anne51
Visualizações
578
Tipo de extensão
zip
Tamanho do arquivo
37,7 KB
Primeiro lançamento
Última atualização
Avaliações 0,00 estrelas 0 avaliações
Link was Broken? Please Enviar mensagem para a equipe NP que vamos ajudá-lo rapidamente!
Apoie o desenvolvedor Se você está satisfeito com o teste ou seu projeto gerou lucro, clique no botão “Mais informações” para apoiar o desenvolvedor comprando.

Últimas atualizações

  1. 2.7.0 - change log
    Require StandardLib v1.23.0+ php 8.4+ compatibility fixes Prevent XF2.3 injecting the template...
  2. 2.6.3 - change log
    Fix falsy template name for svg's wasn't supported (ie 0.svg) Fix style variant support for...
  3. 2.6.2 - changelog
    Provide a better error message when getSvgUrl is used to request a png of an svg when svg => png...

Mais recursos de anne51

TableTrack - The Complete SaaS Restaurant Management Solution A
tailored to meet the unique branding and operational needs of any dining establishment.
Visualizações
419
Atualizado
Off POS - Retail POS and Stock Software A
Revolutionize your retail operations with Off POS, the ultimate Retail POS and Stock Software.

Recursos similares

[Xon] Report Centre Essentials A
Implements report queues, with auto-assignment rules and handy search links
Visualizações
356
Atualizado
Report Improvements by Xon A
Screenshots are still to be added, XF1 version has similar functionality and the screenshots
Visualizações
832
Atualizado
[AKL] Thread Lightbox Video & Audio Support A
Visualizações
155
Atualizado
Top