Extension:PdfHandler/ru

This page is a translated version of the page Extension:PdfHandler and the translation is 12% complete.
Other languages:
Это расширение поставляется с MediaWiki 1.21 и выше. Таким образом, вам не нужно загружать его снова. Тем не менее, вы всё равно должны следовать другим инструкциям.
Справка по расширениям MediaWiki
OOjs UI icon advanced-invert.svg
PdfHandler
Статус релиза: стабильно
Реализация Медиафайлы
Описание Allows to handle PDF files like multipage DJVU
Автор(ы) Martin Seidel (xarax)
Политика совместимости Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki 1.34+
PHP 5.4+
Изменения в БД Нет
Лицензия GNU General Public License 2.0 или позднее
Скачать
Пример
  • $wgPdfHandlerJpegQuality
  • $wgPdfOutputExtension
  • $wgPdfInfo
  • $wgPdftoText
  • $wgPdfProcessor
  • $wgPdfHandlerShell
  • $wgPdfPostProcessor
  • $wgPdfHandlerDpi
Переведите расширение PdfHandler, если оно доступно на translatewiki.net

Проверьте использование и версию.

Роль Vagrant pdfhandler
Проблемы Открытые задачи · Сообщить об ошибке

The PdfHandler extension shows uploaded PDF files in a multipage preview layout.

Together with the Proofread Page extension, PDF files can be displayed side-by-side with text. This allows users to transcribe books and other documents.[1]

  • A user can display PDF files as an image, showing a single page at a time, like so: [[File:myPdfFile.pdf|page=1|600px]]. The page and size parameters are optional; the default page is page #1. Instead of a size-parameter, you can also use the thumb-parameter, with or without captions: [[File:myPdfFile.pdf|page=1|thumb|My PDF]].[2]
  • Because PdfHandler extends ImageHandler, you can use all the arguments that you would for an Image -- for example: thumb, right/left, caption, border, link, etc.
If you would like to present a 2-page pdf, for example, do the following: [[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

Pre-requisites

This extension requires the following packages to be installed first:

Package Description Link
"ghostscript" for gs Renders the page images www.ghostscript.com
"imagemagick" for convert Does dynamic resizing and thumbnailing of images www.imagemagick.org
"xpdf-utils" for pdfinfo Extracts metadata from PDF files. If you see "0 × 0 pixel" on the file description of a PDF, you lack this package. 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:

which gs convert pdfinfo pdftotext

Installation

  • Make sure that the required software is installed before you continue!
  • Скачайте и распакуйте файл(ы) в папку с названием PdfHandler в вашей папке extensions/.
  • Добавьте следующие строки в конец файла LocalSettings.php:
    wfLoadExtension( 'PdfHandler' );
    
  • Configure as required. (see also the examples provided)
  • Yes Готово – Перейдите на страницу Special:Version на своей вики, чтобы удостовериться в том, что расширение успешно установлено.

Для использующих MediaWiki 1.24 или более ранние версии:

В приведенных выше инструкциях описывается новый способ установки этого расширения с использованием wfLoadExtension(). Если вам нужно установить это расширение на более ранние версии (MediaWiki 1.24 и более ранние), вместо wfLoadExtension( 'PdfHandler' );, вам необходимо использовать:

require_once "$IP/extensions/PdfHandler/PdfHandler.php";

Configuration

You can (or, depending on the operating system of the server, will have to) set some variables in the "LocalSettings.php" file:

$wgPdfProcessor (default = "gs")
path to your ghostscript implementation
$wgPdfPostProcessor (default = "convert")
path to your imagemagick convert
$wgPdfInfo (default = "pdfinfo")
path to your pdfinfo
$wgPdftoText (default = "pdftotext")
path to your pdftotext
$wgPdfOutputExtension (default = "jpg")
preferred output format[3]
$wgPdfHandlerDpi (default = "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 (default = "95" / since MW 1.24+ )
Quality level, which the post processor should use.
$wgPdfCreateThumbnailsInJobQueue (default = "false")
Puts creating pages' thumbnails into a job queue, so they do not have to be created while browsing a file page, but during normal wikibrowsing. Be advised that setting this to "true" may significantly increase CPU load of your webserver on a high-traffic website. Job queue was designed to perform quick tasks on page views, and creating thumbnails can be included into that queue, according to this definition. Nevertheless, as quick as it is, it also requires certain CPU load to convert PDF pages to another format. The solution to that would be either setting $wgJobRunRate to rather small value (ie. 0.05) or disabling job queue on the high-traffic wiki and setting up another server to do just job queue (like Wikimedia did).
Variables below are not specific to this extension

Ubuntu

Заметка Заметка: This is identical to the default settings for this extension.

$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';

Troubleshooting

General issues
  • If PDF files do not display after upload, make sure that MediaWiki can execute the pdfinfo command and that configuration parameter $wgPdfInfo is 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 you may need to use the maintenance scripts "refreshImageMetadata.php -f" and "rebuildImages.php"
  • If PDF files are rendered randomly check if the "C.UTF-8" locale is available on your server by running locale -a and make sure that configuration parameter $wgShellLocale is set to this locale.
  • If the main preview image of PDF files is broken (image not found by browser), but all other images are working, also check your configuration parameter $wgShellLocale . If it is set to a locale that does not use the point. as a decimal separator (e.g. "de-de", which use a comma), the srcset for the img tags will be broken. MediaWiki strongly recommends to use the "C.UTF-8" locale.
Special solutions for Windows Server running MW 1.31.x

If you are running this extension on a windows machine with PHP 7, please see Tommeyheyser's workaround here

If you are having pdfoinfo and/or pdftotext hanging issue that prevents a big PDF upload, please check the modified extension by SeongMoon

Notes

  1. This allows users to transcribe books and other documents as is commonly done with DjVu files (particularly in Wikisource).
  2. This single page option was introduced quite long ago (r25575)
  3. 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.

См. также