Jump to content

Extension:PagedTiffHandler/cs: Difference between revisions

From mediawiki.org
Content deleted Content added
Created page with "== Instalace =="
FuzzyBot (talk | contribs)
Updating to match new version of source page
 
(69 intermediate revisions by 2 users not shown)
Line 10: Line 10:
|username =
|username =
|author = Hallo Welt! Medienwerkstatt GmbH for Wikimedia Deutschland e. V.
|author = Hallo Welt! Medienwerkstatt GmbH for Wikimedia Deutschland e. V.
|description = Allows to display tiff-files
|description = Umožňuje zobrazit soubory TIFF
|image =
|image =
|version = continuous updates
|version = průběžné aktualizace
|update =
|update =
|mediawiki =
|mediawiki =
Line 41: Line 41:
}}
}}


The '''PagedTiffHandler''' extension allows to upload and display tiff-files into your wiki.
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.
It can handle multi-paged images and render them into thumbnails on per page basis.


<span id="Usage"></span>
<span id="Usage"></span>
== Použití ==
== Použití ==
Obrázky můžete vkládat pomocí standardní syntaxe obrázků.
You can embed images using standard image syntax.
Navíc jsou zde dva nové parametry:
Additionally, there are two new parameters:


{| class="wikitable"
{| class="wikitable"
Line 55: Line 55:
! Funkce
! Funkce
|-
|-
| page
| <code>page</code>
| <nowiki>[[Image:Test.tiff|page=2]]</nowiki>
| <syntaxhighlight lang=wikitext inline>[[Image:Test.tiff|page=2]]</syntaxhighlight>
| Renders a thumbnail of the second page of test.tiff. Page numbers start with 1. Default value is 1.
| Zobrazí miniaturu druhé stránky souboru test.tiff. Čísla stránek začínají číslicí 1. Výchozí hodnota je $1.
|-
|-
| lossy
| <code>lossy</code>
| <nowiki>[[Image:Test.tiff|lossy=false]]</nowiki>
| <syntaxhighlight lang=wikitext inline>[[Image:Test.tiff|lossy=false]]</syntaxhighlight>
| If set to false, thumbnails are being rendered as png, otherwise as jpg. If no value is set, PagedTiffHandler determines the value based on the presence of an alpha channel. If alpha is there, thumbnail is rendered as png. Possible values for jpg: '1', 'true' and 'lossy'. Possible values for png: '0', 'false' and 'lossless'.
| Pokud je nastaveno na <code>false</code>, 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: <code>1</code>, <code>true</code>, <code>lossy</code>. Možné hodnoty pro png jsou: <code>0</code>, <code>false</code>, <code>lossless</code>.

Příklady:
<gallery>
File:20230223 MAN fire engine in Zhengzhou.tif|lossy=false|Zobrazeno jako png; <code>lossy=false</code>
File:20230223 MAN fire engine in Zhengzhou.tif|lossy=true|Zobazeno jako jpg; <code>lossy=true</code>
</gallery>
|}
|}



<span id="Pre-requisites"></span>
<span id="Pre-requisites"></span>
Line 74: Line 81:
! Odkaz
! Odkaz
|- valign=top
|- valign=top
! [[Special:MyLanguage/Manual:Image administration#Image thumbnailing|"imagemagick"]] for identify
! [[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ů
| [https://www.imagemagick.org/script/install-source.php www.imagemagick.org]
| [https://www.imagemagick.org/script/install-source.php www.imagemagick.org]
|}
|}


Type the following in your [[wikipedia:Shell (computing)|shell]] to see if you have the above installed first:
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">
which identify
which identify
Line 86: Line 94:
<span id="Required_(optionally)"></span>
<span id="Required_(optionally)"></span>
=== Povinné (volitelně) ===
=== Povinné (volitelně) ===

{|class=wikitable
{|class=wikitable
! Package !! Description !! Link
! Balík !! Popis !! Odkaz
|- valign=top
|- valign=top
! "exiv2" for 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.
| Exiv2 is a Cross-platform C++ library and a command line utility to manage image metadata. Provides support to retrieve EXIF from TIFF files.
| [https://www.exiv2.org/ www.exiv2.org]
| [https://www.exiv2.org/ www.exiv2.org]
|- valign=top
|- valign=top
! "libtiff-tools" for tiffinfo
! "libtiff-tools" pro tiffinfo
| Identify and retrieve basic TIFF metadata (more efficient than ImageMagick)
| Identifikace a načtení základních metadat TIFF (efektivnější než ImageMagick)
| [http://www.simplesystems.org/libtiff/ www.simplesystems.org/libtiff/]
| [http://www.simplesystems.org/libtiff/ www.simplesystems.org/libtiff/]
|}
|}


Type the following in your [[wikipedia:Shell (computing)|shell]] to see if you have the above installed first:
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">
which exiv2 tiffinfo
which exiv2 tiffinfo
</syntaxhighlight>
</syntaxhighlight>


{{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}}.}}
{{Note
|1=For additional performance on very large TIFF files, you might want to install and configure the {{ll|Extension:VipsScaler|VipsScaler}} extension.
}}


<span id="Installation"></span>
<span id="Installation"></span>
Line 112: Line 118:
{{ExtensionInstall
{{ExtensionInstall
|repo-name=PagedTiffHandler
|repo-name=PagedTiffHandler
|custom-steps=* [[#Configuration|<span lang="en" dir="ltr" class="mw-content-ltr">Configure as required.</span>]]
|custom-steps=* [[#Configuration|Nakonfigurujte podle potřeby.]]
|registration=yes
|registration=yes
|no-registration-version=1.27
|no-registration-version=1.27
}}
}}


<span id="Configuration"></span>
<div lang="en" dir="ltr" class="mw-content-ltr">
==Configuration==
== Nastavení ==
</div>
PagedTiffHandler depends on various external programs in order to process Tiff images.


PagedTiffHandler závisí na různých externích programech pro zpracování obrázků TIFF.
* ImageMagick is used to reject/accept the image and render thumbail images. PagedTiffHandler will not work on any [[Manual:Configuring file uploads|locally uploaded]] image without ImageMagick.

* tiffinfo can be used to reject/accept the image instead of ImageMagick, but it does not provide rendering (optional).
* 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.
* Exiv2 is used to extract image metadata (optional).
* tiffinfo může být použito k odmítnutí/přijetí obrázku místo ImageMagick, ale neposkytuje zobrazení (volitelné).
* {{ll|Extension:VipsScaler|VipsScaler}} extension can be used for fast processing of large image files (optional).
* Exiv2 se používá k extrakci metadat obrázku (volitelné).
* Rozšíření {{ll|Extension:VipsScaler|VipsScaler}} lze použít pro rychlé zpracování velkých obrazových souborů (volitelné).

Příklad konfigurace:


Example configuration:
<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;
// Path to exiv2 (MediaWiki core configuration option)
// 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;
// Path to tiffinfo
// 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.
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:
When thumbnailing very large images to very small sizes, it can be better better to downscale to an intermediary size first, instead of resizing in one go.
By default PagedTiffHandler will downsize images larger than $wgTiffIntermediaryScaleStep (2048 pixels wide by default) first to $wgTiffIntermediaryScaleStep before downsizing to even smaller dimensions.

Example configuration:


<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
// Set to 0 to disable
// Nastavením na 0 zakážete
$wgTiffIntermediaryScaleStep = 2048;
$wgTiffIntermediaryScaleStep = 2048;
</syntaxhighlight>
</syntaxhighlight>


PagedTiffHandler rejects images based on error messages of ImageMagick or tiffinfo.
PagedTiffHandler odmítá obrázky na základě chybových hlášení ImageMagick nebo tiffinfo.
Existují tři možnosti:
There are three options:


* Images are rejected if the error message matches $wgTiffIdentifyRejectMessages or $wgTiffTiffinfoRejectMessages
* Obrázky jsou odmítnuty, pokud chybová zpráva odpovídá $wgTiffIdentifyRejectMessages nebo $wgTiffTiffinfoRejectMessages.
* Images are accepted without moaning if the error message matches $wgTiffIdentifyBypassMessages or $wgTiffTiffinfoBypassMessages
* 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.
* In other cases, images are accepted but the error message is recorded in the image metadata.


Příklad konfigurace (všechny parametry zobrazují výchozí konfiguraci):
Example configuration (all of the parameters show the default configuration):


<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
Line 181: Line 187:
</syntaxhighlight>
</syntaxhighlight>


PagedTiffHandler také kontroluje několik parametrů obrazu, aby bylo možné řídit potřebnou dobu zpracování.
PagedTiffHandler also checks a few parameters of the image in order to be able to control the necessary processing time.


Příklad konfigurace:
Example configuration:


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


When thumbnailing fails for an image, PagedTiffHandler will not try again to render this image for some time.
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.
The setting below controls after how many seconds thumbnailing may be tried again.


Příklad konfigurace:
Example configuration:


<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
// TTL of Cacheentries for Errors
// TTL položek mezipaměti pro chyby
$wgTiffErrorCacheTTL = 84600;
$wgTiffErrorCacheTTL = 84600;
</syntaxhighlight>
</syntaxhighlight>


;Výchozí
;Defaults
Všechny výše uvedené parametry jsou v konfiguraci rozšíření nastaveny jako výchozí.
All of the above shown parameters are set as default in the configuration of the extension.


<span id="See_also"></span>
==See also==
== Související odkazy ==
* {{ll|Extension:PdfHandler}}
* {{ll|Extension:PdfHandler}}



Latest revision as of 10:36, 17 April 2026

Příručka k rozšířením MediaWiki
PagedTiffHandler
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
  • $wgImageMagickIdentifyCommand
  • $wgTiffUseExiv
  • $wgTiffUseTiffinfo
  • $wgTiffTiffinfoCommand
  • $wgTiffIntermediaryScaleStep
  • $wgTiffIdentifyRejectMessages
  • $wgTiffIdentifyBypassMessages
  • $wgTiffIdentifyRejectMessages
  • $wgTiffTiffinfoRejectMessages
  • $wgTiffMaxEmbedFiles
  • $wgTiffMaxMetaSize
  • $wgTiffErrorCacheTTL
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
Pro zvýšení výkonu při práci s velmi velkými soubory TIFF můžete chtít nainstalovat a nakonfigurovat rozšíření VipsScaler .

Instalace

  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného PagedTiffHandler ve vaší složce extensions/.
    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.
  • Yes Dokončeno – Přejděte na stránku Special:Version vaší 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