OpenOffice.org/DOCX/FB2 Viewer

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
AVB
Сообщения: 3
Зарегистрирован: Вс сен 30, 2007 13:54
Откуда: Kiev, UA
Контактная информация:

Сообщение AVB »

Alextp писал(а):Добавлена поддержка FB2.
У кого-нибудь есть процедура декодирования <binary></binary> тегов из FB2, чтобы показывать картинку в FB2?
Спасибо за FB2 :)

Возможно, этот кусок из описания схемы fb2 Вам поможет "победить" картинки?

<xs:element name="binary" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Any binary data that is required for the presentation of this book in base64 format. Currently only images are used.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="content-type" type="xs:string" use="required"/>
<xs:attribute name="id" type="xs:ID" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
Последний раз редактировалось AVB Вс сен 30, 2007 14:06, всего редактировалось 1 раз.
С уважением, Алекс.
Аватара пользователя
AVB
Сообщения: 3
Зарегистрирован: Вс сен 30, 2007 13:54
Откуда: Kiev, UA
Контактная информация:

Сообщение AVB »

Ник писал(а):ИМХО, добавление картинок во вьюер FB2 будет сильно мешать - т.к. в самом начале большинства книг этого формата идёт картинка обложки (cover.jpg), которая видна даже до заголовка, и она будет мешать видеть текст при быстром просмотре...
Если делать показ картинок для FB2 во вьюере, то придётся эту обложку убирать куда-то за название, автора, содержание (которые сейчас очень хорошо видны в самом начале).
А что мешает добавить в настройки плагина опцию "Показывать/Не показывать картинки"? ;)

Другой вариант - ужимать размеры обложки до заданных пользователем параметров
С уважением, Алекс.
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

Ник
Спасибо за информацию по плагину

AVB
Возможно, этот кусок из описания схемы fb2 Вам поможет "победить" картинки?


Похоже, это Base64. :)
http://ru.wikipedia.org/wiki/Base64
Значит, добавить легко..
Аватара пользователя
AVB
Сообщения: 3
Зарегистрирован: Вс сен 30, 2007 13:54
Откуда: Kiev, UA
Контактная информация:

Сообщение AVB »

Alextp писал(а):Похоже, это Base64. :)
Именно на это я и намекал :)
Alextp писал(а):Значит, добавить легко..
С нетерпением буду ждать показа графики :)

ЗЫ хорощо бы не только обложку показывать, но и встроенные иллюстрации, если они есть в книге ;)
С уважением, Алекс.
bookmist
Сообщения: 56
Зарегистрирован: Пт ноя 18, 2005 18:05
Откуда: Петербург

Сообщение bookmist »

В тегах binary содержание закодировано в base64. Есть как компоненты для работы с ним (ЕМНИП indy), так и просто коротенькие процедуры кодирования и декодирования. Процедура, которой пользуюсь я (Delphi):

Код: Выделить всё

function DecodeBase64(const CinLine: string): string;
const
  RESULT_ERROR = -2;
var
  inLineIndex: Integer;
  c: Char;
  x: SmallInt;
  c4: Word;
  StoredC4: array[0..3] of SmallInt;
  InLineLength: Integer;
begin
  Result := '';
  inLineIndex := 1;
  c4 := 0;
  InLineLength := Length(CinLine);

  while inLineIndex <= InLineLength do
  begin
    while (inLineIndex <= InLineLength) and (c4 < 4) do
    begin
      c := CinLine[inLineIndex];
      case c of
        '+'     : x := 62;
        '/'     : x := 63;
        '0'..'9': x := Ord(c) - (Ord('0')-52);
        '='     : x := -1;
        'A'..'Z': x := Ord(c) - Ord('A');
        'a'..'z': x := Ord(c) - (Ord('a')-26);
      else
        x := RESULT_ERROR;
      end;
      if x <> RESULT_ERROR then
      begin
        StoredC4[c4] := x;
        Inc(c4);
      end;
      Inc(inLineIndex);
    end;

    if c4 = 4 then
    begin
      c4 := 0;
      Result := Result + Char((StoredC4[0] shl 2) or (StoredC4[1] shr 4));
      if StoredC4[2] = -1 then Exit;
      Result := Result + Char((StoredC4[1] shl 4) or (StoredC4[2] shr 2));
      if StoredC4[3] = -1 then Exit;
      Result := Result + Char((StoredC4[2] shl 6) or (StoredC4[3]));
    end;
  end;
end;
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

bookmist
То что нужно, спасибо.
Georgе
Сообщения: 99
Зарегистрирован: Вт авг 28, 2007 06:00

Сообщение Georgе »

2Alextp
C UniversalViewer работает отлично, с родным тоталовским листером не работает совсем. Пробовал оставлять единственным плагином на TC6.57,для расширения FB2 плаг не вызывается, хотя в детектстроке FB2 есть.С файлами Openoffice не проверял ввиду отсутствия оных.
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

Georgе
А пред-ние в описании ты читал?:
1) Работа плагина по умолчанию запрещена в TC Lister, из-за того, что в Lister плагин не передает просмотрщику нажатия служебных клавиш. Пока плагин работает в TC только в режиме "Быстрого просмотра" (Quick View). Чтобы разрешить работу плагина в Lister, создайте текстовый файл OOoViewer.ini в каталоге плагина и запишите в него параметр:
[Options]
AllowWorkInLister=1
Georgе
Сообщения: 99
Зарегистрирован: Вт авг 28, 2007 06:00

Сообщение Georgе »

Прошу прощения, этот момент я прохлопал. :(
Может быть стоит занести в ридми? Не знаю, как у других, но мысль прочитать ридми после незапуска плагина у меня возникла сразу, а вот мысли лезть на сайт не возникало вовсе :)

Работает отлично. Спасибо большое за работу!

Edited: сейчас специально залез перечитал предупреждение на странице загрузки. Да, написано нормальным русским языком, но не воспринимается как критичное. Для меня прозвучало примерно так: "в листере будет работать с ограничениями, без нек-рых клавиш". Я про себя плюнул и через минуту забыл. Может выделить это место как то поагрессивнее? Воскл. знаком, цветом?
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

All
Обновление: чтение картинок из FB2. Работает через пень-колоду, не могу понять почему: файл на диске в %TEMP%\OOoUtils есть, в свойствах картинки стоит это имя, а картинка не грузится. Грузится белый квадрат

Georgе
В ридми эта инф-я есть. Согласен - выделил красным.
Ник
Сообщения: 1256
Зарегистрирован: Ср дек 15, 2004 09:33
Откуда: Москва

Сообщение Ник »

У меня все картинки по F3 видны отлично, по Ctrl-Q иногда зависает ТК... :)
Особенно, если несколько картинок подряд Ctrl-Q, или сначала F3, потом тот же файл Ctrl-Q.
Может, не удаляются временные файлы?

Вот это:
To disable images, write to the OOoViewer.ini:
[Options]
ShowImages=0
надо бы в РидМи...

Кстати, если убрать показ картинок, то они просто перестанут показываться - или не будут парситься и скорость загрузки увеличится?

Субъективно стало медленнее работать :(
Xubuntu
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

У меня все картинки по F3 видны отлично, по Ctrl-Q иногда зависает ТК
Особенно, если несколько картинок подряд Ctrl-Q, или сначала F3, потом тот же файл Ctrl-Q.
У меня не зависает. Хотя две копии (в QV и Lister) конфликтуют..
надо бы в РидМи
добавил
Кстати, если убрать показ картинок, то они просто перестанут показываться - или не будут парситься и скорость загрузки увеличится?
Поправил (теперь не будут парситься)
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

Потом сделаю, чтобы отдельные файлы распаковывались в отдельные папки внутри %TEMP%, не будет конфликта копий.
Georgе
Сообщения: 99
Зарегистрирован: Вт авг 28, 2007 06:00

Сообщение Georgе »

Сtrl+B на большом каталоге с FB2 , Ctrl+Q и через пару-тройку файлов зависание обеспечено. Это тоже связано с темпом? WinXP SP2 32bit TC7.02a
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

Какой-то глюк с Ctrl-Q. Надо разбираться. наверное связано с temp.
Ответить