답변:
현재 버전의 QGIS에서는 레이어 목록에서 하나 이상의 레이어를 선택한 경우 레이어 상단 드롭 다운 메뉴에서 스타일 복사와 스타일 붙여 넣기를 사용할 수 있습니다.
일부 이전 버전의 경우 : 레이어 목록에서 여러 레이어를 선택하고 마우스 오른쪽 버튼을 클릭 한 다음 상황에 맞는 메뉴에서 스타일 붙여 넣기를 사용할 수 있습니다.
다른 이전 버전의 경우 :
MultiQML 플러그인을 사용하면 하나의 QGIS 레이어 스타일을 여러 레이어에 한 번에 적용 할 수 있습니다. 나는 그것이 당신이 현재 찾고있는 것에 가깝다고 생각합니다.
프로젝트를 저장하고 QGIS를 닫고 프로젝트의 .qgs 파일에서 스타일 정의를 찾은 다음 모든 레이어에 붙여 넣을 수 있습니다.
그룹 이상의 모든 레이어에 스타일을 적용하려는 경우 유용한 Python 스크립트를 작성했습니다. 각 레이어 유형에 적용 할 속성이있는 저장된 .qml 파일 만 있으면됩니다.
from qgis.core import *
import os
#copy line 9-21 and change file names and group names if you have more groups
QML_file = ('yourqmlfile.qml')#insert path to qml file
#add other qml files if you want to change style for more groups
def applystyle_group(name):
root = QgsProject.instance().layerTreeRoot()
point = root.findGroup(name) #Find Group
for child in point.children():
if isinstance(child, QgsLayerTreeLayer):
if child.layer().type()==0:
child.layer().loadNamedStyle(QML_file)#change the file name accordingly
#you can add styles for other types of layers in the same group (line, point and polygon)
try: #If group is not present this will keep script running if you want to add more
applystyle_group("*")#insert name of QGIS group
except Exception:
pass