kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #16462
Re: Mirrored printing broken on wxWidgets 3.0.2
On 1/17/2015 9:38 AM, jp charras wrote:
> Le 17/01/2015 14:36, Wayne Stambaugh a écrit :
>> On 1/17/2015 2:36 AM, jp charras wrote:
>>> Le 16/01/2015 22:03, Wayne Stambaugh a écrit :
>>>> I recently discovered that the mirrored printing in Pcbnew is broken on
>>>> windows. At first I thought it was a 32 bit versus 64 bit issue but I
>>>> discovered that it is due to the wxWidgets version. When I use
>>>> wxWidgets 3.0.0, the mirrored printing works fine (at least on 32 bit
>>>> MinGW builds). Using wxWidgets 3.0.2 breaks the mirrored printing on
>>>> both 32 and 64 bit builds. Has anybody else noticed this on any other
>>>> platforms?
>>>>
>>>
>>> After test on W7, 32 bits, I did not noticed an issue when printing in
>>> mirrored mode.
>>
>> Are you using wxWidgets 3.0.2?
>
> Yes, both on W7 and Linux:
>
> wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1002,GCC
> 4.8.1,wx containers,compatible with 2.8)
> Platform: Windows 7 (build 7601, Service Pack 1), 32 bit, Little endian,
> wxMSW
> Boost version: 1.54.0
> USE_WX_GRAPHICS_CONTEXT=OFF
> USE_WX_OVERLAY=OFF
> KICAD_SCRIPTING=ON
> KICAD_SCRIPTING_MODULES=ON
> KICAD_SCRIPTING_WXPYTHON=OFF
> USE_FP_LIB_TABLE=HARD_CODED_ON
> BUILD_GITHUB_PLUGIN=ON
> KICAD_USE_WEBKIT=ON
This is my 32 bit build that fails:
Application: kicad
Version: (2014-10-26 BZR 5226)-product Release build
wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1002,GCC
4.9.1,wx containers,compatible with 2.8)
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian,
wxMSW
Boost version: 1.56.0
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_WXPYTHON=ON
USE_FP_LIB_TABLE=HARD_CODED_ON
BUILD_GITHUB_PLUGIN=ON
One thing that is different is I'm using GCC 4.9.1. The other thing is
I running on 64 bit windows. I wonder if gcc is the issue. When I get
a chance I will test my older mingw32 (gcc 4.7.2) with wxWidgets 3.0.2
to see if it is compiler related.
>
>
> I don't see this issues on W7 or W8, 32
>> bits, wxWidgets 3.0.0. I haven't tested it with 3.0.1. I just want to
>> confirm that I'm not the only person with this problem before I start to
>> dig into it.
>>
>>> This is a bit strange, because the mirroring is made by our printing
>>> routines, not by the wxDC.
>>
>> In pcbnew/printout_controler.cpp I see:
>>
>> dc->SetAxisOrientation( false, false );
>>
>> and:
>>
>> dc->SetDeviceOrigin( x_dc_offset, 0 );
>>
>> This looks like wxDC is being used for printing. Are you talking about
>> plotting instead of printing?
>
> wxDC is used, I just mean the specific wxMirrorDC is not used.
> (But wxMirrorDC is perhaps just a wrapper which changes the axis
> orientation and origin)
>
>>
>>> But what is the actual issue?
>>
>> Both the print preview window and the printed page are blank.
>
> Both are OK for me.
>
> Note also the frame reference is not mirrored, and should be drawn, even
> if the dc->SetAxisOrientation( false, false ) has issues.
>
>>
>>>
>>> On Windows, the only one issue I am aware of is with Postscripts
>>> printers, (and only ps drivers, whith include the pdf virtual printers)
>>> is the fact lines (like tracks) have a very small width, near 0.
>>>
>
>
References