- Compatibilidade com XF
- 2.3.x
- 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!
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!);
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.
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.
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
Exemplo usando resvg, configure a opção de comando CLI com;
O binário pré-compilado para Linux x86_64 está disponível aqui. Compilado em CentOS 7, funciona em Ubuntu 18.04/20.04
A compilação pode se ligar a versões mais novas do glibc, o que pode causar problemas de portabilidade.
Use snap, caso contrário, é provável que tenha uma instância muito antiga!
Configure a opção de comando CLI PIPE com;
Less:
Uso explícito nos templates;
Por exemplo, deve parecer semelhante a;
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".
Dependendo da configuração, este complemento requer suporte de reescrita de URL do servidor web!
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>
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.
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
Exemplo usando resvg, configure a opção de comando CLI com;
CÓDIGO:
/usr/local/bin/resvg --quiet {sourceFile} {destFile}
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
CÓDIGO:
sudo snap install inkscape
CÓDIGO:
inkscape --export-type=png -p
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óveisLess:
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>
}
}
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 SVGConfiguraçã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]
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]
Por favor, crie uma solicitação de pull no GitHub via o link "Mais Informações".