问题标签 [scaletransform]
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.
c# - WPF 画布缩放/变换以适应
我重新发布这个问题,因为我上次没有得到太多回应,希望一些重新措辞可能会有所帮助......
基本上我要做的是创建一个数据绑定画布,它将自动缩放其内容以“填充”可用空间。有点像缩放以适应操作。不幸的是,我的 WPF 技能还不是很强大,我正在努力研究如何完成最后一部分。我已经按照一些数据绑定示例来绑定画布,但不确定它是否错误并阻碍了我。
目前我有两个基本问题,具体取决于我尝试解决解决方案的方式,或者:
- 如果可能使用转换,我不知道如何通过 XAML 自动重新缩放画布。
- 我似乎无法在后面的代码中引用画布,我猜是因为它是 ItemsControl 的一部分?
我正在尝试实现的一个示例,我有 AI 想要尝试获得 B:
(删除了指向 img 的过期链接)
我目前使用的代码非常简单,只需创建具有给定坐标的 4 个点,以及另一个视图模型来包装这些点。
然后 PointCollectionViewModel 用作我的 AutoResizingCanvas 的 DataContent,它具有以下 XAML 来实现绑定:
wpf - WPF 为什么我的 ScaleTransform 冻结了,我该如何绑定它?
我有一个非常简单的用户控件,我想ScaleTransform
在后面的代码中将属性绑定到 DP,如下所示:
然后在后面的代码中我这样做:
但我收到一条错误消息:
无法在对象“...”上设置属性,因为它处于只读状态。
所以我把它改成:
但现在这实际上什么也没做......我的画布上没有任何比例。
然而
如果我删除绑定ScaleTransform
并将其作为空 XAML 元素:
然后在我的代码中我这样做:
有用!我得到了应用的规模
所以2个问题:
- 为什么我的Transform
Frozen
是第一位的? - 为什么我克隆转换时绑定不起作用?
谢谢大家!
更新:
这是DP的定义:
silverlight - XAML:当子对象的 ScaleTransform 变大时,让 ScrollViewer 显示滚动条
我正在为我的 Silverlight 3 应用程序中的某些文档制作一种“打印预览”控件。我在 ScrollViewer 中有一个 Canvas(用于显示文档),并且我有放大/缩小按钮来控制 Canvas.RenderTransform 属性的 ScaleTransform 的 X 和 Y Scale 属性。我希望 ScrollViewer 的滚动条在我“放大”到足以使画布在 ScrollViewer 区域中不再可见时显示出来,但似乎它们仅根据画布本身的宽度/高度显示,不管是否放大。
任何人都可以帮忙吗?
wpf - 按钮上的 xaml(在 controltemplate 中)缩放转换以执行“缩放”
我有一个带有图像的按钮,它的样式如下:
按钮如下:
问题是当我的鼠标经过时宽度不会改变。(或者至少 - 图像的宽度不......)
我相信我可以使用“缩放”转换来放大按钮及其所有内容?我怎么会在这里...?
谢谢。
.net - .NET Graphics.ScaleTransform 将打印作业转换为位图。还有其他缩放文本的方法吗?
我Graphics.ScaleTransform
用来拉伸文本行,使它们适合页面的宽度,然后打印该页面。但是,这会将打印作业转换为位图 - 对于具有许多页面的打印,这会导致打印作业的大小上升到令人讨厌的比例,并极大地减慢打印速度。
如果我不这样缩放,打印作业仍然非常小,因为它只是向打印机发送文本打印命令。
Graphics.ScaleTransform
我的问题是,除了使用拉伸文本的宽度之外,还有其他方法吗?
下面是演示这一点的示例代码(将被调用Print.Test(True)
并Print.Test(False)
显示缩放对打印作业的影响):
更新:我改为使用与 GDI 调用的互操作。这是相关代码;GDI 类充满了我从http://pinvoke.net/的 wiki 复制的相关函数和常量的定义。
wpf - 图像的缩放变换
我正在尝试将图像的大小增加 20。所以我正在使用 ScaleTransform,如下所示..但以下代码不执行任何缩放转换..任何帮助将不胜感激...
wpf - ScaleTransform and CenterX
I have the following code
In the UserControl I animate the ScaleTranform to 1. I want UserControl to "grow" from its center, but it "grows" from the upper left corner of it. The values in CenterX and CenterY do nothing. How can I make it Scale as I want?
wpf - ScaleTransform 非线性变换
我正在使用缩放变换来允许用户调整控件的大小。但是发生的情况是,当您开始移动鼠标时,控件会跳转到新的大小,然后会奇怪地缩放。您将鼠标从起始位置移动得越远,尺寸的增加就越大。
我希望它是我计算要应用的比例的方式。这是代码:
更新:现在使用 XAML
python - 重新绘制时放大到 Clutter CairoTexture
我正在使用 python-clutter 1.0
我的问题是挑战的形式
编写代码以允许通过按键放大到 CairoTexture 演员,在步骤中,可以(通过 cairo)重新绘制每个演员,以便图像保持高分辨率但仍按预期缩放,无需重新调整演员的大小。
想想 Inkscape 之类的东西,以及如何放大矢量;矢量如何在任何放大倍率下保持干净。将一条路径(例如一组 cairoline_to
命令)放在 CairoTexture actor 上,然后让相同的技巧发生。
更多详情
我的目标是使用一组演员的小型 SVG 编辑器。每个演员都致力于一条道路。我通过使用“缩放”SomeGroup.set_depth(z)
然后使 z 更大/更小。到目前为止一切都很好。然而,演员离相机越近,纹理被拉伸得越多以适应他们新的外观尺寸。
我似乎无法找到让 Clutter 做到这两点的方法:
- 让演员的实际尺寸保持不变(即开始时的尺寸。)
- 将其底层表面换成较大的表面(放大时),然后我可以将路径重新绘制到上面(并使用 cairo 矩阵来执行上下文的缩放。)
如果我使用set_size
or set_surface_size
,演员会变大,这是不希望的。我只希望它的表面(基础数据)变得更大。
(我不确定这个术语,也许是 mipmapping?)
换句话说:多边形越来越大,增加其纹理数组的大小,以便它可以映射到更大的多边形上。
我什至尝试过通过保持第二个表面(使用 pycairo)来结束混乱,将其重新创建为演员的表观大小(get_transformed_size
),然后我使用混乱set_from_rgb_data
并将其指向我的第二个表面,强制重新表面的大小,但不是演员的尺寸。
这样做的问题是a)混乱忽略了新的尺寸,只吸收了旧的宽度/高度,b)RGBA 与 ARGB32 的东西会导致颜色崩溃。
我对任何替代想法持开放态度,我希望我站在树林里想念所有的树!
\d
silverlight - Silverlight scaletransform 调整滚动条
我有以下 UI 元素层次结构:UserControl>ScrollViewer>Canvas。我在画布上画了很多东西,它变得比 UserControl 大,此时 ScrollViewer 显示滚动条。到现在为止还挺好。现在我将 ScaleTransform 应用到 Canvas(比如 2.0,使所有内容都变大一倍)。但是,我的滚动条无法调整,所以我现在只能在放大的画布上滚动一半。当我将 scaletransform 应用于 ScrollViewer 中显示的画布时,如何让我的 ScrollViewer 滚动条进行调整?