-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request: Whole Page button in Select Content #49
Comments
Hi @0x2d7e21 . Вполне очевидный вопрос: А при повороте, перспективе или кривых этот выбор какую область будет выбирать? |
Возможно максимально возможный прямоугольник, вписанный в данную фигуру. Главное чтобы не выходил за границы страницы. |
@0x2d7e21 say:
Это логично только при "отсутствии искажений", но во всех остальных случааях - крайне сомнительно. @noobie-iv в STU есть определённая реализация подобного, но я её не сильно щупал. Ежели будет какое мнение на случай наличия искажений - высказывай, не стесняйся. |
Посмотрел у них, там при выборе всей странице выбирает порямоугольник описанный вокруг искаженной страницы. Но до этого в этой программе меня смущало отсутствие выпрямления строк. Однако эта функция, как оказалось, в ней присутствует, только она там на последнем этапе вывода результата. Также нашел в ней более широкий функционал настройки программы. Пожалуй остановлюсь пока на ней. Тут же без выбора всей страницы приходится сидеть и править границы каждой страницы без необходимости. |
Все же мне непонятно в чем проблема описать вокруг любой искаженной фигуры прямоугольник или вписать в нее (описать конечно значительно проще)? В случае косяков, когда результат будет неудовлетворительным, всегда можно поправить область руками. |
@0x2d7e21 say:
А зачем? Зачем долго и упорно править, тестировать и снова править программу ради опции, которая на дефолтном режиме будет делать полную фигню? А дефолтный режим - это поворот. |
Проблема не в повороте, а в том, что программа не определяет правильно границы, не вписывая в них номера страниц, и приходится вручную править. При том, что страница совершенно не требует правки, идеальный скан. И нет возможности просто выбрать всю страницу как необходимую область. И не нужно ее делать дефолтной. Но если вопрос стоит, что мне это не нужно, то вопросов нет. Но я подумал, что тут вроде как есть поддержка, и что-то делается, проект как-то хочет развиваться. И данный функционал, как оказалось, есть и в STA, и в STU, значит там он кому-то понадобился. Вопрос можно снять, если нет желания. Я нашел весь необходимый функционал на STA и в STU. |
@0x2d7e21 say:
Нужно, но только не в таком виде. Я же не слепой и видел эту опцию в других семействах ST. И хотел её позаимствовать. Но именно из-за вопроса с наличием искажений резко дал по тормозам. Без разумного решения этого вопроса для случаев наличия искажений, я к этому вопросу возвращаться не буду. PS: Ваше утверждение, насчёт отсутствия необходимости в этапе обрезки и, соответственно, выравнивания, крайне сомнительно для случая, когда все страницы имеют разные размеры. Ежели усё уже сделано, так какого рожна размеры то разные? (я же эту прогу веду не для того, чтобы с кодом поиграться, а для того, чтобы использовать, и использую постоянно, так что опыта по материалу у меня как у дурака фантиков). |
Страницы одинакового размера, но локация текста на них нефиксированная (плавающая), где-то слева, где-то справа. Но нужен именно всей страницы, пустая область для записей, например. Странно, что не вылавливает номер страницы. Возможно, тогда и вопроса бы не было. Но с костылями можно все сделать. Надеюсь найдется решение универсальное и простое. Вам успехов. |
@0x2d7e21 say:
Выберите всю страницу и примените ко всем. Без "костылей". Именно так и делаю на таком материале. Не вопрос. Вы лукавите, причём нагло: @0x2d7e21 say:
|
Не знаю как объяснить, вот есть файлы страниц разного размера в пикселях из-за обрезки, но одинаковых визуально. В программе они все будут выглядеть одинаково визуально, текст на них как я упомянул разполагаются вразброс, автоматически выбирается неправильно, мне нужна чтобы попала вся область страницы как есть, я выбираю ее на первой странице вручную и применяю ко всем. Возможно эта область копируется в пикселях, поэтому в следующей странице эта область не будет охватывать ту же область, она будет или меньше или больше, из-за разницы пиксельных размеров. И далее так как я описал, со всеми костылями. |
В других программах есть коррекция дпи, но у них бывают искажения визуальные страницы, поэтому я ее не применяю. И при обрезки разворота пополам на страницы, размеры дпи все равно могут измениться. А вытащить страницы и поправить их дпи размеры на этапе обрезки страниц невозможно. Не знаю зачем я все это пишу, но надеюсь вы поняли. И трудно поверить, что вы с таким не столкнулись. Мне приходиться править много книг, печатных и рукописей. Как и сказал, функционал других программ решает некоторые неудобства. Подробности рализации функций в них я не понимаю, разве что представляю интуитивно. |
В соседней ветке было предложение выбора страниц для выборочного применения изменений, которое вы тоже пометили ошибкой. Хотя логика в просьбе есть. И она также более-менее реализована, как оказалось, в других ветках программы, сту и ста. Можно было просто сказать, что вам это не нужно и делать этого не будете, вместо того, чтобы заставлять человека оправдываться за просьбу функции. Это свободно доступная программа, все отлично понимают, что никто никому ничем не обязан. Спасибо за то, что есть. |
@0x2d7e21 в соседней ветке обсуждение остановилось, так как никто не понимает, как данную фичу реализовать (проблемы начинаются на стадии работы с колонкой thumbnails). Кодовая база с другими версиями scantailor достаточно сильно разошлась, как и функционал. Вон от меня тоже висит баг с hidpi, который я не могу пофиксить, потому что там работы на пару строчек кода, а перерыть надо пару мегабайт в поисках места, куда их вставить. |
@0x2d7e21 say:
Именно! И не стоит на это надеятся. И на таком материале, после тщательного изучения, всегда выявлялась стопроцентная необходимость в обрезке и выравнивании, о чём я и говорил ранее. Без этого данный материал нельзя хорошо обработать. Ежели вы хотите обрабатывать материал плохо, то используйте другие представители семейства ST: STA или STU. И пишите под вашей поделкой: "Обработано в STA" или "Обработано в STU". Но ни в коем случае не обрабатывайте в STEX. PS: "Wrong" - означает не что то аморфно неправильное, а неправильно заданный вопрос или его нелогичность. В соседнем issue просьба развивать функционал, который вообще надо ликвидировать и полностью переносить в "Эскизы". Только мне непонятно как. В данном issue логика запрашиваемого вами функционала мне до конца совсем непонятна, а цель такого функционала - делать обработку плохо. Отсюда и "Wrong" в обоих случаях! |
Вобщем суть проблемы я не смог донести. Я говорю про возникшую проблему и что решение это или делать вручную в программе или вне программы, что муторнее. А вы пытаетесь меня убедить, что такой проблемы нет, и предлагаете решения, неуниверсальность которых я озвучил еще в первом посте. Наглядно бы показать было бы проще конечно. Пока пользуюсь ста и сту, все хотелки работают как надо. Разницы в качестве пока не заметил, но увидил в них более гибкую настройку и больший функционал. Стех была удобна именно порогом входа в инструмент и неудачный первый опыт в других. А в чем проявляется «худшесть» их обработок? |
@0x2d7e21 say:
Пробема есть, только она "слегка" другая, а не та, которую вы озвучили. @0x2d7e21 say:
По разному: Либо текст невыровнен, хотя ежу видно, что требуется выравнивание. Либо он не приведён к одному масштабу. Либо вообще наблюдаем нарушение пропорций отдельных страниц. |
@0x2d7e21 say:
Теоретически все тейлоры - СКАН. То есть требуют чистое, равномерно освещенное, высокого разрешения изображение, как максимум - слегка повернутое, потому что его неровно положили на стекло. Если такое есть, STA/STU - то, что надо. А фактически полно исходников, которые сняты пьяным ночью на телефон - т.е. кривые, пересвеченно-недосвеченные и т.п. Для таких нужен STEX - с разверткой и фильтрами по обработке изображений. Не фотошоп, конечно, но лучше, чем ничего.
Фокус не в этом. А в том, что программа написана вполне профессиональными программистами на плюсах. И править ее нужны такие же. А взамен есть полтора колченогих любителя. Лично я (не программист) с мая по декабрь пытаюсь микропародию на ST написать в свободное время, чтобы хоть примерно въехать, как у него кишки работают; и пока вижу, что в этот год уже не уложусь. Если сможете приманить айтишника - печеньками, или кофеем бесплатным по ночам, или на что их там ловят - дело пойдет на лад. Нужен плюсовик, у которого вопрос "зачем тут мягкий указатель на жесткий указатель на обычный указатель защищен мутексом" не вызывает ступор, как у меня. |
@noobie-iv say:
А я вообще обработчик сканированного материала. И не скрываюсь. Так что, где ты полтора насчитал? Максимум один наскребётся, ежели всех поднапрячь, включая Александра. ;) PS: Роман, а ты не пробовал YASW для своих целей "попинать"? |
@zvezdochiot say:
А вот надо в double-ах суммировать, а не в int-ах 😄
Нет, чтобы править ST, надо думать как ST 😢 Все эти его навороты - это ж многопоточная оптимизация для отзывчивости интерфейса. По щелчку не обработчики сделаны, а загрузка легковесных заданий в очередь на фоновую обработку. У аналогов такого нет, и по ним этому не научишься. Вроде как осталось мне эту эскиз-кашу (которая ThumbnailPixmapCache, она внутри тоже фоново-многопоточная) осилить, а там все вопросы вызывает. Есть тут раздел "вопросы в воздух"? Например, зачем нужен класс BackgroundLoader, который только содержит ссылку на меня, и мне же передает сообщение, которое я же ему отправляю. Почему не отправлять сообщение сразу себе? Или как можно делать int m_totalLoadAttempts, а потом m_totalLoadAttempts++ в бесконечном цикле - это не UB разве? Не надо его на unsigned поменять? И т.п. Энта каша в двух версиях есть - STU/STA, и STEX. И обе версии появляются запуливанием одного большого коммита, который содежит все эти 40k кода разом. А внутре - несколько очередей, несколько статусов, и несколько флагов, которые постоянно друг друга хаотично переключают через потоки и события, вот над ними я и туплю уже не один день. Я ее допинаю, конечно, своим любимым способом - "пиши что попало, когда-нибудь да заработает", но очень уж оно долго выходит. |
@noobie-iv say:
Как допинаешь, сразу делаю заказ в STD (простите за наглость, но уж мочи нету) на новый этап перед page_layout : filtering (не использовать "filters", ибо "filters" уже "приспособил" Тулон под этапы). В новый этап включить не только сами фильтры, но и масштабирование (причём двухосное) каждой отдельной страницы в виде масштабных коэффициентов от 0.5 до 2.0. Алгоритм автоматического определения этих коэффициентов быстро "придумаем", не пережиавать. ;) |
И в микрокаше я запутался. Пришлось сначала нанокашу варить. Из одного элемента. Ну, хотя бы базовая логика дошла. Теперь в mvst чуть расширенную версию свалять, и можно аналогичное описание для ST делать. А там, глядишь, и стадии/фильтры править можно будет научиться. Прошлый раз я в отладчике в кашу провалился на прошлый новый год. А это, по интерполяции, планы до следующего нового года. Попрошу дедушку на новый год мозгов принести 😄 |
Таки вот еле-видимая-версия. Эскизы не создаются и не сохраняются, файлового вывода нет. Не факт даже, что работает правильно, особенно самодеятельность в кеше. Одна польза - теперь можно проследить базовую логику работы. В реальных ST логика раза в два-три навороченнее будет. Но поиграть еще пару лет до полного сходства я не готов. На этом, видимо, закончу возню с mvst. Разве что еще помедитирую на диаграммки и добавлю текстовое описание. Список использованных классов: И трассировка одиночного щелчка мыши по эскизу (узнаю прошлоновогоднюю кашу): |
Часто бывает, что страницы не требуют редактирования, так как поля и текст уже оцентрованы как нужно. При этом пропустить шаг выбора контента невозможно, а выбор там либо автоматический (который часто не добавляет например номера страниц в область), либо вручную, что тоже занимает время. Не хватает кнопки: выбрать всю область страницы. Можно конечно выбрать область на первой странице и применить ко всем, но в случае разных размеров страниц этот вариант неуниверсален. Причем если выбранная страница меньше остальных, то они обрежутся, если же больше, то область на них выйдет за границы страницы и добавит лишних полей, и при этом если можно вручную подогнать лишние области под размеры страницы слева и справа, то снизу и сверху невозможно, так как эта область страницы в программе не видна. Решение на данный момент это сделать размер страниц одинаковыми перед загрузкой в программу, затем выбрать вручную область страницы и применить ко всем страницам. Но добавление кнопки выбрать всю область страницы решило бы данную проблему.
The text was updated successfully, but these errors were encountered: