次のようにして、レンダー ウィンドウをビットマップとして保存できます。
vtkWindowToImageFilter *winToImg = vtkWindowToImageFilter::New();
winToImg->SetInput(mRenderWindow);
vtkBMPWriter *writer = vtkBMPWriter::New();
writer->SetInput(winToImg->GetOutput());
writer->SetFileName(aFilename.c_str());
writer->Write();
そして、QPrinter を使用して準備完了のビットマップ イメージを印刷できます。
QPrinter printer;
QPrintDialog *dialog = new QPrintDialog(&printer);
dialog->setWindowTitle(tr("Print Document"));
if (dialog->exec() != QDialog::Accepted) {
return;
}
QImage testbild("C:\\test.bmp");
QPainter painter(&printer);
painter.drawImage(QPoint(0, 0), testbild);
painter.end();
しかし、両方を組み合わせて vtkbmpwriter から画像を印刷する方法がわかりません。どうすれば vtkbmpwriter から bmp イメージを抽出し、それをペインタ/プリンタに渡すことができますか?