Как указаны размеры PDF?

Я создаю PDF из HTML, используя библиотеку, и все параметры размера, которые я даю, находятся в пикселях. Это кажется странным. Я просто искал интернет по размеру A4 в пикселях, и могу ли я просто использовать эти значения везде?

Так ли это должно быть сделано? Будет ли сгенерированный PDF правильно выглядеть?

В противном случае мне нужно каким-то образом вычислить размер пикселя, используя информацию с экрана?

Затем, как работает PDF, если они могут быть отправлены другим лицам и по-прежнему выглядят сравнительно одинаково?

Ответы

Ответ 1

PDF внутренне использует ту же графическую модель, что и PostScript. PDF получен из PostScript. В принципе,...

  • ... он использует те же самые операторы, которые доступны в PostScript, но переименовывает их из длинных и полностью читаемых в короткие 1-, 2- или 3-буквенные аббревиатуры;
  • ... однако он разбивает все функции, которые делают PostScript полномасштабным языком программирования;
  • ... и добавляет несколько новых графических возможностей, таких как транспаранты и прямое встраивание шрифтов TrueType.

PDF также использует тот же базовый блок измерения, что и PostScript: 72 точки == 1 дюйм. Вы также можете использовать доли очков. Это независимый от устройства способ указания размеров.

Если вы когда-либо используете пиксели, вы можете сделать это. Если вы это сделаете, то абсолютный размер графического объекта на дисплее или печатной бумаги зависит от текущего разрешения дисплея или принтера. Квадрат 72px x 72px равен 1 дюйм x 1 дюйм при разрешении 72dpi, но он равен 0.1inch x 0.1inch при разрешении 720 точек на дюйм. Поэтому использование пикселей является зависимым от устройства способом указания размеров.

Размеры A4 'ширина x высота = 595 x 842 pt'.

Ответ 2

PDF по своей сути является печатным носителем, а его внутренние координаты работают в терминах "точек" (72pts на дюйм). Программное обеспечение для рендеринга PDF (Acrobat, FoxIt, Ghostscript и т.д.) Будет запрашивать устройство вывода для его рейтинга DPI и внутренне преобразовывать все координаты point-basec в размеры пикселей, специфичные для устройства, когда наступает время для отображения PDF для отображения/печать.

Вы можете указать размеры в пикселях при построении PDF, конечно. Но помните, что размеры пикселей различаются. Изображение размером 300 × 300 пикселей будет иметь размер 1 "x 1" на принтере 300 dpi, но 3 "на 3" на мониторе с разрешением 100 dpi.