Revision: 8393
http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8393&view=rev
Author: mdboom
Date: 2010-06-07 14:23:58 +0000 (Mon, 07 Jun 2010)
Log Message:
-----------
Fix baseline-alignment on multi-line text. (Reported by Olle
Engdeg?\195?\165rd)
Modified Paths:
--------------
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/formatter_ticker_005.svg
trunk/matplotlib/lib/matplotlib/tests/test_text.py
trunk/matplotlib/lib/matplotlib/text.py
Added Paths:
-----------
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.pdf
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.png
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.svg
Modified:
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/formatter_ticker_005.svg
===================================================================
---
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/formatter_ticker_005.svg
2010-06-07 13:04:24 UTC (rev 8392)
+++
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/formatter_ticker_005.svg
2010-06-07 14:23:58 UTC (rev 8393)
@@ -143,7 +143,7 @@
<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000;
stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000"
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="518.400000" y="43.200000"/>
</g></g>
<g id="text6">
-<g style="fill: #000000; opacity: 1.000000"
transform="translate(498.314062,401.706250)scale(0.120000)">
+<g style="fill: #000000; opacity: 1.000000"
transform="translate(498.314063,401.706250)scale(0.120000)">
<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/>
<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
@@ -163,7 +163,7 @@
<path id="c_0bce5afba2dc6b9024b26277c38ad8e8" d="M56.203125
-29.593750l0.000000 4.390625l-41.312500 0.000000q0.593750 9.281250 5.593750
14.140625q5.000000 4.859375 13.937500 4.859375q5.171875 0.000000 10.031250
-1.265625q4.859375 -1.265625 9.656250 -3.812500l0.000000 8.500000q-4.843750
2.046875 -9.921875 3.125000q-5.078125 1.078125 -10.296875 1.078125q-13.093750
0.000000 -20.734375 -7.609375q-7.640625 -7.625000 -7.640625 -20.625000q0.000000
-13.421875 7.250000 -21.296875q7.250000 -7.890625 19.562500 -7.890625q11.031250
0.000000 17.453125 7.109375q6.421875 7.093750 6.421875 19.296875M47.218750
-32.234375q-0.093750 -7.359375 -4.125000 -11.750000q-4.031250 -4.406250
-10.671875 -4.406250q-7.515625 0.000000 -12.031250 4.250000q-4.515625 4.250000
-5.203125 11.968750z"/>
<path id="c_d41d8cd98f00b204e9800998ecf8427e" d=""/>
</defs>
-<g style="fill: #000000; opacity: 1.000000"
transform="translate(262.293750,416.003125)scale(0.120000)">
+<g style="fill: #000000; opacity: 1.000000"
transform="translate(262.121875,416.003125)scale(0.120000)">
<use xlink:href="#c_801fe2e877fad46da27c898b407b3b54"/>
<use xlink:href="#c_7b26b13f539f13a4c64eef23b6952d29" x="59.179688"/>
<use xlink:href="#c_5099edb83619131346ae654950954dea" x="95.263672"/>
@@ -289,7 +289,7 @@
<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000;
stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000"
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="158.400000"/>
</g></g>
<g id="text14">
-<g style="fill: #000000; opacity: 1.000000"
transform="translate(43.375000,162.767188)scale(0.120000)">
+<g style="fill: #000000; opacity: 1.000000"
transform="translate(43.375000,162.767187)scale(0.120000)">
<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/>
<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/>
<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/>
Added:
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.pdf
===================================================================
---
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.pdf
(rev 0)
+++
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.pdf
2010-06-07 14:23:58 UTC (rev 8393)
@@ -0,0 +1,194 @@
+%PDF-1.4
+%\xAC\xDC \xAB\xBA
+1 0 obj
+<< /Type /Catalog /Pages 2 0 R >>
+endobj
+8 0 obj
+<< /XObject 7 0 R /Pattern 5 0 R
+/ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] /ExtGState 4 0 R
+/Shading 6 0 R /Font 3 0 R >>
+endobj
+10 0 obj
+<< /Contents 9 0 R /Type /Page /Resources 8 0 R /Parent 2 0 R
+/MediaBox [ 0 0 576 432 ] >>
+endobj
+9 0 obj
+<< /Filter /FlateDecode /Length 11 0 R >>
+stream
+x\x9Cm\x8F=\xC20\x85w\x9F\xC2#,!\xCE_\xC3Z *\xB1\x92 \xD1VEI\xA7 8>.ڪ
\x91\x9F\xFD\xDEg+\x847PxB_%&\xB4\x85\xE3\xDF\xD5h\xC5J\xFE*ϡ\xE4܃U\x85bC\xA8\x81!/\xCC\xD8\xC4O\xA3\xBD\x9E;\xcd\xe4\x81h\xda1\xdai\xc9\xc1fk\xd7\xe6\xff\xdbc\xba\xccc\xc9\xff\x94\xd8bpw$$\xc...@9#\xbc/,\x92BZ\xA7,\x86+l\xD2=\xE6.v}\xBD\xC5p\xC3CXaF
\xEB
+H\xBD\xD7|c\xA0r\xFD\xCCx\x89]ۧ\xBA\xCF_^]\x9FL
+endstream
+endobj
+11 0 obj
+185
+endobj
+16 0 obj
+<< /Filter /FlateDecode /Length 304 >>
+stream
+x\x9C=\x92;\x92\xC30
C{\x9D\x82Ȍ\xF8\x93\xE4\xF3d'\x95\xF7\xFE\xED>2\xC9V\x80I\x89 (/u\x99\xB2\xA6<
i&
\xFF\xD1\xE1\xE1b;\xE5w؞\xCD\xCC\xC0\xB5D/\xCB)ϡ+\xC4\xDCE\x{1C9937A}\xB2:Ū\xC30\x9D[\x{12870B}\x86M\x93\x9A\xE7*K\xB7\x9Eõ\x89\xE7\x96}\xC474\xA8u\x8DK\xC2
+\xDD\xD5hY
+\xCDpu\xFF;\xBDG\xD9w5<\x9BT\xEA\xD4\x8FQ\xE6\xF9!O\xA2\x87\xE9J\xE2|<(!\{0f\xe4s\...@\x8e\xb3\\xad\xf2^b\xf6\xb7\xb2\xc2aji\xe7\xb3'<\xD8uzO.n\xCDd\xB9T\xF8NQ\xEC\xED\xD03\xBE\xECJ
=\xB6\xE1X\xEE};\x9A\xB1\xE9\x9B8\xEC~\xEFF\xD6ʌ\xAEh!~\xC8W'\xEB%`\xDCS&EdN\xB6Xn\x8B՞\xEE\xA1(\xA6s\x86s
\xEAي\x86R\xE6bW\xAB
;o,/\xD9,Ȕ\xCC2F\xA7M\x9E8x\xC8~\x8D\x9A\xF4y\x95\xE7x\xFDl\xF3s;
+endstream
+endobj
+17 0 obj
+<< /Filter /FlateDecode /Length 245 >>
+stream
+x\x9CEP\xBB\x8DC1\xEB=`\xFD,{\x9EwH\x95ۿ=JFp\x85!Z?\x92Z\x98\x88\xC0K
\xb1\x94o\xe2gfa=\xbf\x85\xe23\xc4\xcf\x85a΄\...@\x9c\xf5\x99x\x86\xdafn\xe8vpμ\xc33\x8c9\xc5zp\xa6ә\xf6\\xd8\xe4\x9c'\xCEm\x94\xF1\x8CB\xBAITqT\x9FqL\xF1\xAA\xB2ύׁ\xA5\xB5l\xB3ӑ\xEC!\x8D\x84KI%&\x97~S*\xFF\xB4)[*\xE8\xDAE\xB0H䁓M4\xE1,?C\x92b̠\x94Q\xF70\xB5\x8E\xF4q\xB2\x91Gu\xD0\xC9ٜ9-\x99\xD9\xEE\xA7\xEDL|X&\x99Q\xE5)\x9D\xE72>'\xA9\xF3\N}\xEE\xB3\xD1䢥U\xFB\x9C\xFDޑ\x96\xF2"\xB5ۡ\xD5\xE9W%Q\x99\x8Dէ\x90\xB8<\xFF\x8C\x9F\xF1\xFE\x8E\xA0Y>
+endstream
+endobj
+18 0 obj
+<< /Filter /FlateDecode /Length 338 >>
+stream
+x\x9CERKr\xC50\xDB\xE7\ 3\xE6g\xE3\xF3\xBCNW\xE9\xFD\xB7\x95p:\xDD<\xF4
2=eH\xA6\xDC6\x96d\x84\xE4\xF2\xA5Wd\x88Ր\x9FF\x8ED\xC4\xDF)\xA1\xC0\xAE\xC4\\xC8n\x89J\xF1\xA1?\x97\xA572ͮЪ\xB7G\xA76\x8BF5+#\xE7
C\x84zV\xE8\xCC\xEEQ\xDBd\xC3\xEBv!\xE9:S\x87p,\xFFC\xB2\x94u\xCA)\x94mA\xDF\xD8#\xE8o<\xDC\xB3\xE6r\xB3\xB9Ln\xF5\xBF\xEE[\x9E\xD7:[\xB1m@
\x96s\xDE` \xC4\xC3
\xDA \xC4\xDC\xDA\xDE)(U\xBA\x8AI\xF2\';P\xB6Ъt\xBC7\x809`Ò\xAD\xD7ho \xC3>\xF4\xA2F\xC5\xF6\xA0\xA8,
\xFE\xCE\xD9f\xC1\xDE1\xC9H\xB0'\xE6N=q:őpi8\x...@\x8a\xad\xe2\xba\xf1\xd8\xe2/\xAE\x88\x9A\xF0
u:eM\xBC\xDA\xE2\xC7B\x93\xEFRq\xF0"n]E\xB5lO\xE7
\xB4?*\x923b\xA4\xC4\xD1
\x91Ԓ\xCE\x97\xF5\xD0\xFB\xB8\x89\xAF\x8D\xC4枾\xDD?\xC29\x9F\xEB\xFB\xB8\x83\xE0
+endstream
+endobj
+19 0 obj
+<< /Filter /FlateDecode /Length 17 >>
+stream
+x\x9C36\xB4P0\x80\xC3C. \x94\xEC
+endstream
+endobj
+20 0 obj
+<< /Filter /FlateDecode /Length 68 >>
+stream
+x\x9C32\xB7P0P\xB04\x86&
+\xE6f
+)\x...@\xbe\xa9\x89\xb9b.h\xC4\xCA\xB3
\x80\xB4%\x9C\x82\x88[B4A\x94\x82X\xA5f&fI8"\x97 ɴ\xE5
+endstream
+endobj
+21 0 obj
+<< /Filter /FlateDecode /Length 255 >>
+stream
+x\x9CE\x91K\x92
D\xF7\x9E\x82#\x80\xFC\xE4<\x99\x9AUr\xFF\xED4\x98L6v\x97\xA8\xFD\x84J#\xA6,\xE7y0\xFD\xC8\xF2\xCDd\xB6\xE9\xB5\xAB\x9D\x8D\x8A"\xCC\xE4*\xF4X\x81՝)\xE2̵D\xB5\xF5\xB12r\xDC\xE9\x83\xE2
+箜T\xB2\xB8Q\xC6:\xAA:8\xA6\xE7\xCA\xFA\xAA\xEE\xFC\xB8,ʾ#\x872l\xD696p\xE5\xB6a\x8C\xA3\xCDVw\x87\xFBD\x90\xA7\x93\xA9\xA3\xE2v\x90l\xF8\x83\x93ƾ\xCA\xD5\xB8N6\xFB\xEA%\x82~\xA1
l\xf2m\xa0u\...@\xe3\xe6)zr \xf6\xf1q\xbb\...@\xb0\xb7\xbc
\xA4l\xE4\xC8\x8CA\xBBN\xAEq\xEB\xFC\xDE\xFF:Ý\xE7\xDA
W\x8Ew\xF1;Lk\xBB\xE3/1Ɋ\xB9\x80E\xEE\xD4\xF3=\xAD\xEB
\xEFəcr\xD3}C\xE7\\xB0\xCB\xDDA\xA6\xCF\xFC\xEB\xF7P\x8Af\x88
+endstream
+endobj
+22 0 obj
+<< /Filter /FlateDecode /Length 45 >>
+stream
+x\x9C32\xB7P0P\xB04\x86&
+\xE6f
+)\x86\\x96V.L,\xCCіp
+"\x9E \x9F}\xB5
+endstream
+endobj
+23 0 obj
+<< /Filter /FlateDecode /Length 161 >>
+stream
+x\x9CE\x90K\xC3
C\xF7\x9CBG\xF0G|\x9et\xbaj■!m\xb3\x80\xa7\...@w'\xA9\xB5\xD1/mK\xBA>[
\xCE\xC6x\xE86n5\xE4u\x80V\xA4\xE3h\x94R}\xB9\xC5i\x95t\xF1h6s+\xADfz\x94\xA3\xA0:\xDE\xED\xA2\xE4r\xA6\xEE\xCE\xF9Gp\xF5_\xF5G\xB1\xEE\x9C\xCD\xC4\xC0d\xE5\x84f\xF5)\xEE|\x9BQ]\xDDd\xD2cn\xD6k\x{1AAC34}\xAC\xA5\xE5\x84\xDB\xCE]3\xA0\xEE\xA9\xED\xFD\xA9s:\x84
+endstream
+endobj
+24 0 obj
+<< /Filter /FlateDecode /Length 163 >>
+stream
+x\x9CM\x90;\xC30Cw\x9F\x82
\xEA\xE3\xCFyRtj\xEF\xBFVr\xA0\x83\xC1ʐ(usf\xE0\xA0!\xBC\xDE\xC0\x8B-eǷ\xA0\xACO\xE3\xF8'庉}\x80\x{12FA812}*\x86\xB3\xA9ƀF\xA0;t\x{152CD9}{\x81M\xC3Xp\xA4\xA4\xEF\xB6@'<,\x9B\xD9V\xB5Q\x95\xB0{\xEC\x93\xEE"I\xADڣ\xD3\x8C\x81g
\xED\xB0
\xB0\xBB\x9BO㵦\xA6_\x9A)\xE9\x9B\xD83\x98\xB7\xF0H\x9BBd\x88Z\xCA\xF7q\xEAg{\xFF ?\xEB83
+endstream
+endobj
+25 0 obj
+<< /Filter /FlateDecode /Length 131 >>
+stream
+x\x9CE\x8F\xCB
+!
C\xEFT\xE1\xF2>\xA9\x87՞\xD8\xFE\xAF\xEB0\x9AAB\xF8A";\xF10\xAC\xF3\xF26\xD0\xC5\xF0Ѣ\xC37\xFE6իc\x95,\xBAzRV鐇\xBC\xF2Pi0QąYLCaΘ\xCAȖ2\xB7\xE1\xB6M\x83\xACl\x95T\xAD\x83v<\xB6\xA7e\xAB~\xA9ma\xEA,\xF1
\xC2U^\xB8\xC7
+?\x90K\xADw\xBDU\xBEBS0\x97
+endstream
+endobj
+26 0 obj
+<< /Filter /FlateDecode /Length 87 >>
+stream
+x\x9C5M\xB9\xC00뙂̣\xD8\xEC\x93K\xE5\xEC\xDF\xEC\xB8A:}
\x94k\xE4\x82\xE1\x9Do!\xF8\xA6/\x84uO*\xBB%:l\xA1\x86\xB3
+\x92\x89\xE1W6xU\xAE\x8A\x{1B5489}\xECl\xA61ؠe\xFA\xD1ηI\xCF\xA5\xDE\x98
+endstream
+endobj
+14 0 obj
+<< /FontMatrix [ 0.001 0 0 0.001 0 0 ] /Name /BitstreamVeraSans-Roman
+/FontBBox [ -184 -236 1288 929 ]
+/Encoding <<
+/Differences [ 32 /space 97 /a 101 /e 103 /g 105 /i 108 /l /m /n 116 /t /u 120
/x ]
+/Type /Encoding >>
+/BaseFont /BitstreamVeraSans-Roman /Type /Font /CharProcs 15 0 R
+/Subtype /Type3 /FontDescriptor 13 0 R /Widths 12 0 R /LastChar 255
+/FirstChar 0 >>
+endobj
+13 0 obj
+<< /FontName /BitstreamVeraSans-Roman /Descent -236
+/FontBBox [ -184 -236 1288 929 ] /CapHeight 730 /Ascent 929 /MaxWidth 1342
+/StemV 0 /Flags 32 /XHeight 547 /ItalicAngle 0 /Type /FontDescriptor >>
+endobj
+12 0 obj
+[ 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600
+600 600 600 600 600 600 600 600 600 600 600 600 600 600 318 401 460 838 636
+950 780 275 390 390 500 838 318 361 318 337 636 636 636 636 636 636 636 636
+636 636 337 337 838 838 838 531 1000 684 686 698 770 632 575 775 752 295
+295 656 557 863 748 787 603 787 695 635 611 732 684 989 685 611 685 390 337
+390 838 500 500 613 635 550 635 615 352 635 634 278 278 579 278 974 634 612
+635 635 411 521 392 634 592 818 592 592 525 636 337 636 838 600 636 600 318
+636 518 1000 500 500 500 1342 635 400 1070 600 685 600 600 318 318 518 518
+590 500 1000 500 1000 521 400 1023 600 525 611 636 401 636 636 636 636 337
+500 500 1000 471 612 838 361 1000 500 500 838 401 401 500 636 636 318 500
+401 471 612 969 969 969 531 684 684 684 684 684 684 974 698 632 632 632 632
+295 295 295 295 775 748 787 787 787 787 787 838 787 732 732 732 732 611 605
+630 613 613 613 613 613 613 982 550 615 615 615 615 278 278 278 278 612 634
+612 612 612 612 612 838 612 634 634 634 634 592 635 592 ]
+endobj
+15 0 obj
+<< /a 16 0 R /e 17 0 R /g 18 0 R /space 19 0 R /i 20 0 R /m 21 0 R
+/l 22 0 R /n 23 0 R /u 24 0 R /t 25 0 R /x 26 0 R >>
+endobj
+3 0 obj
+<< /F1 14 0 R >>
+endobj
+4 0 obj
+<< >>
+endobj
+5 0 obj
+<< >>
+endobj
+6 0 obj
+<< >>
+endobj
+7 0 obj
+<< >>
+endobj
+2 0 obj
+<< /Count 1 /Kids [ 10 0 R ] /Type /Pages >>
+endobj
+27 0 obj
+<< /CreationDate (D:20100607102206-04'00')
+/Producer (matplotlib pdf backend r8292)
+/Creator (matplotlib 1.0.svn, http://matplotlib.sf.net) >>
+endobj
+xref
+0 28
+0000000000 65535 f
+0000000016 00000 n
+0000005112 00000 n
+0000004996 00000 n
+0000005028 00000 n
+0000005049 00000 n
+0000005070 00000 n
+0000005091 00000 n
+0000000065 00000 n
+0000000315 00000 n
+0000000208 00000 n
+0000000575 00000 n
+0000003807 00000 n
+0000003592 00000 n
+0000003208 00000 n
+0000004860 00000 n
+0000000595 00000 n
+0000000972 00000 n
+0000001290 00000 n
+0000001701 00000 n
+0000001790 00000 n
+0000001930 00000 n
+0000002258 00000 n
+0000002375 00000 n
+0000002609 00000 n
+0000002845 00000 n
+0000003049 00000 n
+0000005172 00000 n
+trailer
+<< /Info 27 0 R /Root 1 0 R /Size 28 >>
+startxref
+5331
+%%EOF
Added:
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.png
===================================================================
(Binary files differ)
Property changes on:
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added:
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.svg
===================================================================
---
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.svg
(rev 0)
+++
trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_text/multiline.svg
2010-06-07 14:23:58 UTC (rev 8393)
@@ -0,0 +1,83 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Created with matplotlib (http://matplotlib.sourceforge.net/) -->
+<svg width="576pt" height="432pt" viewBox="0 0 576 432"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1"
+ id="svg1">
+<filter id="colorAdd"><feComposite in="SourceGraphic" in2="BackgroundImage"
operator="arithmetic" k2="1" k3="1"/></filter>
+<g id="figure1">
+<g id="patch1">
+<path style="fill: #ffffff; stroke: #ffffff; stroke-width: 1.000000;
stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000"
d="M0.000000 432.000000L576.000000 432.000000L576.000000 0.000000
+L0.000000 0.000000L0.000000 432.000000"/>
+</g>
+<g id="axes1">
+<g id="patch2">
+<path style="fill: #ffffff; opacity: 1.000000" d="M72.000000
388.800000L518.400000 388.800000L518.400000 43.200000
+L72.000000 43.200000L72.000000 388.800000"/>
+</g>
+<g id="matplotlib.axis1">
+</g>
+<g id="matplotlib.axis2">
+</g>
+<g id="patch3">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000;
stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000"
d="M72.000000 43.200000L518.400000 43.200000"/>
+</g>
+<g id="patch4">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000;
stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000"
d="M518.400000 388.800000L518.400000 43.200000"/>
+</g>
+<g id="patch5">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000;
stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000"
d="M72.000000 388.800000L518.400000 388.800000"/>
+</g>
+<g id="patch6">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000;
stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000"
d="M72.000000 388.800000L72.000000 43.200000"/>
+</g>
+<g id="text1">
+<defs>
+<path id="c_4653c6dfde66c7610eae0911760d3490" d="M52.000000
-44.187500q3.375000 -6.062500 8.062500 -8.937500q4.687500 -2.875000 11.031250
-2.875000q8.546875 0.000000 13.187500 5.984375q4.640625 5.968750 4.640625
17.000000l0.000000 33.015625l-9.031250 0.000000l0.000000 -32.718750q0.000000
-7.859375 -2.796875 -11.656250q-2.781250 -3.812500 -8.484375
-3.812500q-6.984375 0.000000 -11.046875 4.640625q-4.046875 4.625000 -4.046875
12.640625l0.000000 30.906250l-9.031250 0.000000l0.000000 -32.718750q0.000000
-7.906250 -2.781250 -11.687500q-2.781250 -3.781250 -8.593750
-3.781250q-6.890625 0.000000 -10.953125 4.656250q-4.046875 4.656250 -4.046875
12.625000l0.000000 30.906250l-9.031250 0.000000l0.000000 -54.687500l9.031250
0.000000l0.000000 8.500000q3.078125 -5.031250 7.375000 -7.421875q4.296875
-2.390625 10.203125 -2.390625q5.968750 0.000000 10.140625 3.031250q4.171875
3.015625 6.171875 8.781250"/>
+<path id="c_c438d87e693443c2861ebd6359e6491e" d="M8.500000 -21.578125l0.000000
-33.109375l8.984375 0.000000l0.000000 32.765625q0.000000 7.765625 3.015625
11.656250q3.031250 3.875000 9.093750 3.875000q7.265625 0.000000 11.484375
-4.640625q4.234375 -4.640625 4.234375 -12.656250l0.000000 -31.000000l8.984375
0.000000l0.000000 54.687500l-8.984375 0.000000l0.000000 -8.406250q-3.265625
4.984375 -7.593750 7.406250q-4.312500 2.421875 -10.031250 2.421875q-9.421875
0.000000 -14.312500 -5.859375q-4.875000 -5.859375 -4.875000 -17.140625"/>
+<path id="c_5099edb83619131346ae654950954dea" d="M9.421875 -75.984375l8.984375
0.000000l0.000000 75.984375l-8.984375 0.000000z"/>
+<path id="c_0f8c41144cfbf448378cb6fd1cc8e549" d="M18.312500
-70.218750l0.000000 15.531250l18.500000 0.000000l0.000000 6.984375l-18.500000
0.000000l0.000000 29.687500q0.000000 6.687500 1.828125 8.593750q1.828125
1.906250 7.453125 1.906250l9.218750 0.000000l0.000000 7.515625l-9.218750
0.000000q-10.406250 0.000000 -14.359375 -3.875000q-3.953125 -3.890625 -3.953125
-14.140625l0.000000 -29.687500l-6.593750 0.000000l0.000000 -6.984375l6.593750
0.000000l0.000000 -15.531250z"/>
+<path id="c_6a63bda47b2f3da1cec6aadd80692cfe" d="M9.421875 -54.687500l8.984375
0.000000l0.000000 54.687500l-8.984375 0.000000zM9.421875 -75.984375l8.984375
0.000000l0.000000 11.390625l-8.984375 0.000000z"/>
+<path id="c_fe791a90f5471e2ab20a5ed41a7fa451" d="M54.890625
-33.015625l0.000000 33.015625l-8.984375 0.000000l0.000000 -32.718750q0.000000
-7.765625 -3.031250 -11.609375q-3.031250 -3.859375 -9.078125
-3.859375q-7.281250 0.000000 -11.484375 4.640625q-4.203125 4.625000 -4.203125
12.640625l0.000000 30.906250l-9.031250 0.000000l0.000000 -54.687500l9.031250
0.000000l0.000000 8.500000q3.234375 -4.937500 7.593750 -7.375000q4.375000
-2.437500 10.093750 -2.437500q9.421875 0.000000 14.250000 5.828125q4.843750
5.828125 4.843750 17.156250"/>
+<path id="c_0bce5afba2dc6b9024b26277c38ad8e8" d="M56.203125
-29.593750l0.000000 4.390625l-41.312500 0.000000q0.593750 9.281250 5.593750
14.140625q5.000000 4.859375 13.937500 4.859375q5.171875 0.000000 10.031250
-1.265625q4.859375 -1.265625 9.656250 -3.812500l0.000000 8.500000q-4.843750
2.046875 -9.921875 3.125000q-5.078125 1.078125 -10.296875 1.078125q-13.093750
0.000000 -20.734375 -7.609375q-7.640625 -7.625000 -7.640625 -20.625000q0.000000
-13.421875 7.250000 -21.296875q7.250000 -7.890625 19.562500 -7.890625q11.031250
0.000000 17.453125 7.109375q6.421875 7.093750 6.421875 19.296875M47.218750
-32.234375q-0.093750 -7.359375 -4.125000 -11.750000q-4.031250 -4.406250
-10.671875 -4.406250q-7.515625 0.000000 -12.031250 4.250000q-4.515625 4.250000
-5.203125 11.968750z"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000"
transform="translate(264.887500,21.943750)scale(0.144000)">
+<use xlink:href="#c_4653c6dfde66c7610eae0911760d3490"/>
+<use xlink:href="#c_c438d87e693443c2861ebd6359e6491e" x="97.412109"/>
+<use xlink:href="#c_5099edb83619131346ae654950954dea" x="160.791016"/>
+<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="188.574219"/>
+<use xlink:href="#c_6a63bda47b2f3da1cec6aadd80692cfe" x="227.783203"/>
+<use xlink:href="#c_5099edb83619131346ae654950954dea" x="255.566406"/>
+<use xlink:href="#c_6a63bda47b2f3da1cec6aadd80692cfe" x="283.349609"/>
+<use xlink:href="#c_fe791a90f5471e2ab20a5ed41a7fa451" x="311.132813"/>
+<use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="374.511719"/>
+</g>
+<defs>
+<path id="c_801fe2e877fad46da27c898b407b3b54" d="M54.890625
-54.687500l-19.781250 26.609375l20.796875 28.078125l-10.593750
0.000000l-15.921875 -21.484375l-15.906250 21.484375l-10.609375
0.000000l21.250000 -28.609375l-19.437500 -26.078125l10.593750
0.000000l14.500000 19.484375l14.500000 -19.484375z"/>
+<path id="c_d41d8cd98f00b204e9800998ecf8427e" d=""/>
+<path id="c_01d93a582460e35a7945ca50d148ffeb" d="M34.281250
-27.484375q-10.890625 0.000000 -15.093750 2.484375q-4.203125 2.484375 -4.203125
8.500000q0.000000 4.781250 3.156250 7.593750q3.156250 2.796875 8.562500
2.796875q7.484375 0.000000 12.000000 -5.296875q4.515625 -5.296875 4.515625
-14.078125l0.000000 -2.000000zM52.203125 -31.203125l0.000000
31.203125l-8.984375 0.000000l0.000000 -8.296875q-3.078125 4.968750 -7.671875
7.343750q-4.593750 2.375000 -11.234375 2.375000q-8.390625 0.000000 -13.359375
-4.718750q-4.953125 -4.718750 -4.953125 -12.625000q0.000000 -9.218750 6.171875
-13.906250q6.187500 -4.687500 18.437500 -4.687500l12.609375 0.000000l0.000000
-0.890625q0.000000 -6.203125 -4.078125 -9.593750q-4.078125 -3.390625 -11.453125
-3.390625q-4.687500 0.000000 -9.140625 1.125000q-4.437500 1.125000 -8.531250
3.375000l0.000000 -8.312500q4.921875 -1.906250 9.562500 -2.843750q4.640625
-0.953125 9.031250 -0.953125q11.875000 0.000000 17.734375 6.156250q5.859375
6.140625 5.859375 18.640625"/>
+<path id="c_e3864de5dabf2f8dd9eee74726882ec1" d="M45.406250
-27.984375q0.000000 -9.765625 -4.031250 -15.125000q-4.015625 -5.375000
-11.296875 -5.375000q-7.218750 0.000000 -11.250000 5.375000q-4.031250 5.359375
-4.031250 15.125000q0.000000 9.718750 4.031250 15.093750q4.031250 5.375000
11.250000 5.375000q7.281250 0.000000 11.296875 -5.375000q4.031250 -5.375000
4.031250 -15.093750M54.390625 -6.781250q0.000000 13.953125 -6.203125
20.765625q-6.187500 6.812500 -18.984375 6.812500q-4.734375 0.000000 -8.937500
-0.703125q-4.203125 -0.703125 -8.156250 -2.171875l0.000000 -8.734375q3.953125
2.140625 7.812500 3.156250q3.859375 1.031250 7.859375 1.031250q8.843750
0.000000 13.234375 -4.609375q4.390625 -4.609375 4.390625 -13.937500l0.000000
-4.453125q-2.781250 4.843750 -7.125000 7.234375q-4.343750 2.390625 -10.406250
2.390625q-10.046875 0.000000 -16.203125 -7.656250q-6.156250 -7.671875 -6.156250
-20.328125q0.000000 -12.687500 6.156250 -20.343750q6.156250 -7.671875 16.203125
-7.671875q6.062500 0.000000 10.406250 2.390625q4.343750 2.390625 7.125000
7.218750l0.000000 -8.296875l8.984375 0.000000z"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000"
transform="translate(242.567187,38.200000)scale(0.144000)">
+<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549"/>
+<use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="39.208984"/>
+<use xlink:href="#c_801fe2e877fad46da27c898b407b3b54" x="98.982422"/>
+<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="158.162109"/>
+<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="197.371094"/>
+<use xlink:href="#c_01d93a582460e35a7945ca50d148ffeb" x="229.158203"/>
+<use xlink:href="#c_5099edb83619131346ae654950954dea" x="290.437500"/>
+<use xlink:href="#c_6a63bda47b2f3da1cec6aadd80692cfe" x="318.220703"/>
+<use xlink:href="#c_e3864de5dabf2f8dd9eee74726882ec1" x="346.003906"/>
+<use xlink:href="#c_fe791a90f5471e2ab20a5ed41a7fa451" x="409.480469"/>
+<use xlink:href="#c_4653c6dfde66c7610eae0911760d3490" x="472.859375"/>
+<use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="570.271484"/>
+<use xlink:href="#c_fe791a90f5471e2ab20a5ed41a7fa451" x="631.794922"/>
+<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="695.173828"/>
+</g>
+</g>
+</g>
+</g>
+</svg>
Modified: trunk/matplotlib/lib/matplotlib/tests/test_text.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/tests/test_text.py 2010-06-07 13:04:24 UTC
(rev 8392)
+++ trunk/matplotlib/lib/matplotlib/tests/test_text.py 2010-06-07 14:23:58 UTC
(rev 8393)
@@ -64,3 +64,13 @@
fig.savefig('font_styles')
+...@image_comparison(baseline_images=['multiline'])
+def test_multiline():
+ fig = plt.figure()
+ ax = plt.subplot( 1, 1, 1 )
+ ax.set_title("multiline\ntext alignment")
+
+ ax.set_xticks([])
+ ax.set_yticks([])
+
+ fig.savefig('multiline')
Modified: trunk/matplotlib/lib/matplotlib/text.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/text.py 2010-06-07 13:04:24 UTC (rev
8392)
+++ trunk/matplotlib/lib/matplotlib/text.py 2010-06-07 14:23:58 UTC (rev
8393)
@@ -298,7 +298,7 @@
ismath=False)
offsety = lp_h * self._linespacing
- baseline = None
+ baseline = 0
for i, line in enumerate(lines):
clean_line, ismath = self.is_math_text(line)
if clean_line:
@@ -308,8 +308,6 @@
else:
w, h, d = 0, 0, 0
- if baseline is None:
- baseline = h - d
whs[i] = w, h
# For general multiline text, we will have a fixed spacing
@@ -326,9 +324,11 @@
horizLayout[i] = thisx, thisy-(d + d_yoffset), \
w, h
+ baseline = (h - d) - thisy
thisy -= offsety + d_yoffset
width = max(width, w)
+
ymin = horizLayout[-1][1]
ymax = horizLayout[0][1] + horizLayout[0][3]
height = ymax-ymin
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
lucky parental unit. See the prize list and enter to win:
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins