【问题标题】:Rectangle coordinates drawn on Image in Xamarin Forms在 Xamarin 表单中的图像上绘制的矩形坐标
【发布时间】:2020-07-24 22:48:59
【问题描述】:

我正在尝试在 Xamarin 表单中实现以下用例 (与来自syncfusion的SFImageEditor一起使用,但可以尝试其他选项)

  1. 在编辑器中显示图像。

  2. 显示一个初始矩形。

  3. 用户调整矩形的大小以最适合并点击“开始”。

  4. 需要捕获此矩形相对于图像的坐标。

  5. 发送图像和矩形坐标以供进一步处理。

有人可以提供第 4 步的指导以识别矩形的坐标吗? (X Y 高度宽度)或(4 个角的坐标)。任何一种格式都可以。 感谢您的帮助。

使用 Syncfusion 在 Xamarin.Forms 中设置 SFImageEditor 的代码。

Xaml 代码

<imageeditor:SfImageEditor   x:Name="present_image"     >
    <imageeditor:SfImageEditor.ToolbarSettings>
       <imageeditor:ToolbarSettings IsVisible="True"   />
    </imageeditor:SfImageEditor.ToolbarSettings>
</imageeditor:SfImageEditor>

后面的代码

public ImgEditPage( )
{
    InitializeComponent();          
    var origImage = ImageSource.FromUri(
            new Uri("https://xxx.xx/xxxxxx.jpg")); ;
    present_image.Source = origImage; 
}

这将在编辑器窗口中打开图像,编辑器允许绘制一个矩形对象。 用户可以点击按钮绘制矩形 我要获取用户绘制的矩形的坐标。

【问题讨论】:

  • 在不知道如何实现此功能的详细信息的情况下,无法就特定步骤为您提供任何具体指导。如果您已经计划使用 SF,那么这可能是一个重要因素。否则我会建议使用 SkiaSharp
  • syncfusion 有 sfImageEditor 组件。
  • 在 SfImageEditor 中似乎没有这样的 api 可以获取在 Image 上绘制的矩形坐标。

标签: c# xamarin.forms syncfusion


【解决方案1】:

我们想让您知道,您可以使用 Bounds 属性获取添加到图像上的矩形的坐标。选择形状时,将触发 ItemSelected 事件。由此,您将获得具有 Bounds 属性的选定形状的设置。 Bounds 的值是百分比,shape frame 的值应该在 0 到 100 之间。更多信息请参考下面的链接。

https://www.syncfusion.com/kb/8880/how-to-show-dimension-of-shapes-while-resizing

https://help.syncfusion.com/xamarin/image-editor/shapes#pensettings

您可以使用 ActualImageRenderedBounds 属性获取在 SfImageEditor 控件中呈现的图像的实际边界。

可以通过OriginalImageSize的属性获取原始图片尺寸。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多