Logiss.ru

Ваша компьютерная помощь
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как перевести Excel в XML: 2 рабочих способа

Конвертируем excel файл xls в xml формат.

Конвертируем xls в xml

Для того что бы начать конвертировать файл xls в xml нужно подготовить Microsoft Office Excel.

Переходим на сайт Microsoft для того что бы скачать надстройку Excel 2003 Add-in: XML Tools Add-in скачать надстройку Excel 2003 Add-in: XML Tools Add-in xls в xml После того как вы скачали надстройку Excel 2003 Add-in: XML Tools Add-in для конвертации xls в xml, устанавливаем надстройку на свой компьютер. Программа установится по адресу c:Office SamplesOfficeExcel2003XMLToolsAddin Ну а теперь начинается самое интересное, активируем надстройку конвертера xls в Microsoft Office Excel. Для этого запускаем Excel и открываем «Параметры Excel» активируем надстройку конвертера xls - xml в Microsoft Office Excel. Затем переходим к пункту Надстройки и Перейти активируем надстройку конвертера xls - xml в Microsoft Office Excel. Теперь перед вами открылось окно надстройки, судя по этому окну у нас программа спрашивает а где лежит наша новая надстройка, мы не тянем время и щелкаем по вкладке Обзор. Если вы были внимательны то в начале статьи я упомянул куда автоматически устанавливается надстройка OfficeExcel2003XMLToolsAddin, ну если вы скажем так забыли я вам напомню.

Нажали вкладку Обзор и переходим на диск С, а точнее:

активируем надстройку конвертера xls - xml в Microsoft Office Excel. Теперь находим нашу надстройку XmlTools и нажимаем ОК активируем надстройку конвертера xls - xml в Microsoft Office Excel. После того как вы нажали ОК, вам откроется опять окно с надстройками и в нем мы увидим нашу долгожданную надстройку XmlTools, смело ставим галочку и нажимаем ОК активируем надстройку конвертера xls - xml в Microsoft Office Excel.Теперь посмотрим на нашу работу, смотрим на шапку Excel и видим меню Надстройки переходим на него и видим XML Tools это и есть наш конвертер. активируем надстройку конвертера xls - xml в Microsoft Office Excel. На этом установка и активация надстройки для конвертирования xls в xml закончена.

Теперь будем учится конвертировать

Для этого нам нужно открыть файл xls который мы хотим конвертировать в xml, после этого в меню Надстройки открываем пункт XML Tools и в нем кликаем по пункту Convert a Range to an XML ListКонвертируем xls в xml После того как вы нажали Convert a Range to an XML List вам откроется окно Convert a Range to XML List в этом окне кликаем на вкладку Click here and drag select a range Конвертируем xls в xml После того как у вас пропадет большое окно Convert a Range to an XML List и появится маленькое окошко Convert a Range to XML List, нужно будет выделить нужную вам область данных и нажать кнопку как показано на скриншоте Конвертируем xls в xml После этого у вас все изменится как на скришоте, теперь сохраняем Конвертируем xls в xml Выбираем Сохранить как — Другие форматы тип файла выбираем XML Конвертируем xls в xml Конвертируем xls в xml Вот и все, у нас удалось конвертировать xls в xml

Конвертация xls в xlsx и xml на C#

В этой статье я постараюсь рассказать об одном из возможных путей конвертации документов формата xls в xml.

Непосредственно моя задача выглядела примерно так:

Дано:

  1. 1-2 дня времени на поиск и реализацию решения
  2. Найденное решение должно быть настолько бесплатным, насколько это возможно
  3. Известна примерная структура, размер и содержание файла, которые должны быть обработаны, что снимает необходимость читать графики, диаграммы и иные медианные из документа.
  4. Использовать Interop, равно как и иные библиотеки, которые требуют установки Office нельзя, так как это создает лишнюю нагрузку на сервер и требует дополнительной установки офисного пакета.

Должен заметить, эта задача отнюдь не из простых, и решить ее, также как это было сделано с новыми офисными форматами (docx и xlsx), не получится по следующим причинам:

  • Во-первых, Microsoft не предлагает каких-либо решений для чтения указанных форматов (Interopt в расчет не берем, так как его использование требует установки офисного пакета на сервере, а чтение данных из одного файлика будет сжирать необоснованно много оперативы).
  • Во-вторых, вся информация в документах xls (равно как и в doc) хранится в бинарном виде и недоступна для свободного чтения.
  • В-третьих, в интернете практически нет информации о библиотеках, которые бы решали задачу чтения информации из старых форматов excel и word, равно как и задачу преобразования старых форматов в новые.
Читайте так же:
Не обновляется NOD32

Перерыв stackoverflow, Хабр, проконсультировавшись со старшими товарищами, а также обратившись к нижегородскому сообществу .Net разработчиков стало понятно, что наиболее верным способом решения поставленной задачи является конвертация xls в xlsx, ну а как работать с xlsx я уже знал.

Однако, нативной библиотеки от Microsoft, которая бы решала, казалось бы, столь очевидную проблему совместимости старых и новых офисных форматов, в природе не существует. Платные библиотеки требовали обоснования необходимости их покупки и, также, отдаляли момент начала их использования (на срок проведения закупочных процедур), а бесплатные решения, написанные для питона и линукса, требовали внесения существенных изменений в архитектуру проекта. И вот тут, казалось бы, самое время начинать рвать волосы из подмышек, но, как говорится, всегда найдется азиат!

Tony Qu является автором крутой библиотеки, написанной как раз для работы с офисными файлами. Изначально либа была написана для джавы, после чего портирована под .Net, правда с некоторыми ограничениями (в версии под .Net отсутствует возможность работы с документами doc).
Но, возможно, данная статья не появилась бы на свет, если бы не огромная ложка дегтя: пользователи библиотеки NPOI напрочь лишены какой-либо документации, описывающей алгоритмы ее использования. Разумеется, ничто не мешает получить персональную поддержку от разработчика, уже за материальное вознаграждение.

Поэтому, думаю, представленное ниже решение, можно использовать не только для конвертации xls в xlsx, но и в качестве небольшого примера, демонстрирующего возможности либы.

Давайте кодить

Подготовка
  1. Устанавливаем через nuget библиотеку NPOI (в nuget лежит две либы: одна официальная от Tony Qu, а вторая не понятно от кого и якобы для netcore — ставим первую. Ничего плохого про вторую сказать не могу, так как я ей не пользовался, но миллионы мух пользователей не могут ошибаться):
  2. Создаем класс XlsToXlsx и метод public MemoryStream Convert(Stream sourceStream) :

Как видите, основной метод конвертации работает со стримами. Не переживайте, для результата выполнения метода мы создадим обертки, которые позволят нам сохранять результат конвертации в файл (причем, как из файла, так и из потока).
За работу с файлами xls в библиотеке NPOI отвечает класс HSSFWorkbook , конструктор которого может принимать как стрим, так и путь до файла.
Наш будущий сконвертированный xlsx будет находиться в переменной типа XSSFWorkbook .
Далее запускаем цикл, в котором будет происходить копирование данных из xls в xlsx. Как мы видим, на каждой итерации цикла создаются по два объекта. Обратите внимание, что при создании объекта xssfSheet сразу же происходит копирование имени листа из объекта класса HSSFSheet .
В последствии, указанные объекты используются в качестве аргументов в функциях, копирующих стили листов и их содержимое.
Результат конвертации возвращается в виде потока типа MemoryStream

Разберем метод, отвечающий за копирование стилей

Как вы видите, для того, чтобы сохранить аутентичное внешнее представление, нам необходимо произвести копирование шрифтов из одного файла в другой, а также применить стили старого файла к соответствующим ячейкам нового.

За копирование шрифтов отвечает метод void CopyFont(IFont toFront, IFont fontFrom)

Думаю, из имен свойств можно сделать вывод об их назначении, поэтому комментировать я это не буду — вроде бы итак все предельно понятно.
Копирование и применение соответствующих стилей для каждой ячейки осуществляется в этом методе:

Опять же, из названия свойств можно сделать вывод о том, что и куда копируется. Единственное, обратите внимание на то, что применение конкретных семейств шрифтов происходит через вызов метода SetFont , а не путем прямого присвоения значения через свойства класса.

Читайте так же:
msmpeng.exe грузит процессор
Копирование данных из файла xls в новый файл xlsx

Перейдем к процессу копирования содержимого из файла xls в новый файл xlsx.

Логика данного метода сводится к вызову метода CopyRow(source, destination, srcRow, destRow, mergedRegions) — что происходит в нем расскажу чуть ниже. Помимо вызова указанного метода, в CopySheet происходит поиск номер последней заполненной ячейки в строке. Это необходимо для того, чтобы верно скопировать ширину каждого столбца (да, конвертация xls в xlsx предусматривает даже такой нюанс).

Разберем метод void CopyRow(HSSFSheet srcSheet, XSSFSheet destSheet, HSSFRow srcRow, XSSFRow destRow, List<CellRangeAddress> mergedRegions) :

Этот метод выполняет две функции:

  • Во-первых, метод копирует данные из «простых» ячеек файла с расширением xls в «простые» ячейки файла с расширением xlsx
  • Во-вторых, метод обрабатывает случаи, когда ячейка находится внутри группы объединенных ячеек. При этом, проверяется, относится ли данная ячейка к уже существующей группе объединенных ячеек, или же является первой выявленной ячейкой новой группы.

Метод копирования данных и стилей для каждой ячейки:

В этом методе происходит следующее:

  • Во-первых, копируются стили:
  • Во-вторых, копируется содержание каждой ячейки:

Как можно видеть, в указанном методе происходит не слепое копирование содержимого ячеек, а с сохранением типов данных и исходного функционала (когда, ячейка содержит функцию).

Обработка объединенных ячеек

Вернемся к обработке ячеек, включенных в группу объединенных.
Как было показано выше, за это отвечают методы CellRangeAddress GetMergedRegion(HSSFSheet sheet, int rowNum, short cellNum) и bool IsNewMergedRegion(CellRangeAddress newMergedRegion, List<CellRangeAddress> mergedRegions) :

Так, мы просто получаем все области объединенных ячеек для конкретного листа, после чего проверяем, входит ли наша ячейка хоть в какой-нибудь из диапазонов объединенных ячеек. Если входит, то то метод возвращает тот диапазон объединенных ячеек, к которому относится проверяемая ячейка. В противно случае, вернется null .

Указанный метод сопоставляет текущую область объединенных ячеек с той областью, к которой относится текущая ячейка, которая входит в состав нескольких объединенных ячеек. Как можно увидеть, сравнение происходит по 4-м крайним точкам каждой из областей (первая и последняя колонка, первая и последняя строчка проверяемой области).

На этом процесс преобразования xls в xlsx можно считать законченным.

С моей стороны будет свинством не сказать, что данный код был нагло сплагиачен со stackoverflow, который в свою очередь представляет собой переработанное решение по конвертации xlsx в xls, которое также лежит на stackoverflow.

Дополнительный функционал

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

  • из потока
  • из файла:

Также, не будем забывать, что цикл статей посвящен конвертации разных текстовых файлов в xml:

Как видите, в методе данного класса используется объект класса XlsxToXml , который реализует логику конвертации xlsx в xml, описанную в статье по этой ссылке.

Как сделать из excel xml?

как сделать из excel xml

XML – это универсальный формат работы с данными. Его поддерживает множество программ, в том числе из сферы СУБД. Поэтому конвертация информации в XML важна именно с точки зрения взаимодействия и обмена данными между различными приложениями. Excel как раз входит в число программ, которые работают с таблицами, и даже может выполнять манипуляции с базами данных. Разберемся, как конвертировать файлы Эксель в XML.

Процедура конвертации

Конвертация данных в формат XML не такой уж простой процесс, так как в его ходе должна быть создана специальная схема (schema.xml). Впрочем, для преобразования информации в простейший файл данного формата достаточно иметь под рукой обычные инструменты сохранения в Excel, а вот для создания хорошо структурированного элемента придется основательно повозиться с составлением схемы и её подключением к документу.

Способ 1: простое сохранение

В Excel можно сохранить данные в формате XML, просто воспользовавшись меню «Сохранить как…». Правда, нет гарантии, что потом все программы будут корректно работать с файлом, который был создан таким способом. Да и не во всех случаях этот способ работает.

  1. Запускаем программу Excel. Для того, чтобы открыть элемент, подлежащий конвертации переходим во вкладку «Файл». Далее жмем по пункту «Открыть».
  2. Запускается окно открытия файлов. Переходим в директорию, где содержится файл, который нам нужен. Он должен быть в одном из форматов Эксель – XLS или XLSX. Выбираем его и жмем на кнопку «Открыть», расположенную в нижней части окна.
  3. Как видим, файл был открыт, а его данные отобразились на текущем листе. Опять переходим во вкладку «Файл».
  4. После этого переходим по пункту «Сохранить как…».
  5. Открывается окно сохранения. Переходим в ту директорию, в которой желаем, чтобы хранился конвертированный файл. Впрочем, можно оставить и директорию по умолчанию, то есть ту, что предложила сама программа. В этом же окне, если возникнет желание, можно изменить наименование файла. Но основное внимание нужно обратить на поле «Тип файла». Раскрываем перечень кликом по данному полю.

как сделать из excel xml

Среди вариантов сохранения ищем наименование «Таблица XML 2003» или «XML-данные». Выбираем один из этих пунктов.

как сделать из excel xml

Таким образом, преобразование файла из формата Excel в XML будет совершено.

Способ 2: инструменты разработчика

Конвертировать формат Excel в XML можно с помощью инструментов разработчика на вкладке программы. При этом, если пользователь все выполнит правильно, то на выходе он получит, в отличие от предыдущего способа, полноценный XML-файл, который корректно будет восприниматься сторонними приложениями. Но сразу нужно сказать, что не каждому новичку может хватить знаний и умений сразу научится конвертировать данные таким способом.

  1. По умолчанию вкладка инструментов разработчика отключена. Поэтому, прежде всего, нужно её активировать. Переходим во вкладку «Файл» и кликаем по пункту «Параметры».
  2. В открывшемся окне параметров перемещаемся в подраздел «Настройка ленты». В правой части окна устанавливаем галочку около значения «Разработчик». После этого жмем на кнопку «OK», размещенную в нижней части окна. Вкладка инструментов разработчика теперь включена.
  3. Далее открываем таблицу Excel в программе любым удобным способом.
  4. На её основе нам предстоит создать схему, которая формируется в любом текстовом редакторе. Для этих целей можно использовать и обычный Блокнот Windows, но лучше применять специализированное приложение для программирования и работы с языками разметки Notepad++. Запускаем эту программу. В ней создаем схему. На нашем примере она будет выглядеть, как показано внизу на скриншоте окна Notepad++.

как сделать из excel xml

Как видим, открывающим и закрывающим тегом для документа в целом служит «data-set». В этой же роли для каждой строки выступает тег «record». Для схемы вполне будет достаточно, если мы возьмем всего две строки таблицы, а не будем переводить её всю вручную в XML. Название открывающего и закрывающего тега столбца может быть произвольным, но в данном случае для удобства мы предпочли просто перевести русскоязычные наименования колонок на английский язык. После того, как данные внесены, просто сохраняем их через функционал текстового редактора в любом месте на жестком диске в формате XML под названием «schema».

Как видим, существуют два основных способа конвертации файлов XLS и XLSX в формат XML программой Microsoft Excel. Первый из них предельно простой и заключается в элементарной процедуре сохранения с заданным расширением через функцию «Сохранить как…». Простота и понятность данного варианта, несомненно, являются преимуществами. Но у него есть один очень серьезный недостаток. Преобразование выполняется без учета определенных стандартов, и поэтому файл, конвертируемый таким способом, сторонними приложениями может просто не распознаваться. Второй вариант предполагает составление карты XML. В отличие от первого способа, таблица, преобразованная по данной схеме, будет соответствовать всем стандартам качества XML. Но, к сожалению, не каждый пользователь сможет быстро разобраться с нюансами этой процедуры.

Мы рады, что смогли помочь Вам в решении проблемы.

Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

Конвертер файлов / Документы / Конвертировать в XLS / XML конвертер / XLS в XML

Вы можете перевести XLS документ в XML и во множество других форматов с помощью бесплатного онлайн конвертера.

Выберите файл с компьютера, Google Диска, Dropbox или перетащите его на страницу

Выберите xml или любой другой формат, который вам нужен (более 100 поддерживаемых форматов)

Скачайте ваш xml файл

Подождите пока ваш файл сконвертируется и вы сразу сможете его скачать xml -файл

Microsoft Excel Binary File Format

XLS – представляет собой электронную таблицу, созданную популярным приложением Microsoft Excel. Включает в себя данные документа, которые расположены в ячейках, обладающих определенным адресом. Они могут содержать формулы, математические уравнения, имеющие связь с информацией в других ячейках, и фиксированные сведения. Нередко применяется для разработки графиков и схем. Формат позволяет хранить и редактировать большой круг параметров – изображения, таблицы, макросы, шрифты, диаграммы. Широко использовался до появления версии Excel 2007 года, а затем был заменен на расширение XMLSS. Сведения внутри документа XLS содержатся в серии потоков статичного размера, их месторасположение описывается с помощью нескольких таблиц распределения сегментов. Отличается обратной совместимостью и поддерживает различные форматы файлов, созданных для DOS. Нередко применяется веб-браузерами с целью исключить использование бинарных форматов. Утилита входит в офисный пакет Microsoft и кроме Excel может открываться различными приложениями вроде Apache Open Office, Libre Office, адаптированных к ОС MacOS, Windows или Linux.

Востребованность формата объясняется его простотой, хотя он не поддерживает отдельные функции, например, хранение макросов VBA. Вплоть до появления XMLSS приложение Excel при форматировании применяло расширение Biff, созданное на базе формата-контейнера IFF. Благодаря этому были доступны изменения шаблонов книг и их содержание. После внедрения в 2007 году нового формата программа не утратила свойств обратно совместимой, что гарантирует широкое распространение XLS и в будущем. Впоследствии на смену расширению XLS пришли форматы XLSM, XLSB и XLSX.

Конвертер (8.2) в XML из табличного документа (xls, dbf, txt, mxl) на основе Загрузка данных из табличного документа

  • EWork2.png
  • EWork3.png
  • EWork.png

Обработка встроена в типовую «Загрузка данных из табличного документа». Для этого добавлен режим загрузки Преобразование в XML.

Обработка позволяет преобразовать табличный документ, загруженный на форму, в файл XML.

На закладке Настройки указываются имя выгружаемого файла, настройка выгружаемых колонок и первая строка данных для выгрузки. Строка выше указанной используется для определения имен колонок.

Скачать файлы

Специальные предложения

Electronic Software Distribution

Маркировка 488-ФЗ

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти

Просмотры 25527

Загрузки 136

Рейтинг 18

Создание 12.03.15 14:45

Обновление 12.03.15 14:45

№ Публикации 335669

Конфигурация Конфигурации 1cv8

Операционная система Windows

Вид учета Не имеет значения

Доступ к файлу Абонемент ($m)

Код открыт Не указано

См. также

Мастер XML-обмена Промо

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

5 стартмани

02.09.2015 34569 5 Lancelot-2M 17

Декларации по формам 7 и 8 алкогольной продукции, перенос данных из Декларант-Алко, импорт данных из файлов XML форм 11,12,7,8

Конфигурация на управляемых формах, платформа 1С 8.3.10.2667 и выше, с помощью которой можно сформировать Декларации по формам 7 и 8 алкогольной продукции, выполнить перенос данных из ПО Декларант-Алко версии 4.31.05 и выше, импорт и загрузку из файлов XML форм 11,12,7,8. Есть возможность автоматического подписания и шифрации файла выгрузки.

1 стартмани

15.04.2021 7117 36 independ 35

RabbitMQ + Конвертация данных 2.0

Подсистема для обмена данными между любыми конфигурациями через Rabbit MQ. Позволяет использовать все преимущества Rabbit для обмена 1С. Для обмена требуются Правила обмена (КД 2).

3 стартмани

18.03.2021 4530 12 IT_GG 4

Настройка обмена с любой устаревшей конфигурацией на базе 8.2 через обработку "Универсальный обмен данными в формате XML" и "Конвертацию данных 2.0"

Разберем кейс, как настроить простенький обмен с любой устаревшей конфигурацией на базе 8.2 через обработку "Универсальный обмен данными в формате XML" и Конвертацию данных 2.0 с возможностью настройки гибких отборов по периоду, организации и списку документов.

1 стартмани

23.11.2020 10505 8 orfos 14

Выгрузка данных из УТ 11.3/11.4 в БП 3.0 (перенос документов и справочной информации из "Управление торговлей" ред. 11.3/11.4 в "Бухгалтерия предприятием" ред. 3.0). Обновлен до УТ 11.3.4.х/11.4.7х и БП 3.0.7х.х Промо

Данная обработка предназначена для выгрузки в формате XML данных из программы «Управление торговлей» ред. 11.3/11.4 по основным группам документов (документы покупки/продажи товаров и услуг, складские документы, счета-фактуры, ценообразование), а также набор основных справочников. Загрузка данных в БП ред. 3.0 через обработку «Универсальный обмен данными XML». Основная цель обработки – оптимизация работы бухгалтеров во время обмена данными между программами, а также выборочная корректировка загруженных ранее документов.

04.03.2016 65076 19 SEOAngels 66

Выгрузка XML-файла УПД для отправки через ЭДО СБИС, Диадок и т.п.

С помощью этой обработки для документа "Реализация товаров и услуг" формируется XML-файл УПД, который можно отправить через ЭДО СБИС, Диадок и пр.

1 стартмани

17.08.2020 16342 105 vasilievil 15

Улучшенная обработка универсального обмена данными в формате XML (УФ)

Улучшенная обработка "Универсальный обмен данными" с полноценными возможностями СКД для выборки данных (не только для отборов).

1 стартмани

23.06.2020 11867 130 Lem0n 1

Перенос документов из ЗУП 2.5 в ЗУП 3.1

Доброго времени суток, друзья. За основу взяты правила https://infostart.ru/public/806689/, немного добавлено своего. В правилах частично реализован стандартный перенос из обработки перехода на ЗУП 3.1.

1 стартмани

04.06.2020 6835 119 hottion 68

Обмен данными между УТ 10.3 и Розницей 2.2 (правила обмена данными между "Управлением торговлей" ред. 10.3. и "Розницей" ред. 2.2) Промо

Данные правила предназначены для обмена в формате XML данных из программы «Управление торговлей» ред. 10.3. и "Розница" ред. 2.2 по основным группам документов и основных справочников. Загрузка данных осуществляется через встроенную обработку «Универсальный обмен данными XML». Основная цель обработки – корректировка типовых правил на выявленные ошибки и расширение выгрузки для корректной выгрузки данных по ЕГАИС и продажам в целом. Протестировано до УТ 10.3.47.х и Розница 2.2.11.х

3 стартмани

16.09.2016 56791 6 SEOAngels 65

Загрузка из XML файла ЭДО в документ поступления для конфигураций 1С: Розница 2.2/2.3, Управление торговлей 10.3/11.4

Внешние обработки загрузки данных из XML файлов формата ON_NSCHFDOPPRMARK ЭДО в документы поступления 1С Розница версия 2.2.10.19 и выше, Управление торговлей 10.3.52.2 и выше, Управление торговлей 11.4.5.63 и выше

1 стартмани

04.06.2020 26752 290 independ 130

Выгрузка и загрузка XML для управляемых форм 8.3 (с отбором)

В работе постоянно приходится разделять в различные базы или объединять несколько организаций в одну базу, долгое время пользовался стандартной обработкой выгрузка-загрузка из UNIREPS 8.2, в режиме обычного приложения, но, к сожалению, для управляемого приложения стандартная обработка из UNIREPS 8.3 (Диск ИТС) не позволяет нормально сделать выгрузку с отбором, поэтому ей никогда не воспользовался. Решил что напишу обработку, которая позволит делать отборы в различных вариациях, кроме того, в обработках из UNIREPS (8.2 и 8.3) существенно отличается процесс загрузки предопределенных, что не всегда удобно при больших объемах данных. Обработка написана на базе UNIREPS 8.3, но есть существенные изменения. Но интерфейс доработан так, чтобы обработка была похожа на старую добрую обработку из UNIREPS 8.2, к которой все так привыкли.

Ссылка на основную публикацию
Adblock
detector