Extension:Thumbro
Thumbro Release status: beta |
|
---|---|
Implementation | Media |
Description | Improve and expand thumbnailing in MediaWiki |
Author(s) | alistair3149, Bryan Tong Minh |
Latest version | 0.0.3 (Continuous updates) |
Compatibility policy | Master maintains backward compatibility. |
MediaWiki | 1.39.4+ |
Composer | starcitizentools/thumbro |
License | GNU General Public License 2.0 or later |
Download | GitHub: Note: Readme |
|
|
|
|
The Thumbro extension improves and expands thumbnailing in MediaWiki. It is a forked and rewritten version of Extension:VipsScaler.
Features
[edit]- Use libvips to render thumbnails instead of ImageMagick and GD
- Allow custom output options for libvips
- Render WebP thumbnails by default for gif (animated too!), jpeg, png, webp
- Allow adding
<source>
element to the image using theThumbroBeforeProduceHtml
hook - Add a hidden anchor element to allow web crawler to crawl the original resolution image (T54647)
Installation
[edit]- Install libvips
- Download and place the file(s) in a directory called
Thumbro
in yourextensions/
folder. - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'Thumbro' );
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Configurations
[edit]ℹ️ Thumbro works out of the box without any configurations.
$wgThumbroLibraries
is used to define the libraries used in Thumbro.
Key | Description |
---|---|
command
|
Executable used by Thumbro to do image transformation |
Default:
$wgThumbroLibraries => [
"value" => [
"libvips" => [
"command": "/usr/bin/vipsthumbnail"
]
]
];
$wgThumbroOptions
is used to define the parameters of the thumbnail generation.
Key | Description |
---|---|
enabled
|
Enable or disable Thumbro for the selected file type |
library
|
Corresponds to $wgThumbroLibraries , currently only libvips is supported
|
inputOptions
|
Corresponds to the input/load options in VipsForeignSave
|
outputOptions
|
Corresponds to the output/save options in VipsForeignSave
|
Default:
$wgThumbroOptions = [
'value' => [
'image/gif' => [
'enabled' => true,
'library' => 'libvips',
'inputOptions' => [
'n' => '-1'
]
],
'image/jpeg' => [
'enabled' => true,
'library' => 'libvips',
'inputOptions' => [],
'outputOptions' => [
'strip': 'true',
'Q': '80'
]
],
'image/png': => [
'enabled' => true,
'library' => 'libvips',
'inputOptions' => [],
'outputOptions' => [
'strip' => 'true',
'filter' => 'VIPS_FOREIGN_PNG_FILTER_ALL'
]
],
'image/webp' => [
'enabled' => true,
'library' => 'libvips',
'inputOptions' => [],
'outputOptions' => [
'strip' => 'true',
'Q' => '90',
'smart_subsample' => 'true'
]
]
]
];
Testing options
[edit]Name | Description | Values | Default |
---|---|---|---|
$wgThumbroEnabled
|
Set to false to disable Thumbro throughout the wiki excluding the Special:ThumbroTest page
|
true - enable; false - disable
|
true
|
$wgThumbroExposeTestPage
|
Enable Special:ThumbroTest on the wiki | true - enable; false - disable
|
false
|
$wgThumbroTestExpiry
|
Control the cache age for the test image streamed to Special:ThumbroTest | integer | 3600
|
Testing Thumbro thumbnails
[edit]Thumbro comes with a special page that can be used to compare thumbnails before and after Thumbro. First you have to enable the page with this config:
// Enable the Special:ThumbroTest page
$wgThumbroExposeTestPage = true;
To make sure the before thumbnail is untouched by Thumbro, you can either disable Thumbro site-wide:
// Disable Thumbro site-wide
$wgThumbroEnabled = false;
Or disable the output file format you wanted to test under $wgThumbroOptions
.
See also
[edit]- Extension:VipsScaler - original version of this extension