找回密码
 加入
搜索
查看: 2205|回复: 17

[AU3基础] [已解决]如何控制显示字体高瘦样式?

[复制链接]
发表于 2019-8-3 19:48:49 | 显示全部楼层 |阅读模式
本帖最后由 chishingchan 于 2019-8-5 21:12 编辑

最近想编写一个企业章之类的工具,于是搜索到一篇:au3图章生成器 带源码http://www.autoitx.com/forum.php ... hlight=%CD%BC%D5%C2
借用了原贴的五角星绘制代码!

发现上弧度的字体是正常状态,文字显示没有像企业章一样瘦身(主要是这个问题)。而且那个粗糙版连字符也没有旋转正确。
求高手指导一下,谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2019-8-5 10:08:50 | 显示全部楼层
加个字体选择






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

点评

阁下这个比 GTO250 的有改进,源码能否分享一下?  发表于 2019-8-5 11:17
 楼主| 发表于 2019-8-5 11:10:47 | 显示全部楼层
本帖最后由 chishingchan 于 2019-8-5 11:21 编辑

正常的企业章的字体是经过拉伸的,字体选择这个功能我早就想到了。
看阁下的图章样版拿来玩玩是可以的,跟正规的规格有差距!
企业章的资料我也看了,想弄个这样的:
外围轮廓选择:4.2mm 和 4.0 mm 可选:双轮廓型(1mm + 0.1mm)、单轮廓型(1mm)、憜圆型;如果还想增强功能的加个四方型、签名型;
可选显示中心图像:五角星(直径12MM 13MM 14MM )、镰刀锤子、国徽;
上弧文字:
可选 下弧文字:
可选 下面文字:
如果能加上蒙板效果就更好!


发表于 2019-8-5 11:33:50 | 显示全部楼层
#include <GDIPlus.au3>

_Example()

Func _Example()
        GUICreate('')
        GUISetState()
        Local $iW_Txt = 80, $iH_Txt = 300
        GUICtrlCreateLabel('', 50, 50, $iW_Txt, $iH_Txt)
        Local $hPicWnd = GUICtrlGetHandle(-1)

        _GDIPlus_Startup()
        Local $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hPicWnd)
        _GDIPlus_GraphicsSetSmoothingMode($hGraphic, $GDIP_SMOOTHINGMODE_HIGHQUALITY)
        Local $hBrush = _GDIPlus_BrushCreateSolid(0xFFDD2200)
        Local $hPath = _GDIPlus_PathCreate()
        Local $hFamily = _GDIPlus_FontFamilyCreate('宋体')
        Local $tLayout = _GDIPlus_RectFCreate()
        _GDIPlus_PathAddString($hPath, '瘦', $tLayout, $hFamily)
        Local $aBounds = _GDIPlus_PathGetWorldBounds($hPath)
        Local $hMatrix = _GDIPlus_MatrixCreate()
        _GDIPlus_MatrixTranslate($hMatrix, -$aBounds[0], -$aBounds[1])
        _GDIPlus_MatrixScale($hMatrix, $iW_Txt / $aBounds[2], $iH_Txt / $aBounds[3], True)
        _GDIPlus_PathTransform($hPath, $hMatrix)
        _GDIPlus_GraphicsFillPath($hGraphic, $hPath, $hBrush)

        Do
        Until GUIGetMsg() = -3

        _GDIPlus_MatrixDispose($hMatrix)
        _GDIPlus_FontFamilyDispose($hFamily)
        _GDIPlus_PathDispose($hPath)
        _GDIPlus_BrushDispose($hBrush)
        _GDIPlus_GraphicsDispose($hGraphic)
        _GDIPlus_Shutdown()
EndFunc   ;==>_Example

点评

非常给力!谢谢a大!  发表于 2019-8-5 20:49

评分

参与人数 1威望 +10 金钱 +300 贡献 +100 收起 理由
chishingchan + 10 + 300 + 100 很给力!

查看全部评分

 楼主| 发表于 2019-8-5 20:55:37 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2019-8-5 22:08:06 | 显示全部楼层
发表于 2019-8-5 22:55:32 | 显示全部楼层
字体瘦了,五星就显不出来了

点评

看看将次序倒转试试, 即先绘单位名称, 再给五角星.  发表于 2019-8-5 23:10
发表于 2019-8-6 15:50:33 | 显示全部楼层
本帖最后由 chzj589 于 2019-8-6 18:21 编辑

有点难,折腾了两天,只能达到这种效果---------






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

点评

文字有黑色轮廓,去掉会更好!  发表于 2019-8-15 13:59
发表于 2019-8-9 00:12:27 | 显示全部楼层
不错支持一下
发表于 2019-8-19 08:39:03 | 显示全部楼层

那是以前版本出的错




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

点评

很好,比我想的功能还多!还带日期(像银行用钢印)  发表于 2019-8-19 09:27
 楼主| 发表于 2019-8-19 09:28:36 | 显示全部楼层
chzj589 发表于 2019-8-19 08:39
那是以前版本出的错

何时出弄一个DEMO让我试试?
 楼主| 发表于 2019-8-19 09:30:01 | 显示全部楼层
chzj589 发表于 2019-8-19 08:39
那是以前版本出的错

我看图已经看到有毛病了!上弧文字旋转角度不对!
发表于 2019-8-19 11:14:08 | 显示全部楼层
本帖最后由 chzj589 于 2019-8-19 11:16 编辑
chishingchan 发表于 2019-8-19 09:28
何时出弄一个DEMO让我试试?

http://www.autoitx.com/forum.php ... 504&page=7#lastpost
这里有代码。这只能玩玩,真要用,去下载<WinSealXP80>

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-23 20:46 , Processed in 0.109677 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表