Как сохранить PDF с PDFIUM C ++ - PullRequest
0 голосов
/ 06 апреля 2020

Есть ли пример, показывающий, как использовать функцию FPDF_SaveAsCopy() для сохранения PDF-документа? Я нигде не могу найти примеров!

1 Ответ

0 голосов
/ 30 апреля 2020

Я не знаком с С ++. Но я могу привести вам C# пример. Так что вы можете получить идею и преобразовать ее в c ++.

string test_doc = "myTest.pdf";
FPDF_DOCUMENT doc = FPDF_LoadDocument(test_doc, NULL);
var stream = new FileStream(filename, FileMode.Create);
FPDF_SaveAsCopy(doc, stream, 0, 0);

        public static bool FPDF_SaveAsCopy(FPDF_DOCUMENT document, Stream stream, SaveFlags flags, int version = 0)
        {
            byte[] buffer = null;
            FPDF_FILEWRITE fileWrite = new FPDF_FILEWRITE((ignore, data, size) =>
            {
                if (buffer == null || buffer.Length < size)
                    buffer = new byte[size];
                Marshal.Copy(data, buffer, 0, size);
                stream.Write(buffer, 0, size);
                return true;
            });

            if (version >= 10)
                return FPDF_SaveWithVersion(document, fileWrite, flags, version);
            else
                return FPDF_SaveAsCopy(document, fileWrite, flags);
        }

Надеюсь, это поможет вам в любом случае.

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