为啥我复制以后赋予后的文字变大了好多倍,170变成了700多的字

使用问题 · 222 次浏览
用户Dm2k91sRAwA 创建于 2025-06-13 15:45

为啥我复制以后赋予后的文字变大了好多倍,170变成了700多的字


回复内容
北京林或西 2025-06-13 22:20
#1

上传调试日志。

失落叶子云养猫 6天12小时前
#2
我好像也是这个问题
 
Win-10.0.22631.0 Quicker-1.44.31.0 动作ID:17193377-8fe6-4b66-a8d0-2ad01840436a 来源动作:c36b2569-519f-4ed9-f194-08dd10b8461d v7
Log文件路径:C:\Users\EDY\AppData\Local\Temp\quicker_PS文本格式刷_025241-461_log.html 定位文件 复制文件 上传并复制网址
开始执行动作:PS文本格式刷 2025-12-01 14:52:41
3动作初始化
[状态]结果文本图层内容:买厨电享至高6期分期购\n 字体名称:FZLTZHJW--GB1-0\n 字号:51.56\n 行距:自动\n 字符间距:50\n 基线偏移:0.0\n 水平缩放:100%\n 垂直缩放:100%\n 文本颜色:#FFFFFF\n 是否启用粗体:false\n 是否启用斜体:true\n 是否启用下划线:false\n 是否启用删除线:false\n 是否启用全部大写:false
[状态]文本图层内容买厨电享至高6期分期购
[状态]字体名称FZLTZHJW--GB1-0
[状态]字号51.56
[状态]行距null
[状态]字符间距50
[状态]基线偏移0.0
[状态]水平缩放100
[状态]垂直缩放100
[状态]文本颜色#FFFFFF
[状态]是否启用粗体false
[状态]是否启用斜体true
[状态]是否启用下划线false
[状态]是否启用删除线false
[状态]是否启用全部大写false
 
30运行子程序“动作更新提示 v2”
[in]失败后停止【值/表达式】True
[in]子程序【值/表达式】@@3d38252c-367e-4781-0f63-08d948b298ac@2@动作更新提示
[in]跳过调试输出【值/表达式】True
[in]窗口标题【值/表达式】更新内容
[in]版本标识【值/表达式】002
[in]更新内容【值/表达式】2025年5月28日11:45:43\r\n \r\n 1)优化赋予图层的架构,从DOM改成AM,减少遍历的时间,提高了设置图层的速度。
[in]字体大小【值/表达式】12
耗时:4ms
71步骤组传参使用(2024年12月11日13:50:56)
[in]忽略错误【值/表达式】False
[in]使用多线程【值/表达式】False
[in]调试运行时不输出调试内容【值/表达式】False
 
71.0如果判断条件:$= {quicker_in_param} == "获取文本属性"
[in]如果【值/表达式】False
不符合条件,跳过。
71.1如果判断条件:$= {quicker_in_param} == "赋予文本属性"
[in]如果【值/表达式】False
不符合条件,跳过。
72等待时间等待 100 ms
[in]等待时间【值/表达式】100
[in]等待窗口关闭时取消【值/表达式】False
耗时:104ms
1113显示菜单获取文本属性 赋予文本属性 编辑属性
[in]失败后停止【值/表达式】True
[in]等待菜单关闭【值/表达式】True
[in]字体大小【值/表达式】12
[in]图标大小【值/表达式】16
[in]占用焦点【值/表达式】False
[in]最大高度【值/表达式】0
[in]菜单数据【值/表达式】获取文本属性\r\n 赋予文本属性\r\n 编辑属性
[in]菜单数据【值/表达式】获取文本属性\r\n 赋予文本属性\r\n 编辑属性
[out]选择的菜单项数据=>选择的项获取文本属性
耗时:1008ms
11184如果判断条件:$= String.Equals({选择的项}, "获取文本属性")
[in]如果【值/表达式】True
执行 True 分支, 共 3 步骤
 
11204.0步骤组获取文本属性
[in]忽略错误【值/表达式】False
[in]使用多线程【值/表达式】False
[in]调试运行时不输出调试内容【值/表达式】False
 
11204.0.0步骤组初始化文本
[in]忽略错误【值/表达式】False
[in]使用多线程【值/表达式】False
[in]调试运行时不输出调试内容【值/表达式】False
 
11204.0.0.0注释通过这一步将文本图层初始化,避免出错的发生。
耗时:0ms
11204.0.0.1Adobe系列软件控制初始化文本图层
[in]失败后停止【值/表达式】True
[in]软件名称【值/表达式】Photoshop.Application
[in]操作类型【值/表达式】dojavascript
[in]等待执行结束【值/表达式】True
[in]最长等待时间(ms)【值/表达式】200000
[in]接口失败后,尝试使用程序exe运行脚本文件【值/表达式】False
[in]脚本内容【值/表达式】// 检查是否有选中的图层\r\n if (app.activeDocument && app.activeDocument.activeLayer) {\r\n // 获取当前活动的图层\r\n var layer = app.activeDocument.activeLayer;\r\n \r\n // 检查是否为文本图层\r\n if (layer.kind === LayerKind.TEXT) {\r\n // 获取当前文本内容\r\n var originalText = layer.textItem.contents;\r\n \r\n // 将文本内容重新设置为相同的内容\r\n layer.textItem.contents = originalText;\r\n \r\n // 输出成功信息到变量 v\r\n var v = true; // 表示操作成功\r\n } else {\r\n // 如果选中的图层不是文本图层,返回 false\r\n var v = false; // 表示没有操作\r\n }\r\n } else {\r\n // 如果没有选中的图层,返回 false\r\n var v = false; // 表示没有操作\r\n }\r\n \r\n // 输出变量 v\r\n v;\r\n
[out]脚本输出=>outputtrue
耗时:89ms
12094.0.1步骤组获取文本属性参数
[in]忽略错误【值/表达式】False
[in]使用多线程【值/表达式】False
[in]调试运行时不输出调试内容【值/表达式】False
12094.0.1.0Adobe系列软件控制获取文本图层参数信息
[in]失败后停止【值/表达式】True
[in]软件名称【值/表达式】Photoshop.Application
[in]操作类型【值/表达式】dojavascript
[in]等待执行结束【值/表达式】True
[in]最长等待时间(ms)【值/表达式】200000
[in]接口失败后,尝试使用程序exe运行脚本文件【值/表达式】False
[in]脚本内容【值/表达式】#target photoshop\r\n \r\n // 检查是否选定文本图层\r\n if (app.activeDocument.activeLayer.kind == LayerKind.TEXT) {\r\n var textLayer = app.activeDocument.activeLayer;\r\n \r\n // 获取字号大小的函数\r\n function getTextSize() {\r\n var ref = new ActionReference();\r\n ref.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));\r\n var desc = executeActionGet(ref).getObjectValue(stringIDToTypeID('textKey'));\r\n var textSize = desc.getList(stringIDToTypeID('textStyleRange')).getObjectValue(0).getObjectValue(stringIDToTypeID('textStyle')).getDouble(stringIDToTypeID('size'));\r\n \r\n // 检查是否有缩放变换\r\n if (desc.hasKey(stringIDToTypeID('transform'))) {\r\n var mFactor = desc.getObjectValue(stringIDToTypeID('transform')).getUnitDoubleValue(stringIDToTypeID("yy"));\r\n textSize *= mFactor; // 根据缩放因子调整字号\r\n }\r\n \r\n return textSize;\r\n }\r\n \r\n // 获取文本图层的文本内容\r\n var textContent = textLayer.textItem.contents;\r\n \r\n // 获取文本图层的字体名称\r\n var fontName = textLayer.textItem.font;\r\n \r\n // 获取文档分辨率(DPI)\r\n var documentResolution = app.activeDocument.resolution;\r\n \r\n // 获取文本图层的行距\r\n function getLineSpacing() {\r\n var ref = new ActionReference();\r\n ref.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));\r\n var desc = executeActionGet(ref).getObjectValue(stringIDToTypeID('textKey'));\r\n var textStyle = desc.getList(stringIDToTypeID('textStyleRange')).getObjectValue(0).getObjectValue(stringIDToTypeID('textStyle'));\r\n \r\n // 检查是否有行距属性\r\n if (textStyle.hasKey(stringIDToTypeID('leading'))) {\r\n var leadingValue = textStyle.getDouble(stringIDToTypeID('leading'));\r\n \r\n // 如果存在变换(如缩放),调整行距\r\n if (desc.hasKey(stringIDToTypeID('transform'))) {\r\n var mFactor = desc.getObjectValue(stringIDToTypeID('transform')).getUnitDoubleValue(stringIDToTypeID("yy"));\r\n leadingValue *= mFactor; // 调整行距为缩放后的值\r\n }\r\n \r\n return leadingValue; // 返回调整后的行距\r\n } else {\r\n return -1; // -1 表示自动行距\r\n }\r\n }\r\n \r\n // 获取文本图层的字符间距\r\n function getLetterSpacing() {\r\n var ref = new ActionReference();\r\n ref.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));\r\n var desc = executeActionGet(ref).getObjectValue(stringIDToTypeID('textKey'));\r\n var textStyle = desc.getList(stringIDToTypeID('textStyleRange')).getObjectValue(0).getObjectValue(stringIDToTypeID('textStyle'));\r\n \r\n // 检查是否有字符间距属性\r\n if (textStyle.hasKey(stringIDToTypeID('tracking'))) {\r\n return textStyle.getDouble(stringIDToTypeID('tracking')); // 返回字符间距值\r\n } else {\r\n return 0; // 默认字符间距为 0\r\n }\r\n }\r\n \r\n // 获取基线偏移\r\n function getBaselineShift() {\r\n var ref = new ActionReference();\r\n ref.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));\r\n var desc = executeActionGet(ref).getObjectValue(stringIDToTypeID('textKey'));\r\n var textStyle = desc.getList(stringIDToTypeID('textStyleRange')).getObjectValue(0).getObjectValue(stringIDToTypeID('textStyle'));\r\n \r\n // 获取基线偏移值\r\n if (textStyle.hasKey(stringIDToTypeID('baselineShift'))) {\r\n var baselineShift = textStyle.getDouble(stringIDToTypeID('baselineShift'));\r\n \r\n // 如果存在变换(如缩放),调整基线偏移\r\n if (desc.hasKey(stringIDToTypeID('transform'))) {\r\n var mFactor = desc.getObjectValue(stringIDToTypeID('transform')).getUnitDoubleValue(stringIDToTypeID("yy"));\r\n baselineShift *= mFactor; // 根据缩放因子调整基线偏移\r\n }\r\n \r\n return baselineShift;\r\n } else {\r\n return 0; // 如果没有设置基线偏移,返回0\r\n }\r\n }\r\n \r\n // 判断是否启用了粗体(fauxBold)\r\n function isBold() {\r\n var textItem = textLayer.textItem;\r\n return textItem.fauxBold; // 判断是否为粗体\r\n }\r\n \r\n // 判断是否启用了斜体(fauxItalic)\r\n function isItalic() {\r\n var textItem = textLayer.textItem;\r\n return textItem.fauxItalic; // 判断是否为斜体\r\n }\r\n \r\n // 判断是否启用了下划线\r\n function isUnderline() {\r\n var textItem = textLayer.textItem;\r\n return textItem.underline != UnderlineType.UNDERLINEOFF; // 判断是否为下划线\r\n }\r\n \r\n // 判断是否启用了删除线\r\n function isStrikethrough() {\r\n var textItem = textLayer.textItem;\r\n return textItem.strikeThru != StrikeThruType.STRIKEOFF; // 判断是否为删除线\r\n }\r\n \r\n // 判断是否启用了全部大写\r\n function isAllCaps() {\r\n var textItem = textLayer.textItem;\r\n return textItem.capitalization == TextCase.ALLCAPS; // 判断是否为全部大写\r\n }\r\n \r\n // 获取文本图层的颜色(RGB格式)\r\n function getTextColor() {\r\n var color = textLayer.textItem.color.rgb;\r\n var r = color.red;\r\n var g = color.green;\r\n var b = color.blue;\r\n \r\n // 转换为十六进制颜色值\r\n function rgbToHex(r, g, b) {\r\n return "#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1).toUpperCase();\r\n }\r\n \r\n return rgbToHex(r, g, b); // 返回十六进制色值\r\n }\r\n \r\n // 获取水平和垂直缩放值\r\n var horizontalScale = textLayer.textItem.horizontalScale;\r\n var verticalScale = textLayer.textItem.verticalScale;\r\n \r\n // 获取字号并进行四舍五入\r\n var fontSize = getTextSize();\r\n var roundedFontSize = fontSize.toFixed(2);\r\n \r\n // 获取行距、字符间距和基线偏移\r\n var lineSpacing = getLineSpacing();\r\n var letterSpacing = getLetterSpacing();\r\n var baselineShift = getBaselineShift(); // 获取基线偏移值\r\n var bold = isBold(); // 判断是否启用了粗体\r\n var italic = isItalic(); // 判断是否启用了斜体\r\n var underline = isUnderline(); // 判断是否启用了下划线\r\n var strikethrough = isStrikethrough(); // 判断是否启用了删除线\r\n var allCaps = isAllCaps(); // 判断是否启用了全部大写\r\n \r\n // 如果行距为 -1,表示自动行距\r\n var roundedLineSpacing = lineSpacing === -1 ? "自动" : lineSpacing.toFixed(2);\r\n \r\n // 四舍五入基线偏移到小数点后 1 位\r\n var roundedBaselineShift = baselineShift.toFixed(1);\r\n \r\n // 获取文本颜色\r\n var textColor = getTextColor();\r\n \r\n // 输出结果\r\n var v = "文本图层内容:" + textContent + \r\n "\n字体名称:" + fontName + \r\n "\n字号:" + roundedFontSize + \r\n "\n行距:" + roundedLineSpacing + "" + \r\n "\n字符间距:" + letterSpacing + \r\n "\n基线偏移:" + roundedBaselineShift + "" + \r\n "\n水平缩放:" + (horizontalScale === 100 ? "100%" : horizontalScale + "%") + \r\n "\n垂直缩放:" + (verticalScale === 100 ? "100%" : verticalScale + "%") + \r\n "\n文本颜色:" + textColor + \r\n "\n是否启用粗体:" + bold + \r\n "\n是否启用斜体:" + italic + \r\n "\n是否启用下划线:" + underline + \r\n "\n是否启用删除线:" + strikethrough + \r\n "\n是否启用全部大写:" + allCaps;\r\n \r\n v; // 输出结果\r\n } else {\r\n var v = "当前选中的图层不是文本图层"; // 如果不是文本图层,给出提示\r\n v;\r\n }\r\n
[out]脚本输出=>结果文本图层内容:买厨电享至高6期分期购\n 字体名称:FZLTZHJW--GB1-0\n 字号:51.56\n 行距:自动\n 字符间距:50\n 基线偏移:0.0\n 水平缩放:100%\n 垂直缩放:100%\n 文本颜色:#FFFFFF\n 是否启用粗体:false\n 是否启用斜体:true\n 是否启用下划线:false\n 是否启用删除线:false\n 是否启用全部大写:false
耗时:148ms
13574.1步骤组提示——复制+编辑操作。
[in]忽略错误【值/表达式】False
[in]使用多线程【值/表达式】False
[in]调试运行时不输出调试内容【值/表达式】False
 
13574.1.0自定义窗口提示
[in]失败后停止【值/表达式】True
[in]操作类型【值/表达式】ShowAndWaitClose
[in]窗口标识【值/表达式】yoyo12
[in]窗口XAML代码【值/表达式】<qk:FadeOutWindow\r\n xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"\r\n xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"\r\n xmlns:d="http://schemas.microsoft.com/expression/blend/2008"\r\n xmlns:local="clr-namespace:QuickerSampleProject"\r\n xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"\r\n xmlns:qk="https://getquicker.net"\r\n Title="MessageWindow"\r\n Width="900"\r\n Height="50"\r\n AllowsTransparency="True"\r\n Background="Transparent"\r\n Foreground="White"\r\n SizeToContent="WidthAndHeight"\r\n Topmost="True"\r\n WindowStartupLocation="CenterScreen"\r\n WindowStyle="None"\r\n ShowActivated="False"\r\n ShowInTaskbar="False"\r\n mc:Ignorable="d">\r\n \r\n <Window.Resources>\r\n <!-- 定义按钮的样式 -->\r\n <Style x:Key="ButtonStyle" TargetType="Button">\r\n <!-- 设置按钮的模板 -->\r\n <Setter Property="Template">\r\n <Setter.Value>\r\n <ControlTemplate TargetType="Button">\r\n <!-- 定义按钮的外观 -->\r\n <Border Padding="10" Background="#99000000" BorderBrush="Transparent" BorderThickness="0" CornerRadius="30">\r\n <!-- 使用水平布局来排列图像和文本 -->\r\n <StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center">\r\n <!-- 图像区域,调整图标与文本的间距 -->\r\n <Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Tag}" Width="50" Height="50" VerticalAlignment="Center" Margin="3"/>\r\n <!-- 文本区域,文本字号设置为30px,减小文本和图标之间的空隙 -->\r\n <TextBlock Text="{TemplateBinding Content}" HorizontalAlignment="Center" FontFamily="微软雅黑" FontWeight="Regular" FontSize="20" Foreground="White" VerticalAlignment="Center" Margin="5,0,0,0"/>\r\n </StackPanel>\r\n </Border>\r\n </ControlTemplate>\r\n </Setter.Value>\r\n </Setter>\r\n <!-- 设置按钮的宽度和高度 -->\r\n </Style>\r\n </Window.Resources>\r\n \r\n <!-- 窗口的主内容区域 -->\r\n <Grid Margin="10">\r\n <!-- 定义外部边框,设置圆角为30,透明度为60% -->\r\n <Border Padding="1" Background="#99000000" CornerRadius="30">\r\n <!-- 使用Grid布局来自动调整按钮大小 -->\r\n <Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">\r\n <!-- 按钮,确保按钮拉伸并填充整个窗口,同时保持圆角一致 -->\r\n <Button x:Name="button1" qk:Att.Action="close:miadododo" BorderThickness="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="0"\r\n Tag="https://files.getquicker.net/_icons/C27659110706C6672BA52C9DC91136409FFF0723.png" \r\n Content="已获取并保存。点击此处可查看其文本属性。" Style="{StaticResource ButtonStyle}"/>\r\n </Grid>\r\n </Border>\r\n </Grid>\r\n </qk:FadeOutWindow>\r\n
[in]窗口位置【值/表达式】BottomCenter
[in]数据映射【值/表达式】
[in]辅助C#代码【值/表达式】
[in]窗口尺寸/位置【值/表达式】
[in]激活模式【值/表达式】NotActivated
[in]事件【值/表达式】
[in]自动关闭时间(S)【值/表达式】3
[in]失去焦点后关闭窗口【值/表达式】false
[out]窗口结果=>自定义窗口按钮
耗时:3494ms
48524.1.1步骤组按钮
[in]忽略错误【值/表达式】False
[in]使用多线程【值/表达式】False
[in]调试运行时不输出调试内容【值/表达式】False
48524.1.1.0如果判断条件:$= !String.IsNullOrEmpty({自定义窗口按钮})
[in]如果【值/表达式】False
不符合条件,跳过。
48524.2停止(return)默认:停止动作或从子程序返回 (标记为出错:0)
[in]操作类型【值/表达式】default
[in]提示消息【值/表达式】
[in]标记为出错【值/表达式】False
[in]返回值【值/表达式】
停止动作:停止动作(默认)
耗时:0ms
检测到了中止标志(StopFromCode),停止后续步骤执行。
检测到了中止标志(StopFromCode),停止后续步骤执行。
动作结束。耗时:4853.0301ms
回复主贴