SVG Plantilla de Xon

SVG Plantilla de Xon 2.7.0

No tiene permiso para descargar
Compatibilidad con XF
  1. 2.3.x
  2. 2.2.x
Descripción breve
XenForo 2 SVG Template Add-on v1.12.0+: Allows storing and generating SVG templates for easy image management. Supports URL rewriting for clean URLs and rendering to PNG using CLI or pre-compiled binaries like php-imagick, resvg, and Inkscape. Compatible with XenForo 2 routing system via Nginx/Apache rewrite rules.
RequiereStandard Library By Xonv1.12.0+
Dependiendo de la configuración, este complemento requiere el soporte del reescritura de URLs del servidor web!


SVG Template​

Dependiendo de la configuración, este complemento requiere el soporte del reescritura de URLs del servidor web!
Permite almacenar imágenes SVG como plantillas. Esto crea un nuevo archivo svg.php en el directorio raíz de XF.
Para generar una URL a una plantilla SVG (La plantilla debe tener .svg al final del nombre!) ;
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 a PNG​

Renderizar SVGs a PNGs requiere soporte externo y dependiendo del sistema operativo esto puede resultar en limitaciones o renderizado deficiente.

php-imagick-soporte​

Esno recomendadouso de Imagick si es posible!
Ubuntu (usando )https://launchpad.net/~ondrej/+archive/ubuntu/phpPPA); Code:
Código:
sudo apt install php7.4-imagick libmagickcore-6.q16-3-extra
sudo systemctl restart php7.4-fpm
Nota; algunas distribuciones requieren que se instale libmagickcore-6.q16-3-extra para habilitar el soporte para SVG. Versiones antiguas de Imagick tienen un soporte pobre para SVG, además de su reputación mala en seguridad.

Soporte CLI​

Este es un escape huevo genérico para instalar conversión arbitraria de PNG, utilizando proc_open en PHP.
Configura Render usando la opción proc_open.
<CLI-binary> {destFile} {sourceFile}
{sourceFile} es el archivo SVG temporal {destFile} es el archivo PNG destino en formato temporal
Alternativamente, la entrada/salida puede realizarse a través de pipes
Nota; los nombres de plantillas son solo cadenas alfanuméricas, lo cual se asegura por validación antes de que se llame la opción CLI

support para resvg CLI​

Ejemplo usandoresvgconfigura comando de línea de comandos con;
Código:
/usr/local/bin/resvg --quiet {sourceFile} {destFile}

Binario precompilado​

Binario pre-compilado Linux x86_64 ha sido hecho disponiblehereCompilado en CentOS 7, funciona en Ubuntu 18.04/20.04.


Compilando​

La compilación puede vincularse con versiones más recientes de glibc, lo que puede causar problemas deportabilidad.
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

Soporte de CLI para Inkscape​

Nota; usa snap ya que probablemente tenga una instancia muy antigua!
Código:
sudo snap install inkscape
Configura comando PIPE de la línea de comandos con;
Código:
inkscape --export-type=png -p

Características​

Renderings condicionales SVG a PNG (para CSS/LESS)​

Un ejemplo de CSS condicional para usar un png sobre un svg para clientes móviles
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 en plantillas;
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>

XenForo 2 integración de rutas​

Mientras que las reglas de reescritura del servidor web son recomendadas, este complemento soporta la extensión del sistema de rutas de XenForo para proporcionar un soporte sin configuración para plantillas SVG


Configuración de reescritura de URL Nginx​

Código:
location ^~ /data/svg/ {
   access_log off;
   rewrite ^/data/svg/([^/]+)/([^/]+)/([^/]+)/([^\.]+\..*)$ /svg.php?svg=$4&s=$1&l=$2&d=$3$args last;
   return 403;
}

Configuración de Rewrite URL Apache​

Agregar la instrucción antes del archivo final index.php;
Código:
    RewriteRule ^data/svg/([^/]+)/([^/]+)/([^/]+)/([^\.]+\..*)$ svg.php?svg=$4&s=$1&l=$2&d=$3 [B,NC,L,QSA]
¡es, debería verse similar 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 
    RewriteCond %{REQUEST_FILENAME} -l 
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - 
    RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - 
    RewriteRule ^data/svg/([^/]+)/([^/]+)/([^/]+)/([^\.]+\..*)$ svg.php?svg=$4&s=$1&l=$2&d=$3 [B,NC,L,QSA]
    RewriteRule ^.*$ index.php
Contribuyentes de características o correcciones de erroresPor favor crea un pedido de integración en GitHub mediante la opción "Más información".
Autor
anne51
Vistas
633
Tipo de extensión
zip
Tamaño de archivo
37,7 KB
Primer lanzamiento
Última actualización
Valoraciones 0,00 estrella(s) 0 valoraciones
¿Enlace roto? Enviar mensaje al equipo NP y te ayudaremos rápidamente!
Apoia al desarrollador i estás satisfecho con la prueba o tu proyecto te ha generado ganancias, haz clic en el botón «Más información» para apoyar al desarrollador comprando.

Últimas actualizaciones

  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...

Más recursos de anne51

Primer Moto Pro A
solución completa de migración de WordPress para mover una sola sitio a un plataforma multisitio etc
Vintech - Tecnología y Soluciones de TI para WordPress A
un tema impresionante, profesional y flexible para soluciones, negocios de TI e servicios
Advanced Ads Pro A
Advanced Ads Pro 3.0.12 Nulled
El Plugin de WordPress para Administrar Anuncios

Recursos similares

[CinVin] Emoji Tweaks (use SVG images for emoji instead of PNG) A
a small add-on that will change the file extension of emoji images when served from a custom CDN
[FF] Page Criteria for Xon Browser Detection A
dd a new set of criterion to the Page criteria
[SVG] Adblock Detected A
Everything is the same, in principle, with minor changes.
Superior