Extension:PdfHandler
Stav rozšíření: stabilní |
|
|---|---|
| Implementace | Média |
| Popis | Allows to handle PDF files like multipage DJVU |
| Autoři | Martin Seidel (xarax) |
| Zásady kompatibility | Vydání snímků současně s MediaWiki. Hlavní vývojová větev není zpětně kompatibilní. |
| Změny v databázi | Ne |
| Licence | GNU General Public License 2.0 nebo novější |
| Stáhnout | |
| Příklad | |
|
|
| Přeložte rozšíření PdfHandler, používá-li lokalizaci z translatewiki.net | |
| Vagrant role | pdfhandler |
| Problémy | Otevřené úkoly · Nahlásit chybu |
Rozšíření PdfHandler zobrazuje nahrané soubory PDF ve vícestránkovém náhledu.[1]
Spolu s rozšířením Proofread Page lze soubory PDF zobrazit s textem vedle sebe. To umožňuje uživatelům přepisovat knihy a další dokumenty.[2]
Použití
- Uživatel může zobrazit soubory PDF jako obrázek, přičemž se zobrazí jedna stránka po druhé, například takto:
[[File:myPdfFile.pdf|page=1|600px]]. Parametrypageasizejsou volitelné. Výchozí stránkou je stránka č. 1. Místo parametrusizemůžete také použít parametrthumb, s popisky nebo bez nich:[[File:myPdfFile.pdf|page=1|thumb|My PDF]].[3] - Protože PdfHandler rozšiřuje ImageHandler, můžete použít všechny argumenty, které byste použili pro Image – například:
thumb,right/left,caption,border,linkatd.
- Pokud chcete například prezentovat dvoustránkový PDF soubor, postupujte takto:
[[File:myPdfFile.pdf|page=1]] [[File:myPdfFile.pdf|page=2]]
- The main usage of the PdfHandler extension is without user interaction. If you upload a new pdf file, the metadata will be stored in the database, and then this file can be shown in a multipage preview layout like the djvu handler does. Without this extension, pdfs will not display properly when uploaded.
- Additionally, this extension allows Extension:ProofreadPage to handle pdfs in side-by-side view for transcribing/proofreading, as is done on Wikisource
Předpoklady
Toto rozšíření vyžaduje nejprve instalaci následujících balíčků:
| Balík | Popis | Odkaz |
|---|---|---|
ghostscript
|
Vykreslí obrázky stránky.
Poskytuje příkaz |
www.ghostscript.com |
imagemagick
|
Provádí dynamickou změnu velikosti a zobrazování miniatur obrázků.
It provides the command |
www.imagemagick.org |
xpdf-utils poppler-utils
|
Extracts metadata from PDF files. If you see "0 × 0 pixel" on the file description of a PDF, you lack this package.
Poskytuje příkaz |
www.xpdfreader.com
On Ubuntu and Debian, the "poppler-utils" package can be used instead of "xpdf-utils". |
Type the following in your shell to see if you have the above installed first (it should list 4 rows):
which gs convert pdfinfo pdftotext
Pokud něco chybí, nainstalujte související balíčky. Příklad v Debianu a Ubuntu:
sudo apt install ghostscript imagemagick xpdf-utils
Pokud se vám tyto balíčky nedaří nainstalovat, obraťte se prosím na správce serveru ve vašem prostředí.
Instalace
- Před pokračováním se ujistěte, že je nainstalován požadovaný software!
- Stáhněte soubor/y a vložte je do adresáře pojmenovaného
PdfHandlerve 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/PdfHandler
- Na konec vašeho souboru LocalSettings.php přidejte následující kód:
wfLoadExtension( 'PdfHandler' );
- Vyžaduje nastavení v konfiguračním souboru. (see also the examples provided)
Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.
Konfigurace
You can (or, depending on the operating system of the server, will have to) set some variables in the "LocalSettings.php" file:
| Name | Default | Description |
|---|---|---|
$wgPdfProcessor
|
"gs"
|
path to your ghostscript implementation |
$wgPdfPostProcessor
|
"convert"
|
path to your imagemagick convert |
$wgPdfInfo
|
"pdfinfo"
|
path to your pdfinfo |
$wgPdftoText
|
"pdftotext"
|
path to your pdftotext |
$wgPdfOutputExtension
|
"jpg"
|
preferred output format[4] |
$wgPdfHandlerDpi
|
"150"
|
resolution in dpi
The extension extracts a bitmap image for each page of the PDF, using this resolution (dpi = dots per inch). For example, a PDF page with the European size A4 is 210 mm wide, corresponding to 595 points (at 72 dpi). This yields an image 1240 pixels wide (at 150 dpi). If instead this parameter is set to 300 dpi, the width will be 2480 pixels. |
$wgPdfHandlerJpegQuality
|
"95" (zavedeno od 1.24)
|
Quality level, which the post processor should use. |
- Variables below are not specific to this extension
- Enable PDF uploads, if you haven't already:
$wgFileExtensions[] = 'pdf'; - Enable ImageMagick, if you haven't already:
$wgUseImageMagick = true; $wgMaxShellMemory- memory limit for gs, convert and pdfinfo. The default value might be too low.
Ubuntu
$wgPdfProcessor = 'gs';
$wgPdfPostProcessor = $wgImageMagickConvertCommand; // if defined via ImageMagick
// $wgPdfPostProcessor = 'convert'; // if not defined via ImageMagick
$wgPdfInfo = 'pdfinfo';
$wgPdftoText = 'pdftotext';
Debian
$wgPdfProcessor = '/usr/bin/gs';
$wgPdfPostProcessor = $wgImageMagickConvertCommand; // if defined via ImageMagick
// $wgPdfPostProcessor = '/usr/bin/convert'; // if not defined via ImageMagick
$wgPdfInfo = '/usr/bin/pdfinfo';
$wgPdftoText = '/usr/bin/pdftotext';
Windows
$wgPdfProcessor = 'C:\Program Files\gs\gs8.60\bin\gswin32.exe';
$wgPdfPostProcessor = $wgImageMagickConvertCommand; // if defined via ImageMagick
// $wgPdfPostProcessor = 'C:\Program Files\ImageMagick-6.6.2-Q16\convert.exe'; // if not defined via ImageMagick
$wgPdfInfo = 'C:\Program Files\xpdf-3.02pl1-win32\pdfinfo.exe';
$wgPdftoText = 'C:\Program Files\xpdf-3.02pl1-win32\pdftotext.exe';
macOS
$wgPdfProcessor = '/usr/local/bin/gs';
$wgPdfPostProcessor = $wgImageMagickConvertCommand; // if defined via ImageMagick
// $wgPdfPostProcessor = '/usr/local/bin/convert'; // if not defined via ImageMagick
$wgPdfInfo = '/usr/local/bin/pdfinfo';
$wgPdftoText = '/usr/local/bin/pdftotext';
Řešení problémů
- If PDF files do not display after upload, make sure that MediaWiki can execute the pdfinfo command and that configuration parameter
$wgPdfInfois set properly. Also check your error log, and make sure that your host hasn't disabled running external commands. - If PDF files do not show properly after installation (for example, showing "0 × 0 pixels") you may need to use the PříručkaːÚdržbářské skripty refreshImageMetadata.php and/or rebuildImages.php. For example:
$ php ./maintenance/run.php refreshImageMetadata --mime application/pdf --force
- Also try to purge the page of the file. See Příručka:Pročištění databáze.
- If PDF files are rendered randomly check if the "C.UTF-8" locale is available on your server by running
locale -a.
Poznámky
- ↑ PROBABLY not required any more: with WebStore enabled, the extension automatically generates images from the specified page
- ↑ To umožňuje uživatelům přepisovat knihy a další dokumenty, jak se běžně dělá u souborů DjVu (zejména v Wikisource).
- ↑ Tato možnost zobrazení jedné stránky byla zavedena již poměrně dávno (r25575)
- ↑ This does not preclude rendering to other formats, as the picture is served in a format determined by the extension (suffix) in its
src=path, not by$wgPdfOutputExtension. The server-side choice can be overridden with a user script – see example.
Související odkazy
- http://wiki.4intra.net/PdfHandler — fork s mnohem rychlejším generováním miniatur pomocí pdftocairo místo ghostscriptu+imagemagick
- Extension:Proofread Page — lze použít ve spojení s PdfHandlerem
- Jak používat DjVu s MediaWiki
- Rozšíření PDFEmbde
| 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: |
- Stable extensions/cs
- Media handling extensions/cs
- GPL licensed extensions/cs
- Extensions in Wikimedia version control/cs
- All extensions/cs
- Extensions bundled with MediaWiki 1.21/cs
- Extensions used on Wikimedia/cs
- Extensions included in BlueSpice/cs
- Extensions included in Canasta/cs
- Extensions available as Debian packages/cs
- Extensions included in Fandom/cs
- Extensions included in Miraheze/cs
- Extensions included in MyWikis/cs
- Extensions included in ProWiki/cs
- Extensions included in semantic::core/cs
- Extensions included in ShoutWiki/cs
- Extensions included in Telepedia/cs
- Extensions included in wiki.gg/cs
- Transcription extensions/cs
- PDF extensions/cs
