summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2021-09-01 15:07:19 +0000
committerMatthias Clasen <mclasen@redhat.com>2021-09-01 15:07:19 +0000
commit6b7d85480653f83c5f5605bf99582d04d721fbb5 (patch)
treee8371e41e500a45949ce4c78850b49bd4e2cc407
parentc1009a25f561f94bb71f78fe9353ed6c4238e3a7 (diff)
parenta6ffe09f3dacab145abdf4da8025b6040fb69bb0 (diff)
downloadpango-6b7d85480653f83c5f5605bf99582d04d721fbb5.tar.gz
Merge branch 'matthiasc/for-main' into 'main'
Add docs for new attributes See merge request GNOME/pango!467
-rw-r--r--docs/baseline-shift-dark.pngbin0 -> 14806 bytes
-rw-r--r--docs/baseline-shift-light.pngbin0 -> 10055 bytes
-rw-r--r--docs/baseline-shift.svg740
-rw-r--r--docs/meson.build2
-rw-r--r--docs/pango.toml.in2
-rw-r--r--docs/pango_markup.md10
-rw-r--r--pango/pango-attributes.c27
7 files changed, 781 insertions, 0 deletions
diff --git a/docs/baseline-shift-dark.png b/docs/baseline-shift-dark.png
new file mode 100644
index 00000000..72039c46
--- /dev/null
+++ b/docs/baseline-shift-dark.png
Binary files differ
diff --git a/docs/baseline-shift-light.png b/docs/baseline-shift-light.png
new file mode 100644
index 00000000..5bd08493
--- /dev/null
+++ b/docs/baseline-shift-light.png
Binary files differ
diff --git a/docs/baseline-shift.svg b/docs/baseline-shift.svg
new file mode 100644
index 00000000..3685f0fa
--- /dev/null
+++ b/docs/baseline-shift.svg
@@ -0,0 +1,740 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="180.01096"
+ height="144.02473"
+ viewBox="0 0 47.627897 38.106544"
+ version="1.1"
+ id="svg5"
+ inkscape:version="1.1 (c68e22c387, 2021-05-23)"
+ sodipodi:docname="baseline-shift.svg"
+ inkscape:export-filename="/var/home/mclasen/caret-metrics-light.png"
+ inkscape:export-xdpi="225.31"
+ inkscape:export-ydpi="225.31"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <sodipodi:namedview
+ id="namedview7"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ inkscape:pagecheckerboard="0"
+ inkscape:document-units="mm"
+ showgrid="false"
+ inkscape:zoom="3.9105941"
+ inkscape:cx="101.39124"
+ inkscape:cy="96.149074"
+ inkscape:window-width="1920"
+ inkscape:window-height="1011"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="layer1"
+ inkscape:object-paths="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:snap-grids="false"
+ inkscape:snap-to-guides="false"
+ fit-margin-top="20"
+ fit-margin-left="20"
+ fit-margin-right="20"
+ fit-margin-bottom="20"
+ units="px" />
+ <defs
+ id="defs2">
+ <marker
+ style="overflow:visible"
+ id="marker24390"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Mend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.4,0,0,-0.4,-4,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path21033" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="TriangleOutM"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="TriangleOutM"
+ inkscape:isstock="true">
+ <path
+ transform="scale(0.4)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 5.77,0 -2.88,5 V -5 Z"
+ id="path21169" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker21412"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mend"
+ inkscape:isstock="true">
+ <path
+ transform="scale(-0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path21410" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker21402"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path21400" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker21392"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mend"
+ inkscape:isstock="true">
+ <path
+ transform="scale(-0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path21390" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker21382"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mend"
+ inkscape:isstock="true">
+ <path
+ transform="scale(-0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path21380" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow1Send"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path21039" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Mend"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mend"
+ inkscape:isstock="true">
+ <path
+ transform="scale(-0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path21051" />
+ </marker>
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect21022"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect1403"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect1399"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect1395"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect1391"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect1387"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect30886"
+ is_visible="true"
+ lpeversion="1" />
+ <marker
+ style="overflow:visible"
+ id="Arrow1Mend"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Mend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.4,0,0,-0.4,-4,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path2044" />
+ </marker>
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect4021"
+ is_visible="true"
+ lpeversion="1" />
+ <marker
+ style="overflow:visible"
+ id="marker2401"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.3,0,0,0.3,-0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path2065" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker2296"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mstart"
+ inkscape:isstock="true">
+ <path
+ transform="scale(0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path2059" />
+ </marker>
+ <rect
+ x="139.09132"
+ y="517.55841"
+ width="202.35896"
+ height="141.97411"
+ id="rect107047" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect103696"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect103692"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect103484"
+ is_visible="true"
+ lpeversion="1" />
+ <rect
+ x="150.41676"
+ y="496.0325"
+ width="172.54581"
+ height="27.762665"
+ id="rect90731" />
+ <rect
+ x="204.81763"
+ y="459.16251"
+ width="163.89055"
+ height="21.140196"
+ id="rect77941" />
+ <rect
+ x="271.01688"
+ y="341.36365"
+ width="148.94479"
+ height="44.471401"
+ id="rect60708" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect57120"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect56375"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect55858"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect55696"
+ is_visible="true"
+ lpeversion="1" />
+ <marker
+ style="overflow:visible"
+ id="marker55148"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.3,0,0,0.3,-0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path55146" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker55138"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.2,0,0,0.2,1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path55136" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="TriangleInM"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="TriangleInM"
+ inkscape:isstock="true">
+ <path
+ transform="scale(-0.4)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 5.77,0 -2.88,5 V -5 Z"
+ id="path53260" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker54831"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.3,0,0,0.3,-0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path54829" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Sstart"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.3,0,0,0.3,-0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53154" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker54813"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mstart"
+ inkscape:isstock="true">
+ <path
+ transform="scale(0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path54811" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker54803"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.2,0,0,0.2,1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path54801" />
+ </marker>
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect54776"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect54369"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect54152"
+ is_visible="true"
+ lpeversion="1" />
+ <marker
+ style="overflow:visible"
+ id="Arrow2Send"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.3,0,0,-0.3,0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53157" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow1Sstart"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.2,0,0,0.2,1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path53136" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker53402"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mstart"
+ inkscape:isstock="true">
+ <path
+ transform="scale(0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53400" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Mstart"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Mstart"
+ inkscape:isstock="true">
+ <path
+ transform="scale(0.6)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53148" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow1Mstart"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Mstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.4,0,0,0.4,4,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path53130" />
+ </marker>
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect53122"
+ is_visible="true"
+ lpeversion="1" />
+ <inkscape:path-effect
+ effect="spiro"
+ id="path-effect20193"
+ is_visible="true"
+ lpeversion="1" />
+ <rect
+ x="123.0892"
+ y="373.96039"
+ width="320.96652"
+ height="243.09319"
+ id="rect2256" />
+ <marker
+ style="overflow:visible"
+ id="Arrow1Sstart-0"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.2,0,0,0.2,1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path53136-9" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Send-1"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.3,0,0,-0.3,0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53157-7" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker55148-9"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.3,0,0,0.3,-0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path55146-7" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Send-7"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.3,0,0,-0.3,0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53157-6" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker2401-7"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.3,0,0,0.3,-0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path2065-6" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Send-7-5"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.3,0,0,-0.3,0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53157-6-6" />
+ </marker>
+ <rect
+ x="150.41676"
+ y="496.0325"
+ width="172.54581"
+ height="27.762665"
+ id="rect90731-9" />
+ <marker
+ style="overflow:visible"
+ id="marker54803-3"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Sstart"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(0.2,0,0,0.2,1.2,0)"
+ style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path54801-7" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="Arrow2Send-1-4"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow2Send"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.3,0,0,-0.3,0.69,0)"
+ d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+ style="fill:context-stroke;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+ id="path53157-7-5" />
+ </marker>
+ </defs>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-35.213392,-125.60093)">
+ <text
+ xml:space="preserve"
+ style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:22.5778px;line-height:1.25;font-family:'Source Serif 4 Display';-inkscape-font-specification:'Source Serif 4 Display, Italic';font-variant-ligatures:normal;font-variant-position:super;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;white-space:pre;stroke-width:0.264583"
+ x="38.598801"
+ y="153.3134"
+ id="text4660-2"><tspan
+ sodipodi:role="line"
+ id="tspan24369"
+ x="38.598801"
+ y="153.3134">V3</tspan></text>
+ <text
+ xml:space="preserve"
+ transform="scale(0.26458333)"
+ id="text2254"
+ style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:85.3333px;line-height:1.25;font-family:'Source Serif 4 Display';-inkscape-font-specification:'Source Serif 4 Display, Italic';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;white-space:pre;shape-inside:url(#rect2256)" />
+ <text
+ xml:space="preserve"
+ style="font-size:4.23333px;line-height:1.25;font-family:Cantarell;-inkscape-font-specification:'Cantarell, Normal';letter-spacing:0px;word-spacing:0px;white-space:pre;inline-size:24.5413;stroke-width:0.264583"
+ x="86.092941"
+ y="107.69234"
+ id="text14426"
+ transform="translate(-28.538334,44.819313)"><tspan
+ x="86.092941"
+ y="107.69234"
+ id="tspan33547"><tspan
+ style="text-align:center;text-anchor:middle"
+ id="tspan33545">Baseline
+</tspan></tspan><tspan
+ x="86.092941"
+ y="112.984"
+ id="tspan33551"><tspan
+ style="text-align:center;text-anchor:middle"
+ id="tspan33549">shift</tspan></tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:4.23333px;line-height:1.25;font-family:Cantarell;-inkscape-font-specification:'Cantarell, Normal';letter-spacing:0px;word-spacing:0px;stroke-width:0.264583"
+ x="49.235531"
+ y="118.93787"
+ id="text19042"><tspan
+ sodipodi:role="line"
+ id="tspan19040"
+ style="stroke-width:0.264583"
+ x="49.235531"
+ y="118.93787" /></text>
+ <path
+ style="vector-effect:non-scaling-stroke;fill:none;stroke:#000000;stroke-width:0.00070004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;-inkscape-stroke:hairline"
+ d="m 52.928213,149.72038 c 0.960916,-0.36512 2.080231,-0.2873 2.98138,0.20727 0.507629,0.2786 0.939845,0.67633 1.431893,0.98161 0.492152,0.30534 1.039531,0.51482 1.600499,0.65891 0.661475,0.1699 1.345777,0.2507 2.028632,0.23953"
+ id="path30884"
+ sodipodi:nodetypes="csssc"
+ inkscape:original-d="m 52.928213,149.72038 c 0.719616,-0.76028 2.257271,0.96807 2.98138,0.20727 0.724109,-0.76081 0.225896,1.37606 1.431893,0.98161 1.205995,-0.39445 0.627475,1.38743 1.600499,0.65891 0.973026,-0.72851 1.351259,0.31674 2.028632,0.23953"
+ inkscape:path-effect="#path-effect30886" />
+ <rect
+ style="vector-effect:non-scaling-stroke;fill:none;fill-opacity:0.374651;stroke:#000000;stroke-width:0.000703217;stroke-linejoin:round;-inkscape-stroke:hairline"
+ id="rect26849-7"
+ width="11.669242"
+ height="25.364506"
+ x="40.505409"
+ y="133.0513"
+ ry="0" />
+ <rect
+ style="vector-effect:non-scaling-stroke;fill:none;fill-opacity:0.374651;stroke:#000000;stroke-width:0.000699238;stroke-linejoin:round;-inkscape-stroke:hairline"
+ id="rect47446-4"
+ width="11.669"
+ height="4.9391327"
+ x="40.505058"
+ y="153.46092" />
+ <text
+ xml:space="preserve"
+ style="font-size:22.5778px;line-height:1.25;font-family:'Source Serif 4 Display';-inkscape-font-specification:'Source Serif 4 Display, Normal';letter-spacing:0px;word-spacing:0px;stroke-width:0.264583"
+ x="74.198402"
+ y="145.47556"
+ id="text4743"><tspan
+ sodipodi:role="line"
+ id="tspan4741"
+ style="stroke-width:0.264583"
+ x="74.198402"
+ y="145.47556" /></text>
+ <rect
+ style="vector-effect:non-scaling-stroke;fill:none;fill-opacity:0.28;stroke:#000000;stroke-width:0.000700042;stroke-linejoin:round;-inkscape-stroke:hairline"
+ id="rect20307"
+ width="6.9471126"
+ height="16.905811"
+ x="54.158123"
+ y="130.89259"
+ ry="0" />
+ <rect
+ style="vector-effect:non-scaling-stroke;fill:none;fill-opacity:0.28;stroke:#000000;stroke-width:0.000699027;stroke-linejoin:round;-inkscape-stroke:hairline"
+ id="rect20806"
+ width="6.947"
+ height="4.1181569"
+ x="54.158058"
+ y="143.70164" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.18;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker21402)"
+ d="m 52.147677,153.46938 1.858616,-9.23348"
+ id="path21020"
+ inkscape:path-effect="#path-effect21022"
+ inkscape:original-d="m 52.147677,153.46938 c 0.664644,-3.24552 1.194501,-5.98743 1.858616,-9.23348"
+ sodipodi:nodetypes="cc" />
+ <ellipse
+ style="fill:none;fill-opacity:0.28;stroke:#000000;stroke-width:0.18;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
+ id="path24420"
+ cx="52.133064"
+ cy="153.49341"
+ rx="0.1028779"
+ ry="0.10498031" />
+ <ellipse
+ style="fill:none;fill-opacity:0.28;stroke:#000000;stroke-width:0.18;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
+ id="path24420-6"
+ cx="54.107121"
+ cy="143.74577"
+ rx="0.1028779"
+ ry="0.10498031" />
+ </g>
+</svg>
diff --git a/docs/meson.build b/docs/meson.build
index ac2a2257..2471f09e 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -42,6 +42,8 @@ pango_content_files = [
'cursor-positions-dark.png',
'glyphstring-positions-light.png',
'glyphstring-positions-dark.png',
+ 'baseline-shift-light.png',
+ 'baseline-shift-dark.png',
]
doc_conf = configuration_data()
diff --git a/docs/pango.toml.in b/docs/pango.toml.in
index 01173997..b3ca2bc6 100644
--- a/docs/pango.toml.in
+++ b/docs/pango.toml.in
@@ -100,4 +100,6 @@ content_images = [
"cursor-positions-dark.png",
"glyphstring-positions-light.png",
"glyphstring-positions-dark.png",
+ "baseline-shift-light.png",
+ "baseline-shift-dark.png",
]
diff --git a/docs/pango_markup.md b/docs/pango_markup.md
index 287bbc56..c9561fdf 100644
--- a/docs/pango_markup.md
+++ b/docs/pango_markup.md
@@ -152,6 +152,16 @@ rise
negative for subscript, positive for superscript.
Support for specifying rise in points was added in Pango 1.50.
+baseline_shift
+: Vertical displacement. In contrast to rise, baseline_shift attributes are cumulative.
+ The value can be a length in Pango units or in points (e.g. '5pt'), or 'superscript'
+ or 'subscript'. Available since 1.50.
+
+font_scale:
+: Font size change. The possible values are 'superscript' or 'subscript'. This is
+ similar to the font_size values 'smaller' or 'larger', but uses font metrics to
+ find the new size. Available since 1.50.
+
strikethrough
: 'true' or 'false' whether to strike through the text.
diff --git a/pango/pango-attributes.c b/pango/pango-attributes.c
index 65af8f3b..a87c661e 100644
--- a/pango/pango-attributes.c
+++ b/pango/pango-attributes.c
@@ -931,9 +931,19 @@ pango_attr_rise_new (int rise)
*
* Create a new baseline displacement attribute.
*
+ * The effect of this attribute is to shift the baseline of a run,
+ * relative to the run of preceding run.
+ *
+ * <picture>
+ * <source srcset="baseline-shift-dark.png" media="(prefers-color-scheme: dark)">
+ * <img alt="Baseline Shift" src="baseline-shift-light.png">
+ * </picture>
+
* Return value: (transfer full): the newly allocated
* `PangoAttribute`, which should be freed with
* [method@Pango.Attribute.destroy]
+ *
+ * Since: 1.50
*/
PangoAttribute *
pango_attr_baseline_shift_new (int rise)
@@ -948,6 +958,23 @@ pango_attr_baseline_shift_new (int rise)
return pango_attr_int_new (&klass, (int)rise);
}
+/**
+ * pango_attr_font_scale_new:
+ * @scale: a `PangoFontScale` value, which indicates font size change relative
+ * to the size of the previous run.
+ *
+ *
+ * Create a new font scale attribute.
+ *
+ * The effect of this attribute is to change the font size of a run,
+ * relative to the size of preceding run.
+ *
+ * Return value: (transfer full): the newly allocated
+ * `PangoAttribute`, which should be freed with
+ * [method@Pango.Attribute.destroy]
+ *
+ * Since: 1.50
+ */
PangoAttribute *
pango_attr_font_scale_new (PangoFontScale scale)
{