问题标签 [textout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 使用带擒纵机构的 WinApi.Windows.TextOut 时出现意外偏移
我正在尝试使用 winapi TextOut 方法将文本绘制到画布上。当擒纵机构为 0、900、1800 或 2700 时,这工作得相当好,但对于所有其他值,我得到一个偏移错误(“跳转”)。
请运行随附的代码以查看问题。如您所见,水平和垂直文本的绘制符合预期,但第三行绘制在错误的位置。
一些问题:
- 显而易见的:为什么会发生这种情况,我应该怎么做才能解决它
- 为什么方向没有效果?我在示例中输入了 1234,但无论我使用什么值,结果都是相同的
(我们使用的代码是一个旧的“cad-like”库的一部分。这个库的作者已经离开了这个星球,所以我们不能请他帮助我们,更换这个库会很麻烦有了一个新的、更现代的库。我试图隔离相关代码)
-
-
delphi - 如何将动态文本写入导航栏使用的 TImageList 中的图像?
我最近遇到了一种情况,我需要为用于导航栏的图像编写计数器,其中图像来自 imagelist 组件。
在绞尽脑汁看了几个小时后,查看了其他文章,例如:
如果使用 v6 ImageList 控件,*.bmp 会丢失透明背景
http://codeverge.com/embarcadero.delphi.graphics/timage-is-not-transparent-after-a/1080826
http://www.efg2.com/Lab/Library/Delphi/Graphics/ICOtoBMP.pas.txt
我选择了一个解决方案,从图像列表中复制位图,将文本写入位图画布,然后将位图放回图像列表中。
唯一的问题是我失去了透明度,我一生都无法弄清楚如何找回它。
如果我使用 GetIcon 而不是 GetBitmap,我可以提取并重新分配图像,包括透明度,但是我没有 Canvas 来使用 TextOut。
如果我设置颜色以使图像在链接到图像列表的组件中看起来正确,比如我的导航栏,那么当您使用 GetBitmap 提取图像时,透明度会丢失,并且在直接应用于TImage时看起来是白色的。
好的。没问题。只需使用白色作为透明色...
没有。即使将 16777215 显示为颜色,与clWhiteCanvas.Pixels[0, 31]的值相同,但将其用于TransparentColour没有任何效果。
要明白我的意思,请在 Delphi 中创建一个新的 VCL 表单应用程序,放置几个TButtons和一个TImageList ,然后通过在设计器中设置按钮Images属性将第二个按钮链接到图像列表。双击第一个按钮并将事件代码设置为:
现在在图像列表中添加一个不透明的位图(根据需要更改大小。我使用 32x32 像素位图)。默认情况下,组件将透明颜色显示为左下角的像素。保持原样并确定图像列表更改。将第二个按钮的ImageIndex更改为 0。
您现在应该看到添加到第二个按钮上显示的图像列表的位图,透明颜色是透明的。
现在单击第一个按钮。第二个按钮上的图像更改为显示“100”,但透明的现在变成了白色。
delphi - Delphi SetMapMode 反转文本
我正在开发一个图形应用程序,并且有许多带有标题的对象。为了放置字幕,我计算了 X、Y 坐标并调用:
Canvas.TextOut(XText, YText, FCaption);
我决定使用不同的映射模式来简化从世界空间到设备空间的转换:
现在我的字幕打印颠倒了,但仍然是从左到右。
关于如何补救的任何想法?
我考虑过的一种方法是将地图模式设置回输出文本的默认值,这需要进行一些转换才能在不同模式下获得 X、Y。这是一个合理的策略吗?在绘画程序期间更改地图模式是否“正确”......?
c++ - (.text+0x26f): 未定义的对 `TextOutA@20' 的引用
几天来,我一直在尝试修复此代码。当我尝试编译时main.cpp,它给了我错误C:\Users\Username\AppData\Local\Temp\cckKRlpR.o:main.cpp:(.text+0x26f): undefined reference to TextOutA@20'。我也试过包括 gdi32.lib 和 lgdi32 但它仍然给我错误。如果你知道如何解决这个问题,请告诉我。这是源代码顺便说一句:
python - 导出熊猫数据框时如何将数字另存为文本
我有一个 * .csv 文件,数据在这种类型的字段中:00123、0145、0004567,即带有前导零(文本类型);情况,,,是我想将它们保存在另一个数据框中(在其他计算之后),并且我想保留这些零;但无论我看起来多么努力,它总是将它们转换为不带零的,,上面的那些将是:123,145,4567。我已经将 dtypes 转换为 str ,, 但它什么也没做。ff1 = pd.read_csv (dir + "\lotr\dats\coinc4f.csv") ff1.POSIF = ff1.POSIF.astype (str)
我怎样才能保持第一种格式,这是我感兴趣的格式?输入 0000xxx。
非常感谢

