kopi
Ada beberapa pendekatan untuk solusi, tetapi ini mungkin salah satu yang paling sederhana (tergantung kebutuhan Anda):
Pilih fitur menggunakan QgsVectorLayer
Dengan asumsi referensi ke layer vektor Anda (vlayer) dan id fitur (fid). Lihat juga
vlayer.select(fid)
Zoom ke fitur yang dipilih menggunakan QgsInterface
qgis.utils.iface.actionZoomToSelected().trigger()
Batalkan pilihan fitur menggunakan QgsVectorLayer
vlayer.deselect(fid)
Simpan kanvas sebagai gambar menggunakan QgsMapCanvas
qgis.utils.iface.mapCanvas().saveAsImage('/Users/me/Desktop/feature.png')
Pendekatan ini menghasilkan foto sebesar mungkin, jika jendela Anda diperluas menjadi penuh, karena menyimpan kanvas berada pada resolusi layar. Namun, itu tidak memastikan gambar Anda akan berada pada skala zoom peta yang sama, hanya ukuran piksel yang relatif sama. Ada opsi lain seperti QgisInterface::actionPanToSelected()jika Anda harus menjaga skala zoom agar konsisten.