仅Magick ++的第一PDF页面(BLOB)

时间:2018-10-09 13:41:58

标签: c++ pdf split jpeg

当我使用Magick ++ Blob时,如何仅获取第一个PDF页面? 我知道,如果我将文件名放在后面的运算符“ [0]”后面,则可以选择第一页。但是在这种情况下,我没有“本地”文件...因此我需要从BLOB中提取第一页...

我非常希望有人可以帮助我!

这是我的示例源代码:

static inline std::vector<char> convertPDF2JPG(const std::vector<char>& originalPDF, const bool compress) {
                Magick::Blob magickOriginalPDF(originalPDF.data(), originalPDF.size());

            Magick::Image oMagick;
            oMagick.read( magickOriginalPDF, "PDF" );

            if( compress ) {
                oMagick.compressType(Magick::JPEGCompression);
                oMagick.quality(70);
                oMagick.strip();
                oMagick.interlaceType(Magick::NoInterlace);
            }

            Magick::Blob output_blob;
            std::string output;
            oMagick.write(&output_blob, "JPG");
            output.assign((char*) output_blob.data(), output_blob.length());

            return std::vector<char>(output.begin(), output.end());
        }

0 个答案:

没有答案