Подручными средствами - .fb2 в .doc Секреты Мастера - файл counters.php в Lasto Blog CSS. Браузеры. Игры с клавиатурой...

Trifler Blog

Подручными средствами - .fb2 в .doc

Никогда не приходилось этим заниматься, но все когда-нибудь бывает в первый раз… Возможно предлагаемое всем известно и лишь местный автор как всегда снова открывает свою «Америку».

Речь идет о конвертации файлов с раcширением .fb2 в привычный вордовский документ с возможностью его дальнейшего редактирования не посредственно в Microsoft Office.

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

Задача

Конвертируем .fb2 в .doc

Программное обеспечение

Только то, что изначально входит в состав Windows XP

  • Блокнот
  • Internet Explorer
  • Microsoft Word

Шаг первый

Открываем файл с раcширением .fb2 в блокноте и сохраняем его с расширением .htm (.html)

Шаг второй

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

Шаг третий

Открываем Microsoft Word, производим вставку из буфера обмена скопированного ранее и сохраняем полученное.

Результат

Без установки дополнительного софта обошлись подручными средствами и имеем возможность редактировать содержимое.

*****

Более элегантным и менее затратным решением может быть постое переименование файлов с расширением .fb2 в .htm, тем самым исключая из процесса "Первый шаг".

Далее по уже стандартной схеме - открываем полученные файлы в браузере, выделяем, копируем, потом вставка скопированного в Microsoft Word и, как завершающий этап сохранение документа с разрешением .doc.

*****

Структура документа с расширением .fb2 такова, что IE6+ могут вывести только то, что расположено внутри тега <body>...</body>

Браузеры - FireFox, OPERA, Google Chrome отображают на экране монитора все содержимое документа.

Оставить комментарий

Секреты Мастера - файл counters.php в Lasto Blog

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

В большинстве случаев это происходит по нескольким причинам:

  • не знание php, html и css
  • боязнь эксперимента

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

Все решения связанные с php, сотворены самим Мастером Lasto, используются по аналогии с небольшой коррекцией под ту или иную задачу.

Вадим Ласто - талантливый программист, автор многочисленных скриптов - "nano CMS", "Lasto Blog", "Gold Shop" и т.д. и т.п. которые по многим своим параметрам не имеют аналогов не только в России, но и за бугром.

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

Вадим Николаевич, как блогер на страницах своего блога, много пишет об актуальных проблемах русско-язычного сегмента Интернет и часто его размышления идут в разрез с общепринятым мнением.

Ярко выраженная индивидуальность изложения материала, перекрасное владение языком, чему можно только позавидовать, делает его публикации по тем или иным вопросам не забываемыми...

Файл counters.php

По дефолту в нем расположен html-код выводящий рекламные блоки типа небоскреб в колонки навигации. Мы же начнем с чистого листа. Удаляем все содержимое указанного файла - должно стать так:

<?php /* Выше этой строки в файле ничего не должно быть */

  $counters=<<<counters

  counters;

/* Ниже этой строки в файле ничего не должно быть. */ ?>

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

необходимо в файл counters.php добавить следущее:

<?php /* Выше этой строки в файле ничего не должно быть */

  $counters=<<<counters
  
    <style type="text/css">
   .counters {
     border:#ccc 1px solid;margin:15px auto;
     overflow:hidden;width:494px;
   }
   .bannercounters {
     border:#ccc 1px solid;float:left;
     margin:2px 0 2px 2px;width:160px;height:160px;
   }
   </style>
   <div class="counters">
     <div class="bannercounters">
       banner counters.php
       leftcounters
     </div>
     <div class="bannercounters">
       banner counters.php
       centercounters
     </div>
     <div class="bannercounters">
       banner counters.php
       rightcounters
     </div>
   </div>

   <div class="counters">
     Горизонтальный banner counters.php - width:494px;
   </div>
   
  counters;

/* Ниже этой строки в файле ничего не должно быть. */ ?>

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

Оформление блоков может быть любым, все определяется только двумя классами стилей, которые можно вынести в общий файл XXX.css.

Интересной возможностью является разбиение содержимого файла counters.php на две или более частей, которые индивидуальными переменными могут быть интегрированы в нужное место файла design.php.

Независимый вывод информации

Прежде всего, снова обратимся к файлу counters.php для получения нужного функционала и произведем все необходимые нам действия:

<?php /* Выше этой строки в файле ничего не должно быть */

  $counters=<<<counters

    <style type="text/css">
   .counters {
     border:#ccc 1px solid;margin:10px auto;
     overflow:hidden;width:494px;
   }
   .bannercounters {
     border:#ccc 1px solid;overflow:hidden;
     margin:10px auto;width:190px;
   }
   </style>

<!-- topcounters -->
     <div class="counters">
       Горизонтальный banner counters.php - width:494px;
     </div>
<!-- topcounters -->

<!-- leftcounters -->
     <div class="bannercounters">
       banner counters.php
       leftcounters
     </div>
<!-- leftcounters -->

<!-- rightcounters -->
     <div class="bannercounters">
       banner counters.php
       rightcounters
     </div>
<!-- rightcounters -->

<!-- bottomcounters -->
     <div class="counters">
       Горизонтальный banner counters.php - width:494px;
     </div>
<!-- bottomcounters -->

  counters;

/* Ниже этой строки в файле ничего не должно быть. */ ?>

Секрет заключается в комментариях:

<!-- XXXcounters -->
 ...
<!-- XXXcounters -->

В данном случае содержимое файла разбито на четыре части. Заключенный между ними html-код, может быть любым, также, как и его оформление, которое определяется двумя классами стилей.

Следующий шаг - редактирование файла design.php:

 # Расфасовка содержимого по колонкам из файла counters.php

 $leftcounters=$rightcounters=$topcounters=$bottomcounters='';

 if (preg_match_all("~<\!-- leftcounters -->(.*)<\!-- leftcounters -->~Usi",$counters,$n)) $leftcounters=$n[1][0];
 if (preg_match_all("~<\!-- rightcounters -->(.*)<\!-- rightcounters -->~Usi",$counters,$n)) $rightcounters=$n[1][0];
 if (preg_match_all("~<\!-- topcounters -->(.*)<\!-- topcounters -->~Usi",$counters,$n)) $topcounters=$n[1][0];
 if (preg_match_all("~<\!-- bottomcounters -->(.*)<\!-- bottomcounters -->~Usi",$counters,$n)) $bottomcounters=$n[1][0];

Эти строки размещаем перед строкой:

 switch ($_s['settings']['designtype']) {

Полученные таким образом переменные:

 $leftcounters
 $rightcounters
 $topcounters
 $bottomcounters

расставляем в нужные места шаблона страницы в том же файле design.php

По названию переменных должно быть понятно, какие куда.

Две верхних предназначены в основном для колонок навигации, последовательность их расположения по отношению к другим переменным - $menu, $add, $calendula, определяется самостоятельно.

Две нижних предназначены для области контента, оптимально перед и после переменной $echo, что не исключает их использования в header или footer, при соответствующем изменении html и css.

P.S.

Будьте внимательны, соблюдайте синтаксис php, html и css, простой копипаст убережет от ошибок.

Все работоспособно и не однократно проверенно на практике.

P.P.S.

Автор, благодарит Мастера Lasto за неоценимую помощь, приведшую к написанию данного поста, который, надеюсь, позволит поклонникам его творчества лучше разобраться в тонкостях и нюансах скрипта Lasto Blog.

Оставить комментарий

CSS. Браузеры. Игры с клавиатурой...

Два года назад местный автор методом "научного тыка" совершенно случайно наткнулся на грязный css hack для IE8, который до сих пор в исключительных случаях приносит неоценимую пользу.

Напомню:

.XXX {color:#a00\0/;}

Указанный цвет увидит только IE8.

А вот с hack'ом для IE7 забавная история приключилась. Хак известный:

*+html.XXX {color:#a00;}

Был по запарке записан так:

*+*.XXX {color:#a00;}

Понятно, разбор полетов ошибку выявил, но стало интересно...

Тупой перебор доступных с клавиатуры знаков привел к такому:

*+*.XXX {color:#a00;}
*~*.XXX {color:#a00;}

IE6, как и полагается сказал "привет" и все поигнорировал :)

Все остальные браузеры последних версий, включая IE7(8,9), скушали предлагаемое на ура.

Введение дополнительного пробела после второй звездочки приводит их в чувство.

Но важно совершенно другое.

Имеем два абсолютно идентичных блока:

html

<div class="hackcss">
 ...
</div>

<div class="hackcss">
 ...
</div>

css к ним

.hackcss {
  border:#00a 1px solid;color:#00a;
  margin:10px auto;padding:7px;width:400px;
}
*+*.hackcss {border:#a00 1px solid;color:#a00;}

Наблюдаем странную вещь, которой объяснений разумных нет.

Как говориться не верь глазам своим...

Комментариев: 4

Прыг: 01 02 03 04 05 06 07 08 09 10
Скок: 10 20 30

banner counters.php

leftcounters
width:160px;
height:160px;

banner counters.php

centercounters
width:160px;
height:160px;

banner counters.php

rightcounters
width:160px;
height:160px;

Горизонтальный banner counters.php - width:494px;

февраль, 2012
пн вт ср чт пт сб вс
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29        
free  counters