จะสร้างฉลากที่รวมขนาดตัวอักษรหรือประเภทต่าง ๆ ได้อย่างไร


16

ฉันต้องการวางจำนวนจุดในขนาดด้านหน้าที่แตกต่างและอยู่กึ่งกลางภายใต้ชื่อ:

ป้อนคำอธิบายรูปภาพที่นี่

เป็นไปได้ไหม

(นั่นคือการติดฉลากที่เกิดขึ้นจริงของฉัน: label || '\n' || elevation)

คำตอบ:


12

ไม่สนใจขนาดตัวอักษรในนาทีนี้คุณสามารถบรรลุตัวเลือกแรกของคุณโดยการจัดกึ่งกลางฉลากเหนือจุดนั้นใน QGIS 1.9 คุณมีตัวเลือกเพื่อจัดข้อความให้อยู่กึ่งกลางใต้ส่วนหลายบรรทัด หากคุณมีอักขระขึ้นบรรทัดใหม่ในนิพจน์ของคุณคุณสามารถปล่อยให้ช่อง 'ตัดตามอักขระ' ว่างเปล่า (หรือฉันใส่เครื่องหมายสแลชในนิพจน์ของฉันแทน '\ n' และตั้งให้เป็นอักขระแบบตัด - ตัวอักขระตัด ไม่แสดง) การทำเช่นนี้จะทำให้ข้อความของคุณอยู่กึ่งกลางเหมือนกับตัวเลือกที่สอง สำหรับบางอย่างเช่นตัวเลือกแรกของคุณคุณสามารถตั้งค่าตัวเลือกความสูงของบรรทัดเป็น 2 หรือ 3

อย่างไรก็ตามการติดฉลาก QGIS ขั้นสูงมีเพียงตัวเลือกเดียวสำหรับขนาดตัวอักษร ดังนั้นเพื่อให้ได้ขนาดตัวอักษรที่แตกต่างกันฉันคิดว่าคุณจะต้องเพิ่มเลเยอร์ของคุณเป็นครั้งที่สองและตั้งค่าแบบอักษรยกระดับและตำแหน่งในนั้น


1
มีแผนปัจจุบันหรืออนาคตที่จะใช้งานแท็กแบบอักษรที่ใช้ HTML สำหรับป้ายกำกับ QGIS เหมือนกับแท็กการจัดรูปแบบข้อความ ArcGISหรือไม่
RyanKDalton-OffTheGridMaps

1
@RyanDalton hub.qgis.org/issues/4080เป็นความคิดที่ดี แต่อาจทำให้การแสดงฉลากช้าลงและอาจเป็นเรื่องยากที่จะกำหนดขนาดของฉลากที่เหมาะสม (เนื่องจากใช้QFontMetricsFแล้วตอนนี้) แต่ต้องลอง ที่จะใช้มันก่อนที่จะรู้แน่นอน ไม่มีแผนสำหรับ 2.0 แต่อาจทำได้สำหรับ 2.1
dakcarto

1
มีข่าวเกี่ยวกับเรื่องนี้ไหม?
แผนที่

เป็นไปได้ไหมที่จะทำเช่นนี้ใน QGIS 3.6?
Denilson

5

คุณสามารถบรรลุสิ่งที่คุณต้องการโดยใช้การติดฉลากตามกฎ แต่คุณต้องแยกเลเบลที่อยู่ในหนึ่งฟิลด์ออกเป็นสองฟิลด์ ตัวเลือกการติดฉลากตามกฎช่วยให้คุณสามารถเพิ่มป้ายกำกับจากเขตข้อมูลที่แตกต่างกันและปรับแต่งตามที่คุณต้องการโดยการเปลี่ยนชื่อตัวอักษรสีขนาดและใช้การชดเชยเพื่อวางพวกเขาเหนือกันและกัน

ดังที่คุณเห็นในตัวอย่างด้านล่างฉันใส่ป้ายกำกับภาษาญี่ปุ่นและป้ายกำกับภาษาอังกฤษลงในสองช่องแล้วควบคุมลักษณะที่ปรากฏของป้ายกำกับแต่ละรายการตามที่ฉันต้องการ:

ป้อนคำอธิบายรูปภาพที่นี่

เพื่อทำสิ่งนี้:

  • ไปที่ Layer properties -> Labels
  • เลือก Rule-Based Labeling

ป้อนคำอธิบายรูปภาพที่นี่

  • กำหนดฟิลด์ที่คุณต้องการใช้ในการติดฉลากโดยแยกแต่ละฟิลด์ ในตัวอย่างนี้ฉันใช้ Name_JP และ Name_EN
  • ใช้สไตล์สำหรับแต่ละคนแยกกันและปรับแต่งตามที่คุณต้องการ
  • สิ่งสำคัญที่สุดคือการใช้Offsetภายใต้Placementสำหรับหนึ่งในป้ายกำกับเพื่อให้สามารถอยู่เหนือซึ่งกันและกัน สำหรับฟิลด์ป้ายกำกับแรกฉันใช้การตั้งค่าตำแหน่งต่อไปนี้:

ป้อนคำอธิบายรูปภาพที่นี่

สำหรับฟิลด์ป้ายกำกับที่สองฉันใช้การตั้งค่าต่อไปนี้:

ป้อนคำอธิบายรูปภาพที่นี่

ทดสอบกับ QGIS 3.0.1 แต่ยังสามารถนำไปใช้ใน QGIS 2.18 ได้เนื่องจากตัวเลือกการติดฉลากแบบอิงกฎจะพร้อมใช้งาน


2

น่าเสียดายที่มันยังเป็นไปไม่ได้ สำหรับการตรวจสอบการอภิปรายที่เกี่ยวข้องล่าสุดhttp://osgeo-org.1560.x6.nabble.com/HTML-tags-in-label-expresion-on-QGIS-2-0-1-td5084946.html

นอกจากนี้ยังมีการร้องขอคุณสมบัติที่มีอยู่


1

ฉันใช้เลเยอร์เดียวกันซ้ำกันและติดป้ายทั้งตำแหน่งด้านบนและด้านล่างตามลำดับหลังจากทำเครื่องหมายที่ 'แสดงป้ายกำกับและคุณลักษณะทั้งหมดสำหรับเลเยอร์ทั้งหมด' ตามที่แนบมาและใช้งานได้!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.