Calabonga.AlbumsManager 1.0.0-beta.1

This is a prerelease version of Calabonga.AlbumsManager.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Calabonga.AlbumsManager --version 1.0.0-beta.1
NuGet\Install-Package Calabonga.AlbumsManager -Version 1.0.0-beta.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Calabonga.AlbumsManager" Version="1.0.0-beta.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Calabonga.AlbumsManager --version 1.0.0-beta.1
#r "nuget: Calabonga.AlbumsManager, 1.0.0-beta.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Calabonga.AlbumsManager as a Cake Addin
#addin nuget:?package=Calabonga.AlbumsManager&version=1.0.0-beta.1&prerelease

// Install Calabonga.AlbumsManager as a Cake Tool
#tool nuget:?package=Calabonga.AlbumsManager&version=1.0.0-beta.1&prerelease

AlbumeManager (Фотоальбом на C#)

Версии

1.0.0-beta.1 от 2024-01-27

  • Первый релиз.

Описание

Фотоальбом позволяет получить папку с фотографиями для удобного просмотра с разбиением на месяцы или сортировкой по наименованию файлов. Просмотр фотографий можно настроить удобным образом.

Реализация задачи в виде библиотеки (nuget-пакет, Calabonga.AlbumManager), который можно использовать на разных платформах.

Фотоальбом конфигурируется через AlbumManagerBuilder, работа которого построена на базе подключенных модулей (процессоров). Процессор – своего рода обработчик данных на определенном этапе работы.

Опционально можно подключить к фотоальбому следующие процессоры (обработчики) фотографий и папок:

  • AlbumCreator - инициализирует данные (изображения) для работы AlbumManager. Возможны разные варианты инициализации:
    • FolderAlbumCreator
    • FolderTreeAlbumCreator
    • RemoteStorageAlbumCreator
  • Представление для отображение изображений. Возможно подключение одного из списка:
    • DefaultViewer
    • ThumbnailViewer
    • CalendarViewer
    • AlphabetViewer
    • CarouselViewer
  • MetadataReader - определяет где и как, и вообще нужно ли получать метаданные к фотографиям. Возможные следующие варианты:
    • DefaultMetadataReader
    • TextFileMetadataReader
    • DatabaseMetadataReader
  • AlbumEditor - Редактор изображений в фотоальбоме. По умолчанию, редактора альбома не подключено, возможности редактировать нет.
  • AlbumUploader - загрузчик изображений, который позволяет дополнить фотоальбом новыми фотографиями.

Список функциональности (TODO)

Менеджер файлов

AlbumManager - главный объект для запуска процессов: поиск фото, сортировки, фильтрации и т.д. и т.п. AlbumManager умеет настраивать представления для выдачи картинок

Генератор альбомов AlbumCreator

  • FolderAlbumCreator - генератор альбома по умолчанию. Находит в папке изображения, которые преобразуются в альбом для просмотра.
  • FolderTreeAlbumCreator - генератор альбома для вложенных папок с изображениями. Находит в папках изображения, которые преобразуются в альбом для просмотра.
  • RemoteStorageAlbumCreator - обращается к удаленному хранилищу изображений для генерации альбома для просмотра.

Представление для просмотра

  • DefaultViewer - просмотр всех изображений в папке одним списком, включая вложенные папки всех уровней.
  • ThumbnailViewer - просмотр всех изображений в папке одним списком, включая вложенные папки всех уровней.
  • CalendarViewer - просмотр всех изображений в папке одним списком, сгруппированных по месяцам и года дат их создания.
  • AlphabetViewer - просмотр всех изображений в папке одним списком, сгруппированных по первым буквам названий файлов.
  • CarouselViewer - просмотр случайного количества изображений в папке, выбранных на основе указанных параметров.

Метаданные для изображений

MetadataReader - ViewModel c метаданными. Наличие текстового файла с именем файла загружается как метаданные: "наименование","описание", "метки" и т.д. и т.п.

Примеры конфигураций MetadataReader:

  • DefaultMetadataReader
  • TextFileMetadataReader
  • DatabaseMetadataReader

Редактор изображений

AlbumEditor - редактор изображений. В редакторе изображений можно создать/изменить метаданные изображений, а также можно удалить выбранные файлы вместе с их метаданными.

Загрузчик изображений

AlbumUploader - загрузка изображений. Загрузчик позволяет загрузить изображения и "разложить" их в соответствии с настройками AlbumManager, например, с размещением в соответствующие папки.

Видео о создании nuget-пакета

  1. Фотоальбом на C# (часть 1)
  2. Фотоальбом на C# (часть 2)
  3. Фотоальбом на C# (часть 3)
  4. Фотоальбом на C# (часть 4)
  5. Фотоальбом на C# (часть 5)
  6. Фотоальбом на C# (часть 6)
  7. Фотоальбом на C# (часть 7)
  8. Фотоальбом на C# (часть 8)
  9. Фотоальбом на C# (часть 9)
  10. Фотоальбом на C# (часть 10)
  11. Фотоальбом на C# (часть 11)
  12. Фотоальбом на C# (часть 12)
  13. Фотоальбом на C# (часть 13)
  14. Фотоальбом на C# (часть 14)
  15. Фотоальбом на C# (часть 15)
  16. Фотоальбом на C# (часть 16)
  17. Фотоальбом на C# (часть 17)
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 128 1/27/2024
1.0.0-beta.1 45 1/27/2024

First release