Как добавить оверлейный текст с аннотациями ссылок в существующий PDF?
Я хотел бы добавить ссылку в мой оверлейный текст. Я прочитал это, используяAnchor
будет работать только для документов, созданных с нуля, но не для существующих PDF-файлов. Мой код добавляет текст наложения на каждую страницу. Моя цель - сделать часть этого текста кликабельной. Я не знаю, как сделать аннотацию ссылки, которая является частью фразы.
Вот мой код:
int n = reader.getNumberOfPages();
// step 4: we add content
PdfImportedPage page;
PdfCopy.PageStamp stamp;
for (int j = 0; j < n; )
{
++j;
page = writer.getImportedPage(reader, j);
if (i == 1) {
stamp = writer.createPageStamp(page);
Rectangle mediabox = reader.getPageSize(j);
Rectangle crop = new Rectangle(mediabox);
writer.setCropBoxSize(crop);
// add overlay text
Paragraph p = new Paragraph();
p.setAlignment(Element.ALIGN_CENTER);
FONT_URL_OVERLAY.setColor(0, 191, 255);
// get current user
EPerson loggedin = context.getCurrentUser();
String eperson = null;
if (loggedin != null)
{
eperson = loggedin.getFullName();
}
else eperson = "Anonymous";
Phrase downloaded = new Phrase();
Chunk site = new Chunk("My Website",FONT_URL_OVERLAY);
site.setAction(new PdfAction("http://www.mywebsite.com"));
downloaded.add(new Chunk("Downloaded by [" + eperson + "] from ", FONT_OVERLAY));
downloaded.add(site);
downloaded.add(new Chunk(" on ", FONT_OVERLAY));
downloaded.add(new Chunk(new SimpleDateFormat("MMMM d, yyyy").format(new Date()), FONT_OVERLAY));
downloaded.add(new Chunk(" at ", FONT_OVERLAY));
downloaded.add(new Chunk(new SimpleDateFormat("h:mm a z").format(new Date()), FONT_OVERLAY));
p.add(downloaded);
ColumnText.showTextAligned(stamp.getOverContent(), Element.ALIGN_CENTER, p,
crop.getLeft(10), crop.getHeight() / 2 + crop.getBottom(), 90);
stamp.alterContents();
}
writer.addPage(page);
}
Так что мой оверлей выглядел бы так:
Загружено пользователем [Anonymous] изМой веб-сайт 17 февраля 2015 года в 1:20 CST
Как я могу конвертироватьМой веб-сайт к аннотации ссылки? Поиск здесь в SO, я нашел этосообщение, но я не знаю, как применить добавление аннотации ссылки к части моего наложенного текста.
Заранее спасибо.
РЕДАКТИРОВАТЬ: Как добавить повернутый текст наложения с аннотациями ссылки в существующий PDF?
БлагодаряБруно Лоуги за то, что старался изо всех сил ответить на мой вопрос. Хотя я изначально спрашивал, как добавить аннотации ссылок в оверлейном тексте к существующим PDF-файлам, он также учел мои вопросы в разделе комментариев своего ответа о правильной настройке координат, если оверлейный текст был повернут.