跳至內容

模板:Custom rule

維基文庫,自由的圖書館
文件圖示 模板文件[檢視] [編輯] [歷史] [清除快取]


This template creates a rule made up of a number of interchangeable image segments.

Example

[編輯]

{{Custom rule|sp|100|d|6|sp|10|d|10|sp|10|d|6|sp|100}}

Usage

[編輯]

The parameters are a sequence of identifiers for the type of feature followed by that feature's width in pixels. These always form pairs of parameters. Below is a list of the features available. Update this list if you know of elements that are missing.

Shorthand Identifier Example Widths available
sp Span 5, 10, 20, 40, 50, 100
w Wave 40
s Square 10
d Diamond 4, 6, 10
do Diamond open 7
c Circle 6
el Ellipse 15
fl, fr Flare (Left, Right) 12
fc Flare Centre 14, 22
cll, clr Curl (Left,Right) 10
fy1 Fancy1 40

If an an identifier is not available for a segment you want, add it to {{custom rule segment}}, or use the plain identifier without a shorthand. Eg {{custom rule|sp|100}} = {{custom rule|Span|100}}.

The feature must be available as that specific size. If it is not, the image will not be found, and a red link will appear. You can see a full list at the Rule segments category at Commons. If you add your own segments, add them to this category.

Adding new feature types

[編輯]
Notice the "flange" for matching to the background rule.

It is easy to add images to the set. In order to be found, the filename must be in the form "Rule Segment - [Identifier] - [Width]px.svg. Example: File:Rule Segment - Span - 10px.svg

Note that it is also required that the image meet up well at the sides. The rule is 1px wide, so the features must have a 1px edge on each side, in the exact centre (vertically) of the edge. To ensure this, run a 1px line through the feature so that it fills in the gaps. See the diagram on the left for an example of how this is done. Ensure that the line is aligned with the pixel grid (but not centred on it), otherwise it will come out blurry when rendered. To fix this, shift up or down by 0.5px. Be careful about edges of features as well, especially horizontal or vertical ones—these should be also aligned to pixel edges.

You will also need to add code to the template that grabs the image segments, {{Custom rule segment}}. Instructions on modifying that template can be found on the documentation there.

Adding more segments

[編輯]

For complex rules, more segments can be added. Edit this template and paste in line in the format:

</noinclude>{{#if:{{{17|}}}|{{!!}}{{Custom rule segment|{{{17}}}|{{{18}}}}}}}<noinclude>

Make sure the numbers are continuous through the template, and that you match the first parameter of this line to the second one, otherwise the template will not render reliably.

See also

[編輯]
  • {{rule}} Simple rule of variable width - use this if you just want a line
· · · · · · · · · · · · · · ·