1

私は C++ ライブラリ PoDoFo ( http://podofo.sourceforge.net/ ) を使用しています。達成しようとしているのは、PDF ページを新しい空白の PDF ドキュメントに埋め込むことです。

私が使用しているコンストラクターのドキュメントは次のとおりです

これは私のコードが現在どのように見えるかです:

PoDoFo::PdfMemDocument existingDocument(filename);

PoDoFo::PdfStreamedDocument *newDocument = new PoDoFo::PdfStreamedDocument("new_document.pdf");
PoDoFo::PdfPage *newPage = newDocument->CreatePage(PoDoFo::PdfRect(0.0,0.0,300.0,300.0));
PoDoFo::PdfXObject *XObjectFromPage;

XObjectFromPage = new PoDoFo::PdfXObject(existingDocument, 1, newDocument);

PoDoFo::PdfPainter *painter = new PoDoFo::PdfPainter();
painter->SetPage(newPage);
painter->DrawXObject (50, 50, XObjectFromPage,1);
painter->FinishPage();
newDocument->Close();

既存の PDF ドキュメントから PdfXObject を構築すると、PdfError がスローされます。おそらく、C++ を初めて使用するか、PoDoFo にバグがある可能性があるため、間違いを犯した可能性があります。

スローされるエラーには、次のメッセージがあります。

PoDoFo encounter an error. Error: 48 ePdfError_ChangeOnImmutable
    Error Description: Changing values on immutable objects is not allowed.
    Callstack:

既存の PDF ページから PdfXObject を構築し、それを新しい PDF ドキュメントに埋め込む正しい方法は何ですか?

4

1 に答える 1