Получение bytearray из PdfDictionary - PullRequest
0 голосов
/ 21 февраля 2019

Пожалуйста, обратитесь к этой картинке ниже взятой из itext url https://itextpdf.com/en/resources/faq/technical-support/itext-5/how-add-alternative-text-image-tagged-pdf. Я пытаюсь получить байтовый массив изображений в pdf, пересекая все ветви, ища структурный элемент, помеченный как / Figure.Цель состоит в том, чтобы вставить тег (альтернативный текст) в изображение, а также получить массив байтов этого конкретного изображения , к которому я добавляю альтернативный текст.

enter image description here

Вот код

 static void manipulate(PdfDictionary element)
    {
        if (element == null)
            return;

        var t = element.GetBytes();
        if (PdfName.FIGURE.Equals(element.Get(PdfName.S)))
        {
            element.Put(PdfName.ALT, new PdfString("Figure without ALT"));

            var byteaarray = element.GetBytes(); //// Here bytearray is null
        }

        var kids = element.GetAsArray(PdfName.K);

        if (kids == null)
            return;

        for(int i = 0; i < kids.Size; i++)
        {
            manipulate(kids.GetAsDict(i));
        }
    }

Программа успешно добавляет альтернативный текст «Рисунок без ALT» ко всем изображениям.Однако байты этой цифры равны нулю.

Подскажите, пожалуйста, что я здесь не так делаю?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...