VintaSoft Imaging .NET SDK может быть локализован на любой язык.
SDK содержит локализованные VintaSoft .NET сборки и VintaSoft WinForms демо проекты, которые локализованы на немецкий язык, в качестве примера того, что SDK можно локализовать на любой язык.
Также SDK содержит локализованные VintaSoft ASP.NET Core демо проекты, которые локализованы на 32 языка, в качестве примера того, что решение SDK для веб можно локализовать на любой язык.
Если вы хотите локализовать строковые константы и UI-контролы в VintaSoft .NET сборке, пожалуйста прочитайте как это сделать в разделе "Локализация VintaSoft .NET сборки" ниже в этой статье.
Если вы хотите локализовать строковые константы и UI в VintaSoft WinForms демо проекте, пожалуйста прочитайте как это сделать в разделе "Локализация VintaSoft WinForms демо проекта" ниже в этой статье.
Если вы хотите локализовать строковые константы и UI в VintaSoft ASP.NET демо проекте, пожалуйста прочитайте как это сделать в разделе "Локализация VintaSoft ASP.NET демо проекта" ниже в этой статье.
Локализация VintaSoft .NET сборки
Все VintaSoft .NET сборки имеют английскую локализацию.
Также VintaSoft Imaging .NET SDK предоставляет возможность локализовать следующие VintaSoft .NET сборки (с использованием сопутствующих сборок ресурсов) на любой язык:
- Vintasoft.Imaging.dll
- Vintasoft.Imaging.UI.dll
- Vintasoft.Imaging.Annotation.Dicom.dll
- Vintasoft.Imaging.Annotation.Dicom.UI.dll
- Vintasoft.Imaging.Annotation.Dicom.Wpf.UI.dll
- Vintasoft.Imaging.Dicom.dll
- Vintasoft.Imaging.Dicom.Mpr.dll
- Vintasoft.Imaging.Dicom.Mpr.UI.dll
- Vintasoft.Imaging.Dicom.Mpr.Wpf.UI.dll
- Vintasoft.Imaging.Dicom.UI.dll
- Vintasoft.Imaging.Dicom.Wpf.UI.dll
- Vintasoft.Imaging.Pdf.dll
- Vintasoft.Imaging.Pdf.JavaScript.dll
- Vintasoft.Imaging.Pdf.UI.dll
- Vintasoft.Imaging.Pdf.Wpf.UI.dll
Если вы хотите локализовать Vintasoft .NET сборку, которой нет в списке выше, сообщите нам об этом и мы предоставим возможность локализовать необходимую Vintasoft .NET сборку.
Установщик VintaSoft Imaging .NET SDK предоставляет вспомогательные сборки для немецкого языка, которые расположены в папке "{SdkInstallPath}\Imaging .NET v12.2\Bin\DotNetX\AnyCPU\de\".
Если вы хотите локализовать VintaSoft .NET сборку из списка выше, например Vintasoft.Imaging.Pdf.dll, вам необходимо выполнить следующие действия:
- Извлечь файл ресурса "Vintasoft.Imaging.Pdf.Localization.Strings.resources" с константными строками из сборки Vintasoft.Imaging.Pdf.dll.
Вот C# код консольного приложения, которое позволяет извлечь файл ресурса "Vintasoft.Imaging.Pdf.Localization.Strings.resources" из сборки Vintasoft.Imaging.Pdf.dll:
namespace ConsoleApp1
{
internal class Program
{
static void Main(string[] args)
{
string dotNetAssemblyFileName = @"D:\VintaSoft\Imaging .NET v12.2\Bin\DotNet7\AnyCPU\Vintasoft.Imaging.Pdf.dll";
string resourceFileName = "Vintasoft.Imaging.Pdf.Localization.Strings.resources";
ExtractBinaryResourceFromDotNetAssembly(dotNetAssemblyFileName, resourceFileName);
}
static void ExtractBinaryResourceFromDotNetAssembly(string dotNetAssemblyFileName, string resourceFileName)
{
System.Reflection.Assembly assembly = System.Reflection.Assembly.LoadFile(dotNetAssemblyFileName);
System.IO.Stream resourceStream = assembly.GetManifestResourceStream(resourceFileName);
byte[] resourceStreamBytes = new byte[resourceStream.Length];
resourceStream.Read(resourceStreamBytes, 0, resourceStreamBytes.Length);
System.IO.File.WriteAllBytes(resourceFileName, resourceStreamBytes);
}
}
}
- Сконвертировать извлеченный файл ресурса "Vintasoft.Imaging.Pdf.Localization.Strings.resources" в файл .resx. Это можно сделать с помощью утилиты ResGen.exe.
Вот командная строка, которая позволяет сконвертировать .NET бинарный файл ресурса в файл .resx:
"{Path_to_ResGen.exe_file}\ResGen.exe" Vintasoft.Imaging.Pdf.Localization.Strings.resources Strings.resx
- Создать файл Strings.resx file с константными строками, которые переведены на нужный язык, например на русский язык:
- Переименовать файл String.resx в файл Strings.ru.resx.
- Открыть файл Strings.ru.resx в любом текстовом редакторе и перевести константные строки (строки в тегах "value") с английского языка на русский язык.
- Создать вспомогательную .NET сборку, которая содержит переведенные строковые константы:
- Создать папку "Vintasoft.Imaging.Pdf.ru.resources" и перейти в папку.
- Создать файл "Vintasoft.Imaging.Pdf.csproj" для .NET проекта сборки и добавить следующий текст в созданный файл:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
- Создать папку "Localization" и перейти в папку.
- Скопировать файл Strings.ru.resx в папку "Localization".
- Перейти в папку "Vintasoft.Imaging.Pdf.ru.resources".
- Скомпилировать .NET проект с помощью следующей консольной команды:
dotnet build Vintasoft.Imaging.Pdf.csproj
- Вспомогательная .NET сборка "Vintasoft.Imaging.Pdf.resources.dll" будет создана в папке "bin\Debug\net7.0\ru\".
- Использовать вспомогательную сборку с сборкой Vintasoft.Imaging.Pdf.dll:
Локализация VintaSoft WinForms демо проекта
Если вы хотите локализовать какой-либо WinForms проект, то вам необходимо выполнить следующие шаги:
- Локализовать пользовательский интерфейс WinForms форм, которые используются в WinForms проекте:
- Для каждой WinForms формы в проекте:
- Открыть WinForms форму в дизайнере форм в Visual Studio.
- Установить свойство "Localizable" формы в значение True.
- Установить свойство "Language" формы в нужный язык, например в русский язык, => дизайнер создаст файл FormName.ru.resx, который содержит информацию о русской локализации формы.
- Локализовать пользовательские элементы формы с помощью дизайнера форм и информация о локализации будет сохранена в файле FormName.es.resx.
- Локализовать строковые константы, которые используются в исходных кодах проекта:
- Создать папку "Localization" в проекте.
- Добавить файл ресурса с именем "Strings.resx" в папку "Localization".
- Для всех строковых констант в коде проекта:
- Добавить строковую константу в файл ресурса Strings.resx.
- Заменить код в проекте на код, который получает строковую константу из файла ресурса Strings.resx.
- Для всех строковых констант в коде проекта:
- Добавить строковую константу в файл ресурса Strings.resx.
- Заменить код в проекте на код, который получает строковую константу из файла ресурса Strings.resx.
Все VintaSoft WinForms демо-приложения имеют английскую локализацию.
Также SDK предоставляет немецкую локализацию для 3-х VintaSoft WinForms демо проектов (DicomViewerDemo, PdfEditorDemo, SpreadsheetEditorDemo) как пример того, что VintaSoft WinForms демо проекты могут быть локализованы на любой язык.
Если вы хотите локализовать VintaSoft WinForms демо проект, который уже локализован (имеет немецкую локализацию), вам необходимо выполнить следующие действия:
- Локализовать пользовательский интерфейс WinForms форм, которые используются в проекте, как написано выше в инструкции по локализации любого WinForms проекта.
- Локализовать строковые константы, которые используются в исходном коде проекта:
- В Visual Studio создать копию файла "Localization\Strings.resx" file => будут созданы файлы "Strings - Copy.resx" и "Strings - Copy.Designer.cs".
- Удалить файл "Strings - Copy.Designer.cs".
- Переименовать файл "Strings - Copy.resx" в файл "Strings.ru.resx".
- Открыть файл "Strings.ru.resx" в редакторе ресурсов Visual Studio и перевести строковые константы с английского языка на русский язык.
Если вы хотите локализовать VintaSoft WinForms демо проект, который не локализован, вы можете пойти двумя путями.
ПУТЬ 1: Локализуйте VintaSoft WinForms демо проект, как написано выше в инструкции по локализации любого WinForms проекта.
ПУТЬ 2: Отправьте нам запрос на локализацию VintaSoft WinForms демо проекта на нужный язык и мы постараемся помочь Вам с локализацией.
Локализация VintaSoft ASP.NET демо проекта
Каждый VintaSoft ASP.NET демо проект состоит из двух частей: JavaScript UI-контролов, которые определяют пользовательский интерфейс и логику веб-приложения, и VintaSoft веб сервисов, которые обслуживают запросы от JavaScript UI-контролов и используют функциональные возможности VintaSoft Imaging .NET SDK.
Демо-приложение VintaSoft ASP.NET Core Document Viewer Demo предоставляет готовые к использованию словари локализации, которые позволяют локализовать
VintaSoft web document viewer на 32 языка (английский, арабский, африкаанс, белорусский, болгарский, венгерский, вьетнамский, голландский, греческий, датский, зулу, иврит, испанский, итальянский, китайский, корейский, немецкий, норвежский, португальский, румынский, русский, словацкий, словенский, суахили, турецкий, финский, французский, хинди, хорватский, чешский, шведский, японский). Вы можете протестировать готовую к использованию локализацию для VintaSoft Web Document Viewer на вашем языке в
онлайн версии VintaSoft ASP.NET Core Document Viewer Demo. Больше информации о локализации VintaSoft Web Document Viewer можно найти
здесь.
Демо-приложение VintaSoft ASP.NET Spreadsheet Editor Demo предоставляет готовые к использованию словари локализации, которые позволяют локализовать
VintaSoft web spreadsheet document editor на 32 языка (английский, арабский, африкаанс, белорусский, болгарский, венгерский, вьетнамский, голландский, греческий, датский, зулу, иврит, испанский, итальянский, китайский, корейский, немецкий, норвежский, португальский, румынский, русский, словацкий, словенский, суахили, турецкий, финский, французский, хинди, хорватский, чешский, шведский, японский). Вы можете протестировать готовую к использованию локализацию на вашем языке для VintaSoft Web Spreadsheet Document Editor в
онлайн версии VintaSoft ASP.NET Core Spreadsheet Editor Demo. Больше информации о локализации VintaSoft Web Document Viewer можно найти
здесь.
Готовые к использованию словари локализации из демо-приложений VintaSoft ASP.NET Core Document Viewer Demo и VintaSoft ASP.NET Spreadsheet Editor Demo можно использовать в любом VintaSoft ASP.NET демо проекте, то есть словари локализации могут быть использованы в любом VintaSoft демо проекте для ASP.NET Core, ASP.NET Core + Angular, ASP.NET MVC5 и ASP.NET WebForms. Это возможно потому что VintaSoft ASP.NET демо проекты используют один и тот же JavaScript код для всех ASP.NET платформ.
Если вы хотите локализовать строковые константы, которые возвращаются VintaSoft веб сервисами, вам необходимо локализовать VintaSoft .NET сборки (в которых реализованы веб сервисы) как описано в секции "Локализация VintaSoft .NET сборки".