У меня есть строка, содержащая изображения типа «Моя строка [img src = image_from_drawable /] blablabla». Я могу разобрать эту строку как Spannable, чтобы показать, что рисует на моем TextView, со следующим кодом:Добавить изображение в iText pdf в Android
static public Spannable formatAbility(String _ability) {
Spannable spannable = spannableFactory.newSpannable(_ability);
addImages(mContext, spannable);
return spannable;
}
private static boolean addImages(Context context, Spannable spannable) {
Pattern refImg = Pattern
.compile("\\Q[img src=\\E([a-zA-Z0-9_]+?)\\Q/]\\E");
boolean hasChanges = false;
Matcher matcher = refImg.matcher(spannable);
while (matcher.find()) {
boolean set = true;
for (ImageSpan span : spannable.getSpans(matcher.start(),
matcher.end(), ImageSpan.class)) {
if (spannable.getSpanStart(span) >= matcher.start()
&& spannable.getSpanEnd(span) <= matcher.end()) {
spannable.removeSpan(span);
} else {
set = false;
break;
}
}
String resname = spannable
.subSequence(matcher.start(1), matcher.end(1)).toString()
.trim();
int id = context.getResources().getIdentifier(resname, "drawable",
context.getPackageName());
if (set) {
hasChanges = true;
spannable.setSpan(new ImageSpan(context, id,
ImageSpan.ALIGN_BASELINE), matcher.start(), matcher
.end(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
return hasChanges;
}
Я использую библиотеку IText/iTextG для моего Android проекта для того, чтобы создать файл PDF.
Мой вопрос:: Есть ли простой способ сделать это в iText? Напишите фразу или абзац, содержащие изображения? Я полагаю, что куски помогут, но я не нахожу пути, примеры или что-то еще.
Спасибо за ваше время.
Спасибо. Ответы были кусками. Этот пример очень помог! –