Задать вопрос
  • Как закодировать изображения в base64 через методы btoa и atob?

    rqdkmndh
    @rqdkmndh
    Web-разработчик
    Тут вам не нужны методы btoa и atob. В вашем коде есть место где можно получить base64 вашего изображения:
    const reader = new FileReader();
    
      reader.onload = (e) => {
        formPreview.innerHTML = `<img src="${e.target.result}" alt="Обложка книги">`
    // 
        const base64String = reader.result;
        console.log(base64String); // Вывод base64-строки, можно сохранить ее в LS
      };
      reader.onerror = (e) => alert('Ошибка!');
      reader.readAsDataURL(file);
    }

    А обратно кодировать ее в бинарный формат не нужно. Если присвоить атрибуту src изображения эту строку (base64String) - то картинка отобразится в html-документе
    imgPreview.src = base64String;     // показываем изображение, imgPreview - id тега с img
    Ответ написан
    Комментировать
  • Как с помощью .htaccess сократить URL?

    я сомневаюсь, что Вы понимаете, как работает сервис сокращения ссылок. Работает он так:
    1) где-то внутри сервиса задаются сопоставления, вроде такого: uLczL -> https://habr.com/ru/articles/893646/
    2) когда на сервис заходят по ссылке g0o.ru/uLczL , он находит это сопоставление и делает редирект на целевую ссылку. Если не находит - показывает 404.

    Соответственно, сервис должен принимать любую ссылку на одну точку входа, это делается так:
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /url.php [L]

    А в url.php Вы делаете разбор $_SERVER['REQUEST_URI'] .
    Ответ написан
    4 комментария
  • Какими инструментами сделан этот видео гайд?

    black1277
    @black1277
    Вольный стрелок
    Сделано в Blender, вот оригинальное видео Скорее всего используется программа захвата видео окна программы и какой-то плагин (возможно самописный), регулирующий в какие моменты производить запись.
    Еще как вариант, возможно была сделана полная запись со всеми движениями мыши и вызовом инструментов, а потом видео прогнали через нейросеть, которая оставила только кадры с визуальными изменениями и подогнала все нестыковки.
    Ответ написан
    2 комментария
  • Как создать матрицу?

    black1277
    @black1277
    Вольный стрелок
    # Создаем вертикальный вектор с шагом 5
    col_vector = np.arange(0, 100, 5).reshape(-1, 1)
    
    # Повторяем этот вектор горизонтально 20 раз
    mat_A = np.tile(col_vector, (1, 20))

    .reshape(-1, 1): Преобразует массив в вертикальный вектор (20, 1)
    Ответ написан
    6 комментариев
  • Как в JS добавить вторую кнопку Закрыть или Отмена?

    black1277
    @black1277
    Вольный стрелок
    const fn = () => {
      document.getElementById('burger-menu').classList.toggle("burger-hidden");
      document.getElementById('burger-button').classList.toggle("burger-icon-close");
    }
    document.querySelectorAll('.burger-icon').forEach(el=>el.addEventListener('click', fn))
    Ответ написан
    2 комментария
  • Почему pause в cmd скрипте не предотвращает закрытие окна?

    black1277
    @black1277
    Вольный стрелок
    Вот так будет работать как функция
    @echo off
    
    set "path_bin_1=d:\TEMP\test.exe"
    call :testname
    
    echo "%path_bin_1%"
    echo "%filename%"
    
    pause
    
    exit
    REM тело функции располагаем в конце после оператора exit чтобы предотвратить выполнение в потоке.
    
    :testname
    echo "%path_bin_1%"
    for /F "delims=" %%a in ("%path_bin_1%") do (
        set file=%%~fa
        set filepath=%%~dpa
        set filename=%%~nxa
    )
    exit /B

    exit /B возвращает управление сразу после того места где был вызов процедуры
    goto теперь не нужен - убрали тело функции за оператор exit
    После pause можно писать другой код и опять вызывать call :testname
    Ответ написан
    4 комментария
  • Нужен ли Docker Desktop для работы с Docker из под Windows + WSL2 (Ubuntu)?

    fenrir1121
    @fenrir1121
    Начни с документации
    Нет не нужен, это просто самый простой способ получить докер в винде.
    Инструкции есть на learn.microsoft.com#configure-docker-daemon
    Ответ написан
    Комментировать
  • Нужен ли Docker Desktop для работы с Docker из под Windows + WSL2 (Ubuntu)?

    Везде предлагается ставить docker desktop от того, что Docker на этом зарабатывает - он платный для использования в компаниях.

    Ну и он является самым простым способом получить docker cli с compose на винде.

    В принципе ничто тебя не ограничивает поставить обычный Docker Daemon руками в WSL2
    Ответ написан
    Комментировать
  • Какие модули есть в Python для целей анализа, форматирования, вывода текста?

    rqdkmndh
    @rqdkmndh
    Web-разработчик
    Для анализа и обработки текста в Python существует множество библиотек, которые могут помочь вам с различными задачами, включая поиск совпадений слов, подсчет символов и знаков препинания, а также форматирование и вывод результатов в различные форматы файлов, включая PDF. Вот некоторые из них:

    1. Стандартная библиотека Python:
    - re: модуль для работы с регулярными выражениями, который может помочь в поиске совпадений слов.
    - string: предоставляет набор стандартных операций со строками, включая подсчет символов.
    - collections.Counter: полезен для подсчета вхождений элементов в итерируемых объектах.

    2. Анализ текста:
    - nltk (Natural Language Toolkit): обширный набор инструментов для работы с человеческим языком, включая поиск и анализ слов.
    - spacy: продвинутая библиотека для обработки естественного языка, которая может использоваться для лемматизации, распознавания сущностей и других задач NLP.

    3. Работа с текстом и файлами:
    - Pandas: предоставляет функционал для анализа и обработки данных в табличном формате, позволяет экспортировать результаты в различные форматы файлов.
    - openpyxl или pandas: для работы с файлами Excel.
    - python-docx: для создания, изменения и извлечения информации из документов Word.

    4. Форматирование текста:
    - rich: позволяет создавать стилизованный вывод в терминал с поддержкой markdown, подсветкой синтаксиса, таблицами и т.д.
    - textwrap: стандартный модуль Python для форматирования абзацев текста, чтобы он красиво выводился.

    5. Работа с PDF:
    - reportlab: мощный инструмент для создания сложных PDF-документов с возможностью добавления графики и текста с различным форматированием.
    - PyPDF2 или PyMuPDF (fitz): библиотеки для чтения и записи PDF-файлов, манипуляции с существующими PDF, включая соединение, разделение и т.д.

    Все эти модули и библиотеки позволяют выполнять широкий спектр задач, связанных с текстом, начиная от простого поиска и анализа слов и символов до сложного форматирования и вывода в файлы различных форматов, включая PDF. Большая часть из них имеет обширную документацию и примеры использования, что позволяет сравнительно легко начать работу с ними.
    Ответ написан
    3 комментария
  • Как исправить скрипт, чтобы заработал в 23 версии Cinema4D?

    black1277
    @black1277
    Вольный стрелок
    В шести местах замените xrange на range. Эту строку замените:
    if self.cells.has_key(i) and self.cells[i].has_key(j) and self.cells[i][j].has_key(k):

    на эту:
    if i in self.cells and j in self.cells[i] and k in self.cells[i][j]:

    и должно заработать. Еще в старых скриптах часто бывает print без скобок, но тут вроде бы нету.
    Ответ написан
    1 комментарий
  • Что такое культура программирования?

    rqdkmndh
    @rqdkmndh
    Web-разработчик
    А что тут непонятного?
    -Поклонение богу программирования
    -Умение чистить программистскую карму
    -Умение проводить обряды (вроде танцев с бубном)
    -...
    Ответ написан
    Комментировать
  • Почему не работает инлайн кнопка?

    Wispik
    @Wispik
    Потому что
    dp.register_callback_query_handler(accept, lambda call: True)

    обрабатывает все запросы и все что ниже него не будет работать
    Ответ написан
    Комментировать
  • Как придать div вот такую форму?

    black1277
    @black1277
    Вольный стрелок
    Вот накидал по быстрому для примера

    Этот способ удобен тем, что можно сделать край любой формы, в зависимости от того какой svg использовать. Недостаток в том, что бордер можно только через drop-shadow сделать.
    Ответ написан
    4 комментария
  • Как спрятать ключ от API чтоб работал github pages?

    @bqio
    https://bqio.github.io/
    Для хранения секретных ключей используется сервер, либо environment variables.

    Как пример, dotenv
    Ответ написан
    Комментировать
  • Нужно ли импортировать jquery в каждый файл react приложения?

    black1277
    @black1277
    Вольный стрелок
    Да нужно. Почитайте про модули и пространства имен. В финальном проекте jquery будет включен один раз(не бойтесь дублирования не будет).
    Ответ написан
    1 комментарий
  • Особенности работы функций?

    rqdkmndh
    @rqdkmndh
    Web-разработчик
    Наверное вы не сказали самое главное - что такие функции не загрязняют глобальное пространство имен(что исключает конфликты имен при использовании совместно разных библиотек) и поэтому являются прототипом для создания паттерна модуль.
    Ну, а вообще кто знает что они хотели услышать... Надо в конце все же спрашивать правильный ответ по мнению вопрошающей стороны.
    Ответ написан
    3 комментария
  • Class в JS не такой как в СИ языках?

    DevMan
    @DevMan
    потому что ООП в JS реализовано не так как в JAVA: прототипное вместо классового.
    Ответ написан
    Комментировать
  • Когда стоит использовать ленивую загрузку React?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    На примерах.
    Допустим у вас есть главная + несколько других страниц.
    Есть кабинет пользователя + страница оплаты (отложенная загрузка тут)
    Калькулятор (отложенная загрузка тут)

    Собственно почему? Этот код может вообще не понадобится, а он довольно большой и замедляет загрузку.
    С другой стороны, множество мелких файликов замедляд подгрузку за счет пинга, это нужно учитывать. Возможно стоит сделать монолит для загрузки одним файлом.
    Собственно веб пак выводит статистику и начинает ругаться если размер файла больше 300 килобайт. Ориентируйтесь по этой величине
    Ответ написан
    Комментировать