. Я работаю с iTextSharp и .NET 3.5 SP1 (в C#, как вы можете догадаться) и модифицировать некоторые существующие PDF-файлы, используя класс PdfStamper
. Теперь у меня есть две проблемы: (? Постскриптум)Проблема с системой координат и смещением. Текст в разных PDF-файлах с использованием iTextSharp.
Трансформация системы координат
Как я это вижу, iTextSharp использует точки в качестве единицы измерения, но я хотел бы, чтобы преобразовать эти координаты миллиметр. Теперь, как наилучшим образом достичь этого?
Взглянув в документации показал следующий подход:
PdfContentByte cb = new PdfContentByte();
System.Drawing.Drawing2D.Matrix scale = new System.Drawing.Drawing2D.Matrix(
0.352777778, 0, 0.352777778, 0, 0, 0); // 1 point = 0.352777778 mm
cb.Transform(scale);
Я надеюсь, что я получил матрицу преобразования права. Но проблема в том, что нет System.Drawing.Drawing2D
Сборка! Неужели эта сборка упала или что с ней случилось? Что я могу сделать, чтобы преобразовать координаты iTextSharp в миллиметр. Я здесь не так?
Текста в формате PDF получает смещен в другом формате PDF, используя те же координаты
я заметил, что при изменении два различных PDF файлов с же содержанием, что одни и те же координаты получили смещены и текст не размещается на одинаковых позициях. Что вызывает это и как я могу его предотвратить?
Это первая PDF:
alt text http://i41.tinypic.com/20u5tfc.gif
Это второй PDF, созданный с использованием те же самые координаты в iTextSharp:
alt text http://i44.tinypic.com/2qjzoex.gif
Любая помощь приветствуется.
Как использовать этот класс? Я уже вставил «using System.Drawing»; , но он все еще не распознает System.Drawing.Drawing2D.Matrix. Я не уверен, что означает «в System.Drawing.dll». Должен ли я включать это каким-то другим способом? –
Вы должны ссылаться на System.Drawing.Dll. В своем проекте найдите папку «Ссылки».Щелкните правой кнопкой мыши, добавьте ссылку, затем через пять минут найдите файл System.Drawing.Dll на первой вкладке. Теперь верните мне 2 балла! – Will
Как только вы ссылаетесь на него, вы можете использовать его так же, как в примере. Они делают преобразования матриц, что не совсем то, что нужно изучать или понимать. Боюсь, вам придется немного почитать, если вы хотите сделать больше, чем демонстрирует пример кода. – Will