Terraria Wiki
Terraria Wiki
(Page créée avec « <noinclude> If the filename is passed without its extension, will determine if a gif is available (defaults to png); returns the image; if file exists as neither gif nor p... »)
 
(Annulation des modifications 179069 de Dinoxel (discussion))
Balise : Annulation
(5 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
  +
<includeonly><!--
<noinclude>
 
If the filename is passed without its extension, will determine if a gif is available (defaults to png); returns the image; if file exists as neither gif nor png, returns a null value.
 
   
 
//prepare image file info
If the filename includes an extension, will return the image as normal. But you can prefixed it with a "?" character to check if the file exists, returning null if it doesn't.
 
 
==Usage==
 
<nowiki>{{image|options|caption}}</nowiki>
 
The syntax is same as [[File:]].
 
 
==Parameters==
 
All [[File:]] syntax are valid.
 
 
In addition:
 
 
;size=
 
Same as unamed size option, for convenience. Will be overrided by size option. e.g. <code>|20px|size=40px</code> will parse as <code>|20px</code>
 
;scale=
 
Scale image based on its size. e.g. <code>scale=0.5</code>.
 
 
;maxsize=
 
Using same syntax as [[File:]]'s size option: <code>Wpx</code>, <code>Hpx</code>, or <code>WxHpx</code>. Note: this is applied AFTER scale.
 
 
 
 
 
[[Category:Modèles]]</noinclude><!--
 
 
-->{{#vardefine:_imagename|}}<!--
 
//prepare image filename
 
 
-->{{#if:{{#pos:{{{1|}}}|.}}|<!--
 
-->{{#if:{{#pos:{{{1|}}}|.}}|<!--
-->{{#ifeq:{{#sub:{{{1|}}}|0|1}}|?|<!-- for "?filename.ext" will do exist check.(expensive)
+
-->{{image/info|{{{1|}}}|{{{force|}}}}}<!-- for "filename.ext" will do exist check. directly.(expensive)
-->{{#vardefine:_imagename|{{trim|{{#sub:{{{1|}}}|1}}}}}}<!--
 
-->{{#ifexist: Media:{{#var:_imagename}}||{{#vardefine:_imagename|}}}}<!-- if not exist, unset.
 
-->|<!--
 
-->{{#vardefine:_imagename|{{{1}}}}}<!-- for "filename.ext" will use it directly.
 
-->}}<!--
 
 
-->|<!--
 
-->|<!--
 
// for "filename" will check "filename.gif" and "filename.png" (expensive*2)
 
// for "filename" will check "filename.gif" and "filename.png" (expensive*2)
-->{{#ifexist: Media:{{{1|}}}.gif|<!--
+
-->{{image/info|{{{1|}}}.gif|{{{force|}}}}}<!--
-->{{#vardefine:_imagename|{{{1}}}.gif}}<!--
+
-->{{#if:{{#dplvar:_image_exist}}||<!--
-->|{{#ifexist: Media:{{{1|}}}.png|<!--
+
-->{{image/info|{{{1|}}}.png|{{{force|}}}}}<!--
-->{{#vardefine:_imagename|{{{1}}}.png}}<!--
+
-->}}<!--
-->}}}}<!--
+
-->}}<!--
-->}}<!--
 
   
-->{{#if:{{#var:_imagename|}}|<!--
+
-->{{#if:{{#dplvar:_image_exist}}|<!--
-->{{#vardefine:_size_outputed_flag|}}<!-- flag,used in {{image/size}}
+
-->{{#vardefine:_size_argument|}}<!-- cache
  +
//process all input argument
-->[[File:{{#var:_imagename}}<!--
 
-->{{#vardefine:_outputstr|<!--
+
-->{{#vardefine:_outputstr|<!-- string with all parameters of the "[[File:]]" call. fill it in the following loop
-->{{#forargs:|_k|_v|<!--
+
-->{{#forargs:|_k|_v|<!-- loop through all parameters
-->{{#iferror:{{#expr:1+{{#var:_k}}}}|<!-- named parameter?
+
-->{{#iferror:{{#expr:1+{{#var:_k}}}}|<!-- check: is the parameter a named parameter?
//named parameter
+
//parameter is a named parameter
-->{{#switch:{{#var:_k}}<!-- some custom paramters
+
-->{{#switch:{{#var:_k}}<!-- check for certain parameters
-->|maxsize|scale|size=<!-- skip, will process later.
+
-->|maxsize|scale|size=<!-- size options. skip, will process later.
-->|#default={{!}}{{#var:_k}}={{#var:_v}}<!-- output |key=value
+
-->|#default={{!}}{{#var:_k}}={{#var:_v}}<!-- other custom parameter. add "|<name of the parameter>=<value of the parameter>" to outputstring
 
-->}}<!--
 
-->}}<!--
 
-->|<!--
 
-->|<!--
//unamed parameter
+
//parameter is an unnamed parameter
 
-->{{#switch:{{#var:_k}}<!--
 
-->{{#switch:{{#var:_k}}<!--
-->|1=<!-- skip first unamed paramter.(imagename info)
+
-->|1=<!-- if parameter is the first unnamed parameter, then skip (is the image name info; already taken care of)
-->|#default=<!--
+
-->|#default=<!-- other unnamed parameters
-->{{#ifeq:{{#sub:{{#var:_v}}|-2}}|px|<!-- is size option?
+
-->{{#ifeq:{{#sub:{{#var:_v}}|-2}}|px|<!-- is the parameter the size option?
-->{{#vardefine:_size_outputed_flag|y}}<!--
+
-->{{#vardefine:_size_argument|{{#var:_v}}}}<!--
  +
-->|<!-- parameter is not the size option, but another (e.g. alt text or "thumb/frame/etc.")
-->{{!}}{{image/size|{{#var:_v}}|{{{maxsize|}}}|{{{scale|}}}|image={{#var:_imagename}}}}<!--
 
 
-->{{!}}{{#var:_v}}<!-- add "|<value of the parameter>" to outputstring
-->|<!--
 
-->{{!}}{{#var:_v}}<!-- others, output |key=value
 
 
-->}}<!--
 
-->}}<!--
 
-->}}<!--
 
-->}}<!--
Ligne 70 : Ligne 37 :
 
-->}}<!--
 
-->}}<!--
 
-->}}<!--
 
-->}}<!--
 
//size:
-->{{#if:{{{maxsize|}}}{{{scale|}}}{{{size|}}}|{{#if:{{#var:_size_outputed_flag}}||<!-- ($maxsize or $scale or $size) and !$flag
 
-->{{!}}{{image/size|{{{size|}}}|{{{maxsize|}}}|{{{scale|}}}|image={{#var:_imagename}}}}<!--
+
-->{{#if:{{{maxsize|}}}{{{scale|}}}{{{size|}}}{{#var:_size_argument|}}|<!--
-->}}}}<!--
+
-->{{#vardefine:_outputstr|<!--
-->{{#var:_outputstr}}]]<!--
+
-->{{!}}<!--
 
-->{{image/size|{{{size|{{#var:_size_argument|}}}}}|{{{scale|1}}}|{{{maxsize|}}}}}<!--
  +
-->{{#var:_outputstr}}<!-- concatenate size parameters with other parameters
 
-->}}<!--
 
-->}}<!--
  +
  +
//final output:
  +
-->[[File:{{#dplvar:_image_name}}{{#var:_outputstr}}]]<!--
 
-->}}<!--
 
-->}}<!--
  +
-->
 
  +
--></includeonly><noinclude><!--
  +
  +
-->{{#cargo_declare:_table=Imageinfo
  +
|image=String (size=200;mandatory)
  +
|width=Integer
  +
|height=Integer
  +
|cached=Integer
 
}}<!--
  +
 
-->{{doc}} [[Catégorie:Modèles]]</noinclude>

Version du 30 décembre 2020 à 00:11

Ce modèle définit la table « Imageinfo ». Afficher la table.

Template-noinfo Documentation

Aucune sous-page de documentation n'existe pour le moment pour ce modèle. En créer une maintenant.