Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » Please answer it Collapse All
Subject Author Date
tera tera Sep 16, 2009 - 7:11 PM
Technical Support Sep 25, 2009 - 6:42 AM

We coded the printing/previewing subsystem in 2 month. Then it was improved several Prof-UIS releases. We used GDI in it. Recode it with GDI+ means to create a new print/preview subsystem from scratch. This is not a support task. This task is not related to any bugs in Prof-UIS. This task is a feature request.

Technical Support Sep 18, 2009 - 3:44 AM

We dig into GDI+ and classic GDI metafiles compatibility problem. The following links contain some interesting information:

http://www.undocprint.org/formats/winspool/emf_plus
http://books.google.com/books?id=ElAaTGP__U0C&pg=PA366&lpg=PA366&dq=printing+in+gdi%2B+emf%2B&source=bl&ots=AgE-P1i-vH&sig=Wde4QxYgxwDOIWa0BSBLHcKV6aA&hl=en&ei=VY2ySvrOEZXJ_gaDnr3MDQ&sa=X&oi=book_result&ct=result&resnum=2#v=onepage&q=&f=false

It looks like GDI+ simply emulates their APIs invocation and translates them into GDI APIs very approximately when the GDI+ is invoked for painting into classic metafiles. It’s logically correct. The classic metafiles (WMF or EMF) are simply saved sequences of classic GDI API invocations. The classic metafiles does not know anything about GDI+ APIs. This means the only way to draw correctly with GDI+ APIs into classic metafiles is to draw into bitmap and the draw composed bitmap into classic metafile. The alternate solution is to re-code Prof-UIS printing/previewing subsystem and make it GDI+ based.

The GDI and GDI+ graphic systems are two absolutely independent software libraries nevertheless they have APIs for integrating with each other. That’s why they are using different metafiles. These two systems are not the only graphic painting APIs in this world. For instance, the Firefox web browser uses the www.cairographics.org system. This library has its own device contexts working similar to classic and GDI+ metafiles. The Cairo library uses SVG and PDF contexts which can be assumed as metafile replacements.

The Prof-UIS library uses classic GDI metafiles in its printing previewing subsystem because all the other classes are using GDI - not GDI+. To switch to GDI+ in the printing/previewing subsystem will require to switch to GDI+ in all the Prof-UIS. It’s possible. But it’s not a quick work.


tera tera Sep 23, 2009 - 11:18 PM

Hello.


>It’s possible. But it’s not a quick work.




I consulted with a boss.

The boss seems to want you to cope.




However, If support seems to be difficult, the boss seems to reconsider it


Thanks,