Классы PDFKit, такие как PDFDocument
и PDFPage
, не позволяют добавлять текст. Если вам нужно создать PDF с текстом, используйте структуру данных CGContext
в платформе Quartz для создания контекста PDF для создания файла PDF и используйте Core Text для рисования текста в контексте PDF.
Чтобы создать контекст PDF, создайте объект CGContext
. Вы должны предоставить URL для файла PDF. Второй аргумент - это прямоугольник, который определяет размер страницы. Если вам нужна стандартная страница размером 8,5 на 11 дюймов, вы можете передать значение NULL. Третий и последний аргумент - необязательный словарь вспомогательной информации. Вы можете передать NULL для этой опции.
Вызовите функцию CGContext
beginPDFPage
, чтобы создать страницу PDF, которую вы можете рисовать. Нарисуйте свое изображение. Для небольших объемов текста вызовите функцию Core Text CTLineCreateWithAttributedString
, чтобы создать строку для текста. Вызовите функцию Core Text CTLineDraw
, чтобы нарисовать текст в контексте PDF. Если у вас есть большие объемы текста для рисования, вам необходимо создать базовый фрейм-установщик основного текста и использовать его для создания и рисования рамок текста.
Вызовите функцию CGContext
endPDFPage
, чтобы закончить рисование страницы. Повторите вызовы к beginPDFPage
и endPDFPage
, чтобы нарисовать дополнительные страницы. Когда вы закончите, вызовите функцию CGContext
closePDF
, чтобы закрыть контекст PDF и сохранить файл PDF.