span8
span4
你好,
我想做一个DWG的栅格化。在运行MapnikRasterizer之后,我得到了大多数参数的良好结果,但是文本是有问题的。在AutoCAD我的文字看起来像这样:
但当我得到一个结果文本看起来像这样:
我已经尝试设置MapnikRasterizer几乎所有的选项。我打开了作家属性“autocad_text_rotation”,并试图在Mapnik中启用它,但我得到一个错误。有人知道如何在CAD中保存文本吗?
提前谢谢你!
为了保持原始DWG文本的原样,您可能希望首先使用TextStroker将文本转换为多边形,然后使用MapnikRasterizer Polygon Symbolizer对其进行样式化。当您使用文本符号化器时,您可以根据特性属性和符号化器参数从头创建文本。
请看一下https://knowledge.亚搏在线safe.com/articles/1092/introduction-to-mapnikrasterizer.html网站-你会发现在这篇文章的几个文本更新的例子。
嗨@马里奥帕卢布,
从AutoCAD(以及Microstation)读取的文本将始终保持左下对齐,而不考虑autocad_的内容。这就是几何图形在DWG文件中存储的方式。
FME还将尝试计算文本的原始放置点,并将此位置存储在属性autocad_alignment_x, .y, .z中。此位置是使用文本大小计算的,但不使用字体度量,因此也不是确切的位置。
在MapnikRasterizer中,请将文本的水平对齐设置为右侧,垂直对齐设置为顶部。这似乎相当于AutoCAD的左下角。
MapnikRasterizer只能使用安装在系统上的TrueType字体。如果安装了AutoCAD,也将安装AutoCAD字体的TrueType版本,但如果没有安装,则需要选择其他选项。
文本字体的大小是基于像素的,因此需要根据输出光栅分辨率为AutoCAD文本大小应用一个乘法器。最好的乘法器似乎是每单位像素的数量(英尺/米-无论你用什么)。
嗨@马里奥帕卢布,
在我看来,文本总是最棘手的事情。有太多的选择和调整。我赞赏你决心把它做好,我很遗憾听到你不得不与之斗争。
对fme来说,正确地定位文本特性是相当困难的,而来自autocad只会使它更加复杂。首先要做的是检查与autocad相比,fme数据检查器中的文本是什么样的。fme在渲染过程中没有考虑到许多autocad属性。例如;斜体/斜因子和字体。另一个重要的理由是。你可以阅读更多关于此处为FME中的理由是的。
这是关于fme如何表示autocad文本实体是的。选择文本实体时,可以将这些属性与FME数据检查器功能信息窗口中列出的属性进行比较。
我认为使用dx和dy是一个很好的调整位置的选择,虽然我有点担心你在测试中发现了什么。记住这里的偏移量(dx/dy)和光栅化器是以像素/单元格为单位测量的,在数据检查器中通常以米或英尺为单位(取决于您的投影)。字体大小也是如此。如果可以计算与autocad单位/比例相关的像素/单元格的大小,将真正帮助您。这将有助于计算需要设置的值。
这是链接到MAPNIK文档其中包含有关每个文本设置的功能的更多信息。也许可以将水平和垂直对齐值设置为与autocad中的对正设置相匹配。
我认为你走对了路,但很难确定。
在这一点上,我已经成功地做了一个光栅,但我面临一些问题。文本大小不是那么重要,所以我可以把它放在一边。我已经想出了如何解决文本的旋转问题。我最大的问题是如何保存文本的位置,因为它似乎被替换了。在mapnik设置中,有一个dx和dy选项。我曾尝试在该文件中加载AutoCADTraceTopyPosithyXx和AutoCADJTexPosithOpjyy,但存在错误,但这是意料之中的,因为这些值可能呈现每个轴上的位移。我试过在那个字段中输入一些随机值,首先我试过dx=1和dy=0,然后是1;1和1;2和1;5等等,我发现这个移动是不规则的,因为它看起来不像应该的那样,而且如果我设置dx=2,它甚至不会像dx=1那样移动相同大小的数字。在@pretap的建议下,我尝试在工作台中设置offetter并更改这些值,但同样没有好的结果。
我在想可能是什么问题,但进展不顺利。我能得到任何反馈吗?
提前谢谢你。
夏威夷群岛@马里奥帕卢布,
我想原因是autocad_文本_旋转不工作是因为它可能是空的/丢失的。您可以在右侧的“要素信息”窗口中的“FME数据检查器”中重复检查。通常autocad_旋转(翻译成FME U旋转)将被使用。对于文本高度,应将其基于autocad高度是的。您可能需要尝试使用文本缩放因子,以便获得更好的输出。这个autocad高度属性将以坐标系的任何单位(英尺或米)表示。你需要得到一个像素值。下面是有关fme中autocad文本的更多信息-您还可以查看文本实体特定文档查看各种属性值。
你犯了什么样的错误?我以前用过mapnik中的文本,没有发现问题。我使用了orientation参数来旋转文本
©2019安全亚搏在线软件公司法律