几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   DirectDWG (http://www.dimcax.com/hust/forumdisplay.php?f=89)
-   -   【转帖】incorrect rendering of text in singledoc sample projec (http://www.dimcax.com/hust/showthread.php?t=16871)

yang686526 2009-05-06 03:50 PM

【转帖】incorrect rendering of text in singledoc sample projec
 
incorrect rendering of text in singledoc sample project
incorrect rendering of text in singledoc sample project
hi,
the singledoc sample no longer renders dwg text correctly as it does in odamfcapp or autocad. all my rendering code is based on the singledoc project, so using the new dwgdirect 2.05.01 vc9 libraries renders some text with different line thicknesses than is expected.
the attached dwg file illustrates the problem when rendered in singledoc and compared to autocad or odamfcapp. can anyone please tell me what needs to be done to get singledoc to render correctly.
regards,
sijmen.
attached files
further to the previous problem, i have also noted that with singledoc, some characters are rendered as a ?, instead of the actual character. in autocad and odamfcapp, the characters are all rendered correctly.
the attached drawing is an example of text that does not render all characters correctly in singledoc, but does in odamfcapp.
regards,
sijmen.
attached files (146.5 kb, 2 views)

quote:
originally posted by sijmen
some text with different line thicknesses than is expected.
quote:
originally posted by sijmen
some characters are rendered as a ?, instead of the actual character. in autocad and odamfcapp, the characters are all rendered correctly.
hello sijmen,
this behavior is possible in case fonts are not available. odamfcapp has own implementation of findfile() method.
best regards,
sergey z.
hello sergey,
i don't understand why singledoc would not include findfile(...) so that it could resolve the location of the font files.
regardless, i copied the findfile(...) method and supporting methods from odamfcapp.h\odamfcapp.cpp into exhostappservices.h\exhostappservices.cpp, and it did fix the rendering of text in the singledoc project, and i can see that findfile(...) is being called.
however, my original program which was based on previous versions of singledoc, and does include a findfile(...) method, is now not being called. when built with the 2.03.01 libraries, findfile(...) was being called and rendering text correctly. now i have only changed the project to build with the 2.05.01 libraries, and now findfile(...) does not get called.
what has changed that my findfile(...) would not be called?
regards,
sijmen.

problem solved.
it seems the findfile(...) method signature changed from using oddbdatabase and oddbhostappservices argument types to using oddbbasedatabase and oddbbasehostappservices argument types.
on a final note, i do think that the singledoc application should make use of findfile(...) to ensure it correctly renders the drawing.
regards,
sijmen.


所有的时间均为北京时间。 现在的时间是 02:40 AM.