Commit 94db11a8 authored by Baranovskiy Konstantin's avatar Baranovskiy Konstantin Committed by Wayne Stambaugh
Browse files

Fix justification of vertically aligned multi-line text.

parent 4c8bff9f
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -40,7 +40,7 @@
// because the text position is sometimes critical.
// Currently, this change is broken for rotated or mirrored texts,
// so keep this line commented until there are fixes
//#define FIX_MULTILINE_VERT_JUSTIF
#define FIX_MULTILINE_VERT_JUSTIF

// Conversion to application internal units defined at build time.
#if defined( PCBNEW )
@@ -267,9 +267,13 @@ void EDA_TEXT::Draw( EDA_RECT* aClipBox, wxDC* aDC, const wxPoint& aOffset,
{
    if( m_MultilineAllowed )
    {
        wxPoint        pos  = m_Pos;
        wxArrayString* list = wxStringSplit( m_Text, '\n' );
        wxPoint        offset;

        wxPoint        pos  = m_Pos;  // Position of first line of the
                                      // multiline text according to
                                      // the center of the multiline text block

        wxPoint        offset;        // Offset to next line.

        offset.y = GetInterline();

@@ -290,7 +294,12 @@ void EDA_TEXT::Draw( EDA_RECT* aClipBox, wxDC* aDC, const wxPoint& aOffset,
                break;
            }
        }

        // Rotate the position of the first line
        // around the center of the multiline text block
        RotatePoint( &pos, m_Pos, m_Orient );
#endif
        // Rotate the offset lines to increase happened in the right direction
        RotatePoint( &offset, m_Orient );

        for( unsigned i = 0; i<list->Count(); i++ )