Мой ударный файл

Всем привет! Я хотел бы рассказать об одном совете, который будет полезен новичкам.

Предлагаю завести привычку записывать законченные по смыслу куски кода для того, чтобы их заново использовать в отдельный файл, желательно в облаке, например, на Google Docs. Это даёт возможность быстро получить доступ к тому или иному уже сделанному функционалу. Например, у меня был хороший ударный файл для PHP, в котором я записывал следующее:Читать далее

Сегодня не произошло ничего необычного…

Сегодня мы не сделали ничего хорошего.

Посмотрели на инструменты, которые уже существуют. В частности:

http://www.flash-to-html5.net/

http://www.swftools.org/

https://www.free-decompiler.com/flash/

Дело в том, что один из самых простых способов решить нашу проблему с онлайн SWF-конвертером — это Читать далее

Декомпиляция SWF. Часть 1 — «Распаковка»

Предполагаю, что есть ещё люди, которых интересует вопрос распаковки SWF, в то время, как oogl приостановил Swiffy и конвертить свфки онлайн, бесплатно и без СМС больше не получается.
Дано: упакованный файл .swf;
Задача: получить структуру заголовка файла.

Читать далее

Первый шаг к грандиозной цели…

Путем непродолжительного гугления была найдена спецификация SWF-файла.

http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/swf/pdf/swf-file-format-spec.pdf

Будем потихоньку разбираться, что тут к чему. Содержание файла:

  • Введение
  • Описание структуры SWF-файла
  • Отображение
  • Теги контроля
  • Действия
  • Формы
  • Градиенты
  • Bitmaps
  • Преобразование форм
  • Шрифты и текст
  • Звуки
  • Кнопки
  • Спрайты и клипы
  • Видео
  • Метадата
  • Приложение А: Анализ простого SFW-файла
  • Приложение B: Обратный порядок значений тегов

Меня больше всего заинтересовало приложение A, и я не смог удержаться от того, чтобы туда залезть сразу…

Это приложение — вкуснятина… Первое, что бросается в глаза — это содержание заголовка SWF-файла.

Заголовок SWF-содержит следующие поля:

  • Signature — сигнатура файла, «F» — несжатый, «C» — сжат ZLib, «Z» — сжат LZMA
  • Signature — сигнатура файла, всегда W
  • Signature — сигнатура файла, всегда S
  • Version — версия файла
  • FileLength — длина файла в байтах
  • FrameSize — размер фрейма в твипсах (twips)
  • FrameRate — фреймы в секунду
  • FrameCount — количество фреймов в файле

Грандиозная цель!

Была поставлена грандиозная цель — написать сервис для онлайн-конвертации SWF в HTML5.

Для этого поставлены следующие задачи:

  1. Изучить спецификацию SWF
  2. Изучить спецификацию HTML5
  3. Составить список содержимого SWF:
    1. метадата
    2. объекты
    3. сценарии
    4. и т.д.
  4. Создать алгоритм сопоставления содержимого SWF элементам HTML5, таблицам CSS или скриптам JS
  5. Реализовать созданный алгоритм на языке PHP используя фреймворк Yii 2

У меня кривые руки или как я 3 раза переделывал класс, использующий docx4j

Я хотел бы рассказать о том, что бывает, когда у тебя не только кривые руки, но ещё и растут нетрадиционно + мозгов нет — полный набор калеки))

Задача: сделать так, чтобы можно было создавать шаблоны в формате docx, заполнять их данными из базы данных и скачивать.

Решение: было решено подключить библиотеку docx4j, с её помощью заменять теги MergeField, используя метод variableReplace(). Но… Как всегда грёбаное «но» поставило жирный крест несколько раз. Проблема заключается в том, что при форматировании тега «безумно умный MS Word» «обёртывает» содержимое тега в свои специальные xml-теги, из-за чего variableReplace() некорретно считывает содержимое тега и выдаёт NullPointerException. Кто бы знал, как меня бесила эта ошибка.

Сначала я сделал эту херню так, чтобы она работала через variableReplace(), дошёл до вышеуказанной ошибки. Нашёл на оф. странице ссылку на habrahabr,  Свое представление (view) в Spring MVC (Russian), сделал так, как было указано там — через view, controller и так далее.

Если раньше эта хрень не работала из-за обёрток от MS Word, то теперь она красиво не работает из-за обёрток от MS Word в том плане, что чёрта с два, сам описанный метод — сделать отдельный view, обрабатывать url и т.д. и т.п. весьма красив собой и работает, но не решает мою главную проблему с мусором в тегах.

Потом я прочитал, что есть аж целых 3 способа работать с переменными полями внутри docx при помощи библиотеки docx4j:

  1. MailMerge
  2. VariableReplace
  3. ContentControl

Причём первые 2 работают только в простейших случаях, о чём сказано прямо в оф. документации… В общем, в итоге я понял, что мне нужно как-то использовать ContentControl…

На данный момент я гуглю решение проблемы, поэтому если кто-то знает, что делать, дайте, пожалуйста, знать, а то я за*бался….

Артур

Первый нах…

Привет всем!

Меня зовут Артур, и я говнокодер…

Звучит как знакомство на встрече анонимных говнокодеров… И, в принципе, так оно и есть. На данный момент мне 25 лет. Впервые я начал программировать в 18 лет, потом был продолжительный перерыв в несколько лет, а потом меня снова потянуло (ш)кодить))

В программировании у меня было 3 основных поля деятельности — сайты и php-скрипты, макросы на vba и веб-приложения на Java.

Я пишу на этот сайт потому, что хочу перестать говнокодить, хочу научиться работать быстро, грамотно и аккуратно. Свой путь в этом направлении я хотел бы где-то описать, ну вот здесь и опишу)