Don't use DXF-native text for textboxes.
It gets the positioning wrong.
This commit is contained in:
parent
cb3c63b2b1
commit
2ae36312c4
|
@ -357,10 +357,15 @@ void BRDITEMS_PLOTTER::PlotBoardGraphicItem( const BOARD_ITEM* item )
|
||||||
|
|
||||||
case PCB_TEXTBOX_T:
|
case PCB_TEXTBOX_T:
|
||||||
{
|
{
|
||||||
|
m_plotter->SetTextMode( PLOT_TEXT_MODE::STROKE );
|
||||||
|
|
||||||
const PCB_TEXTBOX* textbox = static_cast<const PCB_TEXTBOX*>( item );
|
const PCB_TEXTBOX* textbox = static_cast<const PCB_TEXTBOX*>( item );
|
||||||
PlotText( textbox, textbox->GetLayer(), textbox->IsKnockout(), textbox->GetFontMetrics() );
|
PlotText( textbox, textbox->GetLayer(), textbox->IsKnockout(), textbox->GetFontMetrics() );
|
||||||
|
|
||||||
if( textbox->IsBorderEnabled() )
|
if( textbox->IsBorderEnabled() )
|
||||||
PlotShape( textbox );
|
PlotShape( textbox );
|
||||||
|
|
||||||
|
m_plotter->SetTextMode( GetTextMode() );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -369,7 +374,11 @@ void BRDITEMS_PLOTTER::PlotBoardGraphicItem( const BOARD_ITEM* item )
|
||||||
case PCB_DIM_RADIAL_T:
|
case PCB_DIM_RADIAL_T:
|
||||||
case PCB_DIM_ORTHOGONAL_T:
|
case PCB_DIM_ORTHOGONAL_T:
|
||||||
case PCB_DIM_LEADER_T:
|
case PCB_DIM_LEADER_T:
|
||||||
|
m_plotter->SetTextMode( PLOT_TEXT_MODE::STROKE );
|
||||||
|
|
||||||
PlotDimension( static_cast<const PCB_DIMENSION_BASE*>( item ) );
|
PlotDimension( static_cast<const PCB_DIMENSION_BASE*>( item ) );
|
||||||
|
|
||||||
|
m_plotter->SetTextMode( GetTextMode() );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PCB_TARGET_T:
|
case PCB_TARGET_T:
|
||||||
|
@ -498,30 +507,28 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItems( const FOOTPRINT* aFootprint )
|
||||||
if( aFootprint->GetPrivateLayers().test( item->GetLayer() ) )
|
if( aFootprint->GetPrivateLayers().test( item->GetLayer() ) )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
if( !m_layerMask[ item->GetLayer() ] )
|
||||||
|
continue;
|
||||||
|
|
||||||
switch( item->Type() )
|
switch( item->Type() )
|
||||||
{
|
{
|
||||||
case PCB_SHAPE_T:
|
case PCB_SHAPE_T:
|
||||||
{
|
PlotShape( static_cast<const PCB_SHAPE*>( item ) );
|
||||||
const PCB_SHAPE* shape = static_cast<const PCB_SHAPE*>( item );
|
|
||||||
|
|
||||||
if( m_layerMask[ shape->GetLayer() ] )
|
|
||||||
PlotShape( shape );
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
|
|
||||||
case PCB_TEXTBOX_T:
|
case PCB_TEXTBOX_T:
|
||||||
{
|
{
|
||||||
const PCB_TEXTBOX* textbox = static_cast<const PCB_TEXTBOX*>( item );
|
const PCB_TEXTBOX* textbox = static_cast<const PCB_TEXTBOX*>( item );
|
||||||
|
|
||||||
if( m_layerMask[ textbox->GetLayer() ] )
|
m_plotter->SetTextMode( PLOT_TEXT_MODE::STROKE );
|
||||||
{
|
|
||||||
PlotText( textbox, textbox->GetLayer(), textbox->IsKnockout(),
|
|
||||||
textbox->GetFontMetrics() );
|
|
||||||
if( textbox->IsBorderEnabled() )
|
|
||||||
PlotShape( textbox );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
PlotText( textbox, textbox->GetLayer(), textbox->IsKnockout(),
|
||||||
|
textbox->GetFontMetrics() );
|
||||||
|
|
||||||
|
if( textbox->IsBorderEnabled() )
|
||||||
|
PlotShape( textbox );
|
||||||
|
|
||||||
|
m_plotter->SetTextMode( GetTextMode() );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -530,14 +537,8 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItems( const FOOTPRINT* aFootprint )
|
||||||
case PCB_DIM_RADIAL_T:
|
case PCB_DIM_RADIAL_T:
|
||||||
case PCB_DIM_ORTHOGONAL_T:
|
case PCB_DIM_ORTHOGONAL_T:
|
||||||
case PCB_DIM_LEADER_T:
|
case PCB_DIM_LEADER_T:
|
||||||
{
|
PlotDimension( static_cast<const PCB_DIMENSION_BASE*>( item ) );
|
||||||
const PCB_DIMENSION_BASE* dimension = static_cast<const PCB_DIMENSION_BASE*>( item );
|
|
||||||
|
|
||||||
if( m_layerMask[ dimension->GetLayer() ] )
|
|
||||||
PlotDimension( dimension );
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
|
|
||||||
case PCB_TEXT_T:
|
case PCB_TEXT_T:
|
||||||
// Plotted in PlotFootprintTextItems()
|
// Plotted in PlotFootprintTextItems()
|
||||||
|
|
Loading…
Reference in New Issue