bitmap2component: Fix logic for alpha mask
For POTRACE, black is the foreground and white is the background. We should keep the convention by requiring the pixin to be less than the black threshhold as well as the alpha to be at least the alpha threshhold. Fixes: lp:1821563 * https://bugs.launchpad.net/kicad/+bug/1821563
This commit is contained in:
parent
35e87128f5
commit
f1704fd61a
|
@ -450,7 +450,7 @@ void BM2CMP_FRAME::Binarize( double aThreshold )
|
||||||
auto alpha = m_Greyscale_Image.HasAlpha() ?
|
auto alpha = m_Greyscale_Image.HasAlpha() ?
|
||||||
m_Greyscale_Image.GetAlpha( x, y ) : wxALPHA_OPAQUE;
|
m_Greyscale_Image.GetAlpha( x, y ) : wxALPHA_OPAQUE;
|
||||||
|
|
||||||
if( pixin < threshold || alpha < alpha_thresh )
|
if( pixin < threshold && alpha > alpha_thresh )
|
||||||
pixout = 0;
|
pixout = 0;
|
||||||
else
|
else
|
||||||
pixout = 255;
|
pixout = 255;
|
||||||
|
|
|
@ -155,7 +155,6 @@ int bitmap2component( potrace_bitmap_t* aPotrace_bitmap, FILE* aOutfile,
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("Step 1\n");
|
|
||||||
BITMAPCONV_INFO info;
|
BITMAPCONV_INFO info;
|
||||||
info.m_PixmapWidth = aPotrace_bitmap->w;
|
info.m_PixmapWidth = aPotrace_bitmap->w;
|
||||||
info.m_PixmapHeight = aPotrace_bitmap->h; // the bitmap size in pixels
|
info.m_PixmapHeight = aPotrace_bitmap->h; // the bitmap size in pixels
|
||||||
|
|
Loading…
Reference in New Issue