Any ideas how to check which lines are missing shp symbols when opening a DWG file? The message "could not find SHX font [dgnlstyle]" is not very informative as I would like to know which line was not correctly converted to DWG. The missing symbols are replaced with dots or question marks but it is only visual indicator or is there some way to actually scan and find those broken lines?
Hi Oto, if you please share the file I will search for a way to scan all the elements with the not converted SHP symbols.
DWG line styles are a subset of MicroStation line styles. Because of this disparity, there are several features in MicroStation line styles that do not translate directly to DWG. Some features are lost in the translation, while other line styles will not translate at all.
I suggest checking the path where MicroStation searches the SHP fonts in these two variables MS_FONTPATH and MS_DWGFONTPATH. Check this articlecommunities.bentley.com/.../fonts-in-microstation
Because all point symbols in DWG line styles must be represented as shapes in an SHX shapefile, the elements in the point symbol are converted to a shape during the translation. The font file is named dgnlstyle.shx and will appear in your DWG fonts directory just like other fonts. Check these configuration variables: MS_DWG_LSTYLE_FONTPATH determines the location for the font file. MS_DWG_LSTYLE_FONTNAME determines the name of the font file (and therefore the name of the font)
I suggest looking closely at this article:communities.bentley.com/.../line-styles-and-dwg-files
There is active SR (7001254219) regarding this as old MS_ACADDIR also doesn't seem to work the same it used in v8i.
Will try these variables but original question is not regarding how to provide correct SHX but how to check which lines are not DWG compatible as there is no indication which are unsupported only when converting. The hardcoded workflow that creates dgnlstyle.shx in some system directory is bad approach and doesn't solve any real issues. After conversion checking file on same computer shows correctly but no option to check which SHX files are linked to this DWG. Users forget to include dgnlstyle when delivering DWG so it is too obscured.
Don H. Fu said:Benedetta's suggestion of using the config vars to locate the output fonts is the right way to address the issue. Once you know where your SHX fonts are located through the SaveAs process, you can deliver your the font files to the correct target folders based on the product (ACAD, MicroStation, etc) that will use them.
No it is totally wrong approach. We use only AutoCAD compatible linetypes so there should be no nonstandard SHX in the first place. At least it should place the shx file in same folder as file and not in some obscure place. Even if using remapping utility it should remap all linestyles to correct linetypes by LIN file but of course sometimes mistakes happen.
As the conversion process is nontransparent to user there is no control when conversion fails for some linestyles so that is why we ask for some more detailed report to avoid dealing with those wrong translated linestyles and avoid delivering dgnstyle garbage files.
It also doesn't address files that we receive from other places. In that case, I am not outputting anything. I am opening a DWG file of unknown origin. I have no control over what SHX files were or were not delivered. I might not even have them. I would like a way to know what they were used for.
Microstation 08.11.09.919Power GeoPak 08.11.09.918Power InRoads 08.11.09.918
Sounds like you may be encountering a different problem - you might be opening a DWG file that contains line types imported from a DGN file by ACAD?
If saving DGN as DWG is still the process I thought you had the issue with, mapping linestyles should give you line types you want in the target file. If you still get SHX font converted from original DGN line style, that's not expected.
Don H. Fu said:If saving DGN as DWG is still the process
How this could be not a process? There is no directly editable open format for CAD workflow so conversion is still needed.
I am not talking about files I created; I know what I'm doing when I create files. I am talking about files that come from somewhere else, from someone else, and I have no idea how they were created. They may have been converted from DGN to DWG. They may be DWG with a non-standard/custom linestyle definition. Heck, they might not even come out of AutoCAD (specifically).
While I can't speak to Oto's specifics, My files come to me from someplace else. They generate this same warning message about missing SHX fonts. And the font probably IS missing! I don't often get DWG files with LIN or SHX files packaged alongside. What I need to know is where/how that SHX file is used.
Sometimes I can safely ignore missing SHX. They could belong to a block saved in the file that I will never need. They could be used in a text style that I won't touch. Or they could be used in a linestyle that is actual information in the drawing.
A lot of times we can catch these and redefine the layer to an entirely different linestyle that does work. But sometimes they slip through, and that brings up questions (for which I have no answers).
If I am going to approach our client and ask for additional data to go with the files they gave us, I prefer to know exactly what I want and why I am asking for it. As in, your "flibbertygibbet" linestyle isn't showing up correctly and I need a copy of your "XYZ" SHX font to get it right. Half the time, they may not even know there's an issue because the file may have come from a third party entirely.