Russian Qt Forum
Ноябрь 23, 2024, 04:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 [3] 4 5   Вниз
  Печать  
Автор Тема: Программа для создания электронных книг[Обсуждение исходника]  (Прочитано 43379 раз)
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #30 : Ноябрь 20, 2011, 21:51 »

Подключатся другие - и всё будет путём.
надежда умирает последней Подмигивающий
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
andrew.k
Гость
« Ответ #31 : Ноябрь 20, 2011, 21:57 »

... Может все зря?
А когда начнут пользоваться - будете кричать: "Я же говорил, что зря, надо было бросать!!!" Я не вижу завтра потопа -> буду пилить дальше. Код же открыт. Подключатся другие - и всё будет путём. А подобные вопросы я теперь полностью буду игнорировать Подмигивающий
Чтобы подключились другие нужно, чтобы были пользователи, и желательно не один.
Только пользователи подскажут, куда должна развиваться программа.
Или ты ожидаешь, что когда выкатишь версию 1.0.0 все спохватятся и бросят уже существующие решения и используемые сейчас и перейдут на твое?
Просто тема похожа на блог или твиттер)
« Последнее редактирование: Ноябрь 20, 2011, 22:00 от andrew.k » Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #32 : Ноябрь 20, 2011, 23:41 »

надежда умирает последней Подмигивающий
(сказала Вера опуская топор на шею Любви)

2xwicked Я неск раз пробовал "public beta" - и пришел к выводам что этого делать не стоит, результат получается отрицательный. Помощи и конструктивной критики мало, все равно работают неск человек (и это лучше делать внутри "creative lab"). Зато с избытком вкусовщины типа "а мой папа может здесь полочку приструячить". А главное - продукт теряет "'эффект новизны", мол "та мы это уже знаем/слышали" - и это очень плохо.
Записан
xwicked
Гость
« Ответ #33 : Ноябрь 20, 2011, 23:53 »

Пока, что плюются только наши. На западе моим программам дают награды за полную бесполезность и бесперспективность - они же в этом дольше нас варятся неправда ли?  Подмигивающий
Записан
andrew.k
Гость
« Ответ #34 : Ноябрь 21, 2011, 00:07 »

Пока, что плюются только наши. На западе моим программам дают награды за полную бесполезность и бесперспективность - они же в этом дольше нас варятся неправда ли?  Подмигивающий
Ты осознаешь бесполезность и бесперспективность своей программы, но продолжаешь над ней работать?   Шокированный
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #35 : Ноябрь 21, 2011, 00:13 »

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

Ты осознаешь бесполезность и бесперспективность своей программы, но продолжаешь над ней работать?   Шокированный
А вот это не Ваше дело, хочет человек - работает. По крайней мере он начал проект, а не сидит как таракан в конторе
Записан
andrew.k
Гость
« Ответ #36 : Ноябрь 21, 2011, 00:51 »

Ты осознаешь бесполезность и бесперспективность своей программы, но продолжаешь над ней работать?   Шокированный
А вот это не Ваше дело, хочет человек - работает. По крайней мере он начал проект, а не сидит как таракан в конторе
Что значит не мое? Тема называется обсуждение (хотя и исходников).
У меня есть мнение. Я его высказываю.
Есть такое понятие Сизифов труд. Поэтому было бы обидно однажды утром это осознать.
Я очень рад за награды программ, я говорю конкретно об этой.
Поэтому я спрашивал, сколько потенциальных пользователей или реальных.

Возможно я просто совершенно не понимаю, какие программа дает преимущества.
Мне интересны цели, которые преследуются, при разработке программы.

Я надеюсь это не я подразумевался под офисным тараканом?
У Сизифа тоже был проект, он не был офисным тараканом.
Записан
andrew.k
Гость
« Ответ #37 : Ноябрь 21, 2011, 00:59 »

Цитировать
включая репозиторий программ Sisyphus
Забавно, только что обратил внимание ))
Записан
BRE
Гость
« Ответ #38 : Ноябрь 21, 2011, 09:02 »

Сейчас есть много проектов тех же текстовых редакторов и наверное каждый день появляются новые. Со всех сторон авторам кричать: "не нужно" или "пилил бы ты лучше редактор X, зачем новое поделие" или ...
По мне пусть делают, если автор хотя-бы одного редактора из миллиона придумает какой-то новый режим или возможность, которой еще не было и эта фича будет востребована в других проектах, то это уже большое дело. А придумать что-то новое можно только когда подходишь к делу "с душой", процесс должно нравиться.
Раз автор темы этим занимается, значит ему это нравиться.
Записан
andrew.k
Гость
« Ответ #39 : Ноябрь 21, 2011, 09:56 »

Сейчас есть много проектов тех же текстовых редакторов и наверное каждый день появляются новые. Со всех сторон авторам кричать: "не нужно" или "пилил бы ты лучше редактор X, зачем новое поделие" или ...
По мне пусть делают, если автор хотя-бы одного редактора из миллиона придумает какой-то новый режим или возможность, которой еще не было и эта фича будет востребована в других проектах, то это уже большое дело. А придумать что-то новое можно только когда подходишь к делу "с душой", процесс должно нравиться.
Раз автор темы этим занимается, значит ему это нравиться.

Соглашусь)
Записан
panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #40 : Ноябрь 21, 2011, 23:36 »

Сейчас есть много проектов тех же текстовых редакторов и наверное каждый день появляются новые.
а мне все-равно хочется html редактор на Qt ))))
Хотя-бы каркас, остальное допилю )))
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
xwicked
Гость
« Ответ #41 : Январь 31, 2012, 21:50 »

Здравствуйте! Версия 0.1.8
Код
C++ (Qt)
//Изменение таблицы
void KlenLibrary::slotResizeTable()
{
   if(gRegimeViewing == true) return;
 
   InputParametrTable FormInputParametrTable;
   FormInputParametrTable.setWindowTitle(tr("Change table parametrs"));
 
   if(FormInputParametrTable.exec() == QDialog::Accepted)
   {
       if(FormInputParametrTable.SpinColumnCount->value() > 0
               && FormInputParametrTable.SpinColumnCount->value() > 0)
       {
           TextBook->textCursor().currentTable()->resize(FormInputParametrTable.SpinRowCount->value(),
                                                         FormInputParametrTable.SpinColumnCount->value());
       }
   }
}
currentTable() позволяет работать с таблицей, по текущей позиции курсора в тексте.
Все изменения:
Цитировать
- Добавилась возможность создания и редактирования таблиц;
- Исправлена ошибка, не позволяющая сохранять дополнительную информацию, при редактировании;
- Добавлена возможность ввода имени пользователя;
- Добавлен учёт времени работы пользователя с книгой;
- Добавились горячие клавиши;
- Модуль "LabFreeTech Тест" изменил своё название на "Шёлковый тест" и обновился до версии 0.4.1;
- Добавился пункт меню "Сервис", в котором теперь находятся элементы: "Статистика", "Дополнительно", "Тест";
Хочу сообщить о том, что начиная с версии >1.0.0, 30% работы будет сосредоточено на оптимизацию под ООП стандарты Улыбающийся для лучшей поддержки другими программистами.

P.S. Ещё один очень важный момент: версии 0.1.8 и 0.1.9 - сборки являются минимальными. То есть, чтобы посмотреть на все функции, необходимо программу собрать из исходника . Это делалось для проверки аудитории пользователей на заинтересованность в программе, путем отправки мне запроса на получение исходного кода. Что было не очень удачной идеей и, с версии 0.2.5, сборки программы уже снова полнофункциональны. Прошу извинить меня за данное неудобство  Строит глазки .
« Последнее редактирование: Февраль 11, 2012, 22:53 от xwicked » Записан
xwicked
Гость
« Ответ #42 : Февраль 11, 2012, 22:52 »

В версии 0.1.9 добавлена работа с несколькими библиотеками-базами(как и в тесте  Подмигивающий ) и возможность резервировать со сжатием:
Код
C++ (Qt)
void KlenLibrary::slotBackupLibrary()
{
   QString sNameBackupLibrary = QFileDialog::getSaveFileName(0, tr("Backup library"), "", "*.xwlbz");
 
   if(sNameBackupLibrary == "") return;
   if(sNameBackupLibrary.indexOf(".xwlbz") == -1) sNameBackupLibrary += ".xwlbz";
 
   QFile ifile(sNameLibrary);
   ifile.open(QIODevice::ReadOnly);
   QByteArray baExport;
   baExport = ifile.readAll();
   ifile.close();
   baExport = qCompress(baExport, 9);//Сжатие данных - 9-ая степень
   QFile ofile(sNameBackupLibrary);
   ofile.open(QIODevice::WriteOnly);
   ofile.write(baExport);
   ofile.close();
}
 
void KlenLibrary::slotRestoreLibrary()
{
   QString sNameBackupLibrary = QFileDialog::getOpenFileName(0, tr("Open backup"), "", "*.xwlbz");
 
   if(sNameBackupLibrary == "") return;
 
   QFile ifile(sNameBackupLibrary);
   ifile.open(QIODevice::ReadOnly);
   QByteArray baImport;
   baImport = ifile.readAll();
   ifile.close();
   baImport = qUncompress(baImport);//Извлечение данных из архива
 
   sNameBackupLibrary = QFileDialog::getSaveFileName(0, tr("Restore library"), "", "*.xwlb");
 
   if(sNameBackupLibrary.indexOf(".xwlb") == -1) sNameBackupLibrary += ".xwlb";
   if(sNameBackupLibrary == "") return;
 
   QFile ofile(sNameBackupLibrary);
   ofile.open(QIODevice::WriteOnly);
   ofile.write(baImport);
   ofile.close();
}
Несколько изменений:
Цитировать
      - Добавилась возможность резервировать базу данных библиотеки(со сжатием до 5-ти раз(!));
      - Добавлена возможность работы с несколькими библиотеками;
      - Добавлена поддержка полного форматирования текста при печати книги;
      - Добавлено cжатие(до 5-ти раз(!)) импортированной книги в формате xwb.
      - Изменились несколько элементов меню;
Скачать
Записан
xwicked
Гость
« Ответ #43 : Февраль 17, 2012, 21:40 »

Здравствуйте! Оптимизирована функция изменения шрифта:
Код
C++ (Qt)
       bool Accept;
       QFont TextFont;
       TextFont = TextQuestion->textCursor().charFormat().font();
       TextFont = QFontDialog::getFont(&Accept, TextFont);
 
       if(Accept)
       {
           QTextCharFormat tcf;
           tcf.setFont(TextFont);
           TextQuestion->textCursor().setCharFormat(tcf);
           cbFont.setCurrentFont(TextFont);
       }
       else return 1;
и другие изменения.
Скачать
Это последняя версия. В Git создана ветка current теперь, все свежие изменения будут там.
Записан
xwicked
Гость
« Ответ #44 : Апрель 03, 2012, 20:10 »

Здравствуйте! Новый код. Версия 1.0.0 - это первая версия, в которой можно нормально работать с изображениями. Их количество теперь будет ровно таким, каким и должно быть, не больше.
Повышена безопасность программы перемещением некоторых переменных в секцию private: Теперь доступ к ним осуществляется из методов:
Код
C++ (Qt)
...
 
int TTextBook::isCountPages() const
{
   return ListPages.count();
}
 
int TTextBook::isNumberBook() const
{
   return i_NumberBook;
}
 
void TTextBook::setNumberBook(int iNumberBook)
{
   i_NumberBook = iNumberBook;
}
 
int TTextBook::isYear() const
{
   return i_Year;
}
 
void TTextBook::setYear(int iYear)
{
   i_Year = iYear;
   sYear.setNum(iYear);
}
 
int TTextBook::isCurrentPage() const
{
   return i_CurrentPage;
}
 
void TTextBook::setCurrentPage(int iCurrentPage)
{
   i_CurrentPage = iCurrentPage;
}
 
int TTextBook::isModeWork() const
{
   return b_ModeWork;
}
 
void TTextBook::setModeWork(bool bModeWork)
{
   b_ModeWork = bModeWork;
}
 
QByteArray TTextBook::isPassword() const
{
   return ba_Password;
}
 
void TTextBook::setPassword(QByteArray baPassword)
{
   ba_Password = baPassword;
}
...
 
//Исправлена печать - печатается весь текст :)
void TTextBook::slotPrint()
{
   QPrinter printer;
   QPrintDialog *pPrintDialog = new QPrintDialog(&printer);
   QTextDocument *textDoc = new QTextDocument;
   QString sPrint;
 
   if(pPrintDialog->exec() == QDialog::Accepted)
   {
       sPrint = makeOneHTML();
 
       QImage textImage;
 
       for (int i = 0; i < ListImages.count(); i++)
       {
           textImage.loadFromData(ListImages.at(i));
           textDoc->addResource(QTextDocument::ImageResource, QUrl(slNumberImages.at(i)), textImage);
       }
 
       textDoc->setHtml(sPrint);
       textDoc->print(&printer);
   }
 
   delete textDoc;
   delete pPrintDialog;
}
Цитировать
- Оптимизирована скорость загрузки книги до 10 раз;
- Исправлена невозможность нормальной работы с изображениями в книге;
- Добавлен экспорт книги в PDF, PostScript, RTF;
- Исправлена печать книги, теперь печатается весь текст;
- Добавлено шифрование файла книги в формате xwb;
- Модуль Шёлковый тест обновился до версии 1.0.0;
- Добавлена возможность проверки наличия новой версии через интернет
Всего 27 изменений. Скачать:
Теперь исходник одним файлом. Вся информация по сборке rpm и deb-пакетов находится внутри.
Записан
Страниц: 1 2 [3] 4 5   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.235 секунд. Запросов: 23.