Extension:PagedTiffHandler/cs: Difference between revisions
Created page with ""$1" pro $2" |
Updating to match new version of source page |
||
| (40 intermediate revisions by one other user not shown) | |||
| Line 3: | Line 3: | ||
|status = stable |
|status = stable |
||
|type1 = media |
|type1 = media |
||
|type2 = |
|type2 = |
||
|hook1 = |
|||
|newhook1 = PagedTiffHandlerTiffData |
|newhook1 = PagedTiffHandlerTiffData |
||
|newhook2 = PagedTiffHandlerExifData |
|newhook2 = PagedTiffHandlerExifData |
||
|newhook3 = PagedTiffHandlerRenderCommand |
|newhook3 = PagedTiffHandlerRenderCommand |
||
|username = |
|||
|author = Hallo Welt! Medienwerkstatt GmbH for Wikimedia Deutschland e. V. |
|author = Hallo Welt! Medienwerkstatt GmbH for Wikimedia Deutschland e. V. |
||
|description = Umožňuje zobrazit soubory TIFF |
|description = Umožňuje zobrazit soubory TIFF |
||
|image = |
|||
|version = průběžné aktualizace |
|version = průběžné aktualizace |
||
|update = |
|||
|mediawiki = |
|||
|php = 7.0+ |
|php = 7.0+ |
||
|license = |
|||
|compatibility policy = rel |
|compatibility policy = rel |
||
|download = {{WikimediaDownload|PagedTiffHandler|phab=EPTH}} |
|download = {{WikimediaDownload|PagedTiffHandler|phab=EPTH}} |
||
|readme = |
|||
|changelog = |
|||
|parameters = |
|parameters = |
||
* $wgImageMagickIdentifyCommand |
* $wgImageMagickIdentifyCommand |
||
| Line 26: | Line 34: | ||
* $wgTiffMaxMetaSize |
* $wgTiffMaxMetaSize |
||
* $wgTiffErrorCacheTTL |
* $wgTiffErrorCacheTTL |
||
|rights = |
|||
|example = |
|||
|compatibility = |
|||
|needs-updatephp = No |
|needs-updatephp = No |
||
|phabricator = MediaWiki-extensions-PagedTiffHandler |
|phabricator = MediaWiki-extensions-PagedTiffHandler |
||
| Line 58: | Line 69: | ||
</gallery> |
</gallery> |
||
|} |
|} |
||
<span id="Pre-requisites"></span> |
<span id="Pre-requisites"></span> |
||
| Line 68: | Line 80: | ||
! Popis |
! Popis |
||
! Odkaz |
! Odkaz |
||
|- |
|- valign=top |
||
! [[Special:MyLanguage/Manual:Image administration#Image thumbnailing|"imagemagick"]] pro identifikaci |
! [[Special:MyLanguage/Manual:Image administration#Image thumbnailing|"imagemagick"]] pro identifikaci |
||
| Provádí dynamické změny velikosti a miniatury obrázků |
| Provádí dynamické změny velikosti a miniatury obrázků |
||
| Line 84: | Line 96: | ||
{|class=wikitable |
{|class=wikitable |
||
! Balík !! Popis !! Odkaz |
! Balík !! Popis !! Odkaz |
||
|- |
|- valign=top |
||
! "exiv2" pro exiv2 |
! "exiv2" pro exiv2 |
||
| Exiv2 je multiplatformní knihovna C++ a nástroj příkazového řádku pro správu metadat obrázků. Poskytuje podporu pro načtení EXIF ze souborů TIFF. |
|||
| <span lang="en" dir="ltr" class="mw-content-ltr">Exiv2 is a Cross-platform C++ library and a command line utility to manage image metadata.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Provides support to retrieve EXIF from TIFF files.</span> |
|||
| [https://www.exiv2.org/ www.exiv2.org] |
| [https://www.exiv2.org/ www.exiv2.org] |
||
|- |
|- valign=top |
||
! |
! "libtiff-tools" pro tiffinfo |
||
| Identifikace a načtení základních metadat TIFF (efektivnější než ImageMagick) |
|||
| <span lang="en" dir="ltr" class="mw-content-ltr">Identify and retrieve basic TIFF metadata (more efficient than ImageMagick)</span> |
|||
| [http://www.simplesystems.org/libtiff/ www.simplesystems.org/libtiff/] |
| [http://www.simplesystems.org/libtiff/ www.simplesystems.org/libtiff/] |
||
|} |
|} |
||
Abyste nejprve zjistili, zda máte výše uvedené nainstalované, zadejte do svého [[wikipedia:Shell (computing)|shellu]] následující příkaz: |
|||
<syntaxhighlight lang="bash"> |
<syntaxhighlight lang="bash"> |
||
| Line 100: | Line 112: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
{{Note|1= |
{{Note|1=Pro zvýšení výkonu při práci s velmi velkými soubory TIFF můžete chtít nainstalovat a nakonfigurovat rozšíření {{ll|Extension:VipsScaler|VipsScaler}}.}} |
||
<span id="Installation"></span> |
<span id="Installation"></span> |
||
| Line 114: | Line 126: | ||
== Nastavení == |
== Nastavení == |
||
PagedTiffHandler závisí na různých externích programech pro zpracování obrázků TIFF. |
|||
<div lang="en" dir="ltr" class="mw-content-ltr"> |
|||
PagedTiffHandler depends on various external programs in order to process Tiff images. |
|||
</div> |
|||
* |
* ImageMagick se používá k odmítnutí/přijetí obrázku a vykreslení miniatur. PagedTiffHandler nebude fungovat na žádném [[Special:MyLanguage/Manual:Configuring file uploads|lokálně nahraném]] obrázku bez ImageMagick. |
||
* tiffinfo může být použito k odmítnutí/přijetí obrázku místo ImageMagick, ale neposkytuje zobrazení (volitelné). |
|||
* <span lang="en" dir="ltr" class="mw-content-ltr">tiffinfo can be used to reject/accept the image instead of ImageMagick, but it does not provide rendering (optional).</span> |
|||
* Exiv2 se používá k extrakci metadat obrázku (volitelné). |
|||
* <span lang="en" dir="ltr" class="mw-content-ltr">Exiv2 is used to extract image metadata (optional).</span> |
|||
* |
* Rozšíření {{ll|Extension:VipsScaler|VipsScaler}} lze použít pro rychlé zpracování velkých obrazových souborů (volitelné). |
||
Příklad konfigurace: |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">Example configuration:</span> |
|||
<syntaxhighlight lang="php"> |
<syntaxhighlight lang="php"> |
||
// Cesta identifikace |
|||
// Path to identify |
|||
$wgImageMagickIdentifyCommand = '/usr/bin/identify'; |
$wgImageMagickIdentifyCommand = '/usr/bin/identify'; |
||
// Pokud je hodnota false, použijte exiv2?, bude použit interní EXIF parser MediaWiki. |
|||
// Use exiv2? if false, MediaWiki's internal EXIF parser will be used |
|||
$wgTiffUseExiv = false; |
$wgTiffUseExiv = false; |
||
// |
// Cesta k exiv2 (možnost konfigurace jádra MediaWiki) |
||
$wgExiv2Command = '/usr/bin/exiv2'; |
$wgExiv2Command = '/usr/bin/exiv2'; |
||
// Pokud je hodnota false, použijte tiffinfo?, použije se příkaz identify z ImageMagick. |
|||
// Use tiffinfo? if false, ImageMagick's identify command will be used |
|||
$wgTiffUseTiffinfo = false; |
$wgTiffUseTiffinfo = false; |
||
// |
// Cesta k tiffinfo |
||
$wgTiffTiffinfoCommand = '/usr/bin/tiffinfo'; |
$wgTiffTiffinfoCommand = '/usr/bin/tiffinfo'; |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
Při zmenšování náhledů velmi velkých obrázků na velmi malé velikosti může být lepší nejprve zmenšit na střední velikost, než měnit velikost najednou. |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">When thumbnailing very large images to very small sizes, it can be better to downscale to an intermediary size first, instead of resizing in one go.</span> |
|||
Ve výchozím nastavení PagedTiffHandler zmenší obrázky větší než $wgTiffIntermediaryScaleStep (standardně 2048 pixelů na šířku) nejprve na $wgTiffIntermediaryScaleStep a poté na ještě menší rozměry. |
|||
Příklad konfigurace: |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">Example configuration:</span> |
|||
<syntaxhighlight lang="php"> |
<syntaxhighlight lang="php"> |
||
// U menších miniatur nejprve upravte velikost na tuto hodnotu. |
|||
// For thumbnails smaller than this, first scale to this amount |
|||
// |
// Nastavením na 0 zakážete |
||
$wgTiffIntermediaryScaleStep = 2048; |
$wgTiffIntermediaryScaleStep = 2048; |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
PagedTiffHandler odmítá obrázky na základě chybových hlášení ImageMagick nebo tiffinfo. |
|||
Existují tři možnosti: |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">There are three options:</span> |
|||
* |
* Obrázky jsou odmítnuty, pokud chybová zpráva odpovídá $wgTiffIdentifyRejectMessages nebo $wgTiffTiffinfoRejectMessages. |
||
* |
* Obrázky jsou přijímány bez reklamací, pokud chybová zpráva odpovídá $wgTiffIdentifyBypassMessages nebo $wgTiffTiffinfoBypassMessages. |
||
* V ostatních případech jsou obrázky akceptovány, ale chybová zpráva je zaznamenána v metadatech obrázku. |
|||
* <span lang="en" dir="ltr" class="mw-content-ltr">In other cases, images are accepted but the error message is recorded in the image metadata.</span> |
|||
Příklad konfigurace (všechny parametry zobrazují výchozí konfiguraci): |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">Example configuration (all of the parameters show the default configuration):</span> |
|||
<syntaxhighlight lang="php"> |
<syntaxhighlight lang="php"> |
||
| Line 177: | Line 187: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
PagedTiffHandler také kontroluje několik parametrů obrazu, aby bylo možné řídit potřebnou dobu zpracování. |
|||
<div lang="en" dir="ltr" class="mw-content-ltr"> |
|||
PagedTiffHandler also checks a few parameters of the image in order to be able to control the necessary processing time. |
|||
</div> |
|||
Příklad konfigurace: |
|||
<div lang="en" dir="ltr" class="mw-content-ltr"> |
|||
Example configuration: |
|||
</div> |
|||
<syntaxhighlight lang="php"> |
<syntaxhighlight lang="php"> |
||
// Maximální počet vložených souborů v obrázku TIFF |
|||
// Maximum number of embedded files in tiff image |
|||
$wgTiffMaxEmbedFiles = 10000; |
$wgTiffMaxEmbedFiles = 10000; |
||
// Maximální velikost metadat |
|||
// Maximum size of meta data |
|||
$wgTiffMaxMetaSize = 64*1024; // 64kB |
$wgTiffMaxMetaSize = 64*1024; // 64kB |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
Pokud selže zobrazení miniatur obrázku, PagedTiffHandler se po nějakou dobu nepokusí tento obrázek znovu vykreslit. |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">When thumbnailing fails for an image, PagedTiffHandler will not try again to render this image for some time.</span> |
|||
Níže uvedené nastavení určuje, po kolika sekundách lze náhled znovu zkusit. |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">The setting below controls after how many seconds thumbnailing may be tried again.</span> |
|||
Příklad konfigurace: |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">Example configuration:</span> |
|||
<syntaxhighlight lang="php"> |
<syntaxhighlight lang="php"> |
||
// TTL |
// TTL položek mezipaměti pro chyby |
||
$wgTiffErrorCacheTTL = 84600; |
$wgTiffErrorCacheTTL = 84600; |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
;Výchozí |
|||
;<span lang="en" dir="ltr" class="mw-content-ltr">Defaults</span> |
|||
Všechny výše uvedené parametry jsou v konfiguraci rozšíření nastaveny jako výchozí. |
|||
<span lang="en" dir="ltr" class="mw-content-ltr">All of the above shown parameters are set as default in the configuration of the extension.</span> |
|||
<span id="See_also"></span> |
|||
<div lang="en" dir="ltr" class="mw-content-ltr"> |
|||
== Související odkazy == |
|||
==See also== |
|||
</div> |
|||
* {{ll|Extension:PdfHandler}} |
* {{ll|Extension:PdfHandler}} |
||
Latest revision as of 10:36, 17 April 2026
Stav rozšíření: stabilní |
|
|---|---|
| Implementace | Média |
| Popis | Umožňuje zobrazit soubory TIFF |
| Autoři | Hallo Welt! Medienwerkstatt GmbH for Wikimedia Deutschland e. V. |
| Nejnovější verze | průběžné aktualizace |
| Zásady kompatibility | Vydání snímků současně s MediaWiki. Hlavní vývojová větev není zpětně kompatibilní. |
| PHP | 7.0+ |
| Změny v databázi | Ne |
|
|
| Licence | GNU General Public License 2.0 nebo novější |
| Stáhnout | |
| Přeložte rozšíření PagedTiffHandler, používá-li lokalizaci z translatewiki.net | |
| Problémy | Otevřené úkoly · Nahlásit chybu |
Rozšíření PagedTiffHandler umožňuje nahrávat a zobrazovat soubory TIFF do vaší wiki. Dokáže zpracovat vícestránkové obrázky a vykreslit je do miniatur na stránce.
Použití
Obrázky můžete vkládat pomocí standardní syntaxe obrázků. Navíc jsou zde dva nové parametry:
| Parametr | Příklad | Funkce |
|---|---|---|
page
|
[[Image:Test.tiff|page=2]]
|
Zobrazí miniaturu druhé stránky souboru test.tiff. Čísla stránek začínají číslicí 1. Výchozí hodnota je $1. |
lossy
|
[[Image:Test.tiff|lossy=false]]
|
Pokud je nastaveno na false, miniatury se vykreslují jako png, jinak jako jpg. Pokud není nastavena žádná hodnota, PagedTiffHandler určuje hodnotu na základě přítomnosti alfa kanálu. S alfa kanálem se miniatura vykreslí jako png. Možné hodnoty pro jpg jsou: 1, true, lossy. Možné hodnoty pro png jsou: 0, false, lossless.
Příklady:
|
Předpoklady
Povinné
| Balík | Popis | Odkaz |
|---|---|---|
| "imagemagick" pro identifikaci | Provádí dynamické změny velikosti a miniatury obrázků | www.imagemagick.org |
Abyste nejprve zjistili, zda máte výše uvedené nainstalované, zadejte do svého shellu následující příkaz:
which identify
Povinné (volitelně)
| Balík | Popis | Odkaz |
|---|---|---|
| "exiv2" pro exiv2 | Exiv2 je multiplatformní knihovna C++ a nástroj příkazového řádku pro správu metadat obrázků. Poskytuje podporu pro načtení EXIF ze souborů TIFF. | www.exiv2.org |
| "libtiff-tools" pro tiffinfo | Identifikace a načtení základních metadat TIFF (efektivnější než ImageMagick) | www.simplesystems.org/libtiff/ |
Abyste nejprve zjistili, zda máte výše uvedené nainstalované, zadejte do svého shellu následující příkaz:
which exiv2 tiffinfo
Instalace
- Stáhněte soubor/y a vložte je do adresáře pojmenovaného
PagedTiffHandlerve vaší složceextensions/.
Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/PagedTiffHandler
- Na konec vašeho souboru LocalSettings.php přidejte následující kód:
wfLoadExtension( 'PagedTiffHandler' );
- Nakonfigurujte podle potřeby.
Dokončeno – Přejděte na stránku Special:Versionvaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.
Nastavení
PagedTiffHandler závisí na různých externích programech pro zpracování obrázků TIFF.
- ImageMagick se používá k odmítnutí/přijetí obrázku a vykreslení miniatur. PagedTiffHandler nebude fungovat na žádném lokálně nahraném obrázku bez ImageMagick.
- tiffinfo může být použito k odmítnutí/přijetí obrázku místo ImageMagick, ale neposkytuje zobrazení (volitelné).
- Exiv2 se používá k extrakci metadat obrázku (volitelné).
- Rozšíření VipsScaler lze použít pro rychlé zpracování velkých obrazových souborů (volitelné).
Příklad konfigurace:
// Cesta identifikace
$wgImageMagickIdentifyCommand = '/usr/bin/identify';
// Pokud je hodnota false, použijte exiv2?, bude použit interní EXIF parser MediaWiki.
$wgTiffUseExiv = false;
// Cesta k exiv2 (možnost konfigurace jádra MediaWiki)
$wgExiv2Command = '/usr/bin/exiv2';
// Pokud je hodnota false, použijte tiffinfo?, použije se příkaz identify z ImageMagick.
$wgTiffUseTiffinfo = false;
// Cesta k tiffinfo
$wgTiffTiffinfoCommand = '/usr/bin/tiffinfo';
Při zmenšování náhledů velmi velkých obrázků na velmi malé velikosti může být lepší nejprve zmenšit na střední velikost, než měnit velikost najednou. Ve výchozím nastavení PagedTiffHandler zmenší obrázky větší než $wgTiffIntermediaryScaleStep (standardně 2048 pixelů na šířku) nejprve na $wgTiffIntermediaryScaleStep a poté na ještě menší rozměry.
Příklad konfigurace:
// U menších miniatur nejprve upravte velikost na tuto hodnotu.
// Nastavením na 0 zakážete
$wgTiffIntermediaryScaleStep = 2048;
PagedTiffHandler odmítá obrázky na základě chybových hlášení ImageMagick nebo tiffinfo. Existují tři možnosti:
- Obrázky jsou odmítnuty, pokud chybová zpráva odpovídá $wgTiffIdentifyRejectMessages nebo $wgTiffTiffinfoRejectMessages.
- Obrázky jsou přijímány bez reklamací, pokud chybová zpráva odpovídá $wgTiffIdentifyBypassMessages nebo $wgTiffTiffinfoBypassMessages.
- V ostatních případech jsou obrázky akceptovány, ale chybová zpráva je zaznamenána v metadatech obrázku.
Příklad konfigurace (všechny parametry zobrazují výchozí konfiguraci):
$wgTiffIdentifyRejectMessages = [
'/^identify: Compression algorithm does not support random access/',
'/^identify: Old-style LZW codes, convert file/',
'/^identify: Sorry, requested compression method is not configured/',
'/^identify: ThunderDecode: Not enough data at scanline/',
'/^identify: .+?: Read error on strip/',
'/^identify: .+?: Can not read TIFF directory/',
'/^identify: Not a TIFF/',
];
$wgTiffIdentifyBypassMessages = [
'/^identify: .*TIFFReadDirectory/',
'/^identify: .+?: unknown field with tag .+? encountered/'
];
PagedTiffHandler také kontroluje několik parametrů obrazu, aby bylo možné řídit potřebnou dobu zpracování.
Příklad konfigurace:
// Maximální počet vložených souborů v obrázku TIFF
$wgTiffMaxEmbedFiles = 10000;
// Maximální velikost metadat
$wgTiffMaxMetaSize = 64*1024; // 64kB
Pokud selže zobrazení miniatur obrázku, PagedTiffHandler se po nějakou dobu nepokusí tento obrázek znovu vykreslit. Níže uvedené nastavení určuje, po kolika sekundách lze náhled znovu zkusit.
Příklad konfigurace:
// TTL položek mezipaměti pro chyby
$wgTiffErrorCacheTTL = 84600;
- Výchozí
Všechny výše uvedené parametry jsou v konfiguraci rozšíření nastaveny jako výchozí.
Související odkazy
| Toto rozšíření se používá na jednom nebo více projektech Wikimedia. Pravděpodobně to znamená, že rozšíření je stabilní a funguje dostatečně dobře, aby jej mohly používat weby s tak vysokou návštěvností. Vyhledejte tento název rozšíření v konfiguračních souborech CommonSettings.php a InitialiseSettings.php Wikimedie, abyste viděli, kde je nainstalováno. Úplný seznam rozšíření nainstalovaných na konkrétní wiki lze vidět na stránce wiki Special:Version. |
| Toto rozšíření je zahrnuto v následujících wiki farmách/hostitelích a/nebo balíčcích: |
