Как запустить Aspose.CAD в Multi-platform App UI(MAUI)

Предварительные требования

  • Visual Studio 2022.
  • Используется .NET 7 SDK в примере.

MAUI

.NET Multi-platform App UI (.NET MAUI) - это кросс-платформенный фреймворк для создания нативных мобильных и настольных приложений с C# и XAML. С помощью .NET MAUI вы можете разрабатывать приложения, которые могут работать на Android, iOS, macOS и Windows из одной общей кодовой базы.

.NET MAUI является опенсорсным и представляет собой эволюцию Xamarin.Forms, расширенной от мобильных к настольным сценариям, с элементами управления UI, которые были заново разработаны для производительности и расширяемости. Если вы ранее использовали Xamarin.Forms для создания кросс-платформенных пользовательских интерфейсов, вы заметите много схожестей с .NET MAUI. Однако есть также некоторые различия. Используя .NET MAUI, вы можете создавать многоплатформенные приложения с использованием одного проекта, но при необходимости вы можете добавить специфичный для платформы исходный код и ресурсы. Одна из ключевых целей .NET MAUI - дать вам возможность реализовать как можно больше вашей логики приложения и макета UI в одной кодовой базе.

Установка MAUI

  1. Чтобы создать приложения .NET MAUI, вам потребуется последняя версия Visual Studio 2022
  2. Установите Visual Studio или измените вашу существующую установку, и установите рабочую нагрузку разработки .NET Multi-platform App UI с ее стандартными дополнительными вариантами установки:
    Visual installer

Создание проекта

  1. Запустите Visual Studio. В начальном окне нажмите Создать новый проект для создания нового проекта:
    Create project
  2. В окне Создать новый проект выберите MAUI в выпадающем списке Все типы проектов, выберите шаблон .NET MAUI App и нажмите кнопку Дальше:
    Select project type
  3. В окне Настроить ваш новый проект введите имя вашего проекта, выберите подходящее место для него и нажмите кнопку Дальше:
    Select project path
  4. В окне Дополнительная информация выберите версию .NET, на которую вы хотите нацелиться, и нажмите кнопку Создать:
    Target Framework
  5. Дождитесь создания проекта и восстановления его зависимостей
  6. Установите последнюю версию Aspose.CAD из NuGet:
    NuGet
  7. Замените код в MainPage.xaml
    <?xml version="1.0" encoding="utf-8" ?>
    <ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
                 xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                 x:Class="MauiApp1.MainPage">
    
        <ScrollView>
            <VerticalStackLayout
                Spacing="25"
                Padding="30,0"
                VerticalOptions="Center">
    
                 <Label 
                Text="Добро пожаловать в .NET MAUI!"
                VerticalOptions="Center" 
                HorizontalOptions="Center" />
    
                <Image
                    x:Name="Base64DecodedImage"
                    Source="dotnet_bot.png"
                    SemanticProperties.Description="Милый бот dot net, машущий вам!"
                    HeightRequest="600"
                    HorizontalOptions="Center" />
    
                <Label
                    Text="Привет, мир!"
                    SemanticProperties.HeadingLevel="Level1"
                    FontSize="32"
                    HorizontalOptions="Center" />
    
                <Label
                    Text="Добро пожаловать в .NET Multi-platform App UI"
                    SemanticProperties.HeadingLevel="Level2"
                    SemanticProperties.Description="Добро пожаловать в dot net Multi platform App UI"
                    FontSize="18"
                    HorizontalOptions="Center" />
    
                <Button
                    x:Name="FileSelectrBtn"
                    Text="Выбрать файл"
                    SemanticProperties.Hint="Подсчитывает количество нажатий кнопки"
                    Clicked="OnSelectFileClicked"
                    HorizontalOptions="Center" />
    
                <Button
                    x:Name="ClearBtn"
                    Text="Очистить"
                    SemanticProperties.Hint="Подсчитывает количество нажатий кнопки"
                    Clicked="OnCleanClicked"
                    HorizontalOptions="Center" />
    
            </VerticalStackLayout>
        </ScrollView>
    </ContentPage>
  8. Добавьте новые методы в MainPage.xaml.cs
    private void OnCleanClicked(object sender, EventArgs e)
    {
        Base64DecodedImage.Source = "dotnet_bot.png";
    }
    private async void OnSelectFileClicked(object sender, EventArgs e)
    {
        var result = await FilePicker.PickAsync(new PickOptions()
        {
            PickerTitle = "any"
        });
        if (result == null)
        {
            return;
        }
        var stream = await result.OpenReadAsync();
        var img = Aspose.CAD.Image.Load(stream);
        var ms = new MemoryStream();
        await img.SaveAsync(ms, new PngOptions());
        Base64DecodedImage.Source = ImageSource.FromStream(() => ms);
    }

Отладка на Windows машине

  1. В панели инструментов Visual Studio используйте выпадающий список Целевой отладчик для выбора Framework, затем выберите элемент net7.0-windows:
    Debug Target
  2. В панели инструментов Visual Studio нажмите кнопку Windows Machine, чтобы построить и запустить приложение:
    Start Debugging on Windows Machine
  3. В работающем приложении нажмите кнопку “Выбрать файл” несколько раз и наблюдайте, как увеличивается количество нажатий кнопки:
    Home Page
  4. Выберите необходимый файл и нажмите открыть:
    Select file
  5. После обработки файла на экране должно появиться изображение конвертированного файла:
    The result of debugging windows

Установка эмулятора Android

  1. В панели инструментов Visual Studio используйте выпадающий список Целевой отладчик для выбора Эмуляторов Android и затем выберите элемент Android Emulator
  2. В панели инструментов Visual Studio нажмите кнопку Android Emulator:
    Start install Emulator button
  3. В окне Лицензионное соглашение Android SDK нажмите кнопку Принять:
    Android SDK-License Agreement
  4. В окне Лицензионное соглашение Android SDK нажмите кнопку Принять:
    Android SDK ARM -License Agreement
  5. В диалоговом окне Управление учетными записями пользователей нажмите кнопку Да:
    SDK Manager
  6. В окне Принятие лицензии нажмите кнопку Принять:
    SDK ARManagerM -License Agreement
  7. В панели инструментов Visual Studio нажмите кнопку Android Emulator:
    Start install Emulator button
  8. В диалоговом окне Управление учетными записями пользователей нажмите кнопку Да:
    Android Device Manager
  9. В окне Новое устройство нажмите кнопку Создать:
    New Android Device
  10. Закройте окно Менеджер устройств Android

Отладка с эмулятором Android

  1. В панели инструментов Visual Studio нажмите кнопку Pixel 5 - API 33 (Android 13.0 - API 33), чтобы построить и запустить приложение:
    Select android Emulator
  2. В работающем приложении в эмуляторе Android нажмите кнопку “Выбрать файл” несколько раз и наблюдайте, как увеличивается количество нажатий кнопки:
    Android Emulator Home Page
  3. Выберите необходимый файл и нажмите выбрать:
    Select file in andoid
  4. После обработки файла на экране должно появиться изображение конвертированного файла:
    The result of debugging android

Больше примеров

Для получения дополнительных примеров того, как вы можете использовать Aspose.CAD в Docker, смотрите пример.

См. также.