ImageProcessing-ElectronicPublications / scantailor-experimental

Scan Tailor Experimental is an interactive post-processing tool for scanned pages.
https://github.com/Tulon/scantailor/tree/experimental
GNU General Public License v3.0
30 stars 0 forks source link

feature: 5. Margin: Alignment: Custom #20

Open zvezdochiot opened 6 months ago

zvezdochiot commented 6 months ago

Hi @plzombie , @noobie-iv .

Не получается добавить выравнивание "Custom" (на базе "Scaling", но ручное задание масштабного коэффициента через дополнительный, отключаемый в других выравниваниях QDoubleSpinBox). То тут, то там запарываюсь наглухо. Ежели сможете подсобить, то буду очень рад. С этим выравниванием система масштабирования STEX станет завершённой. Такие вот дела.

noobie-iv commented 6 months ago

Могу только поддержать морально. Гоп! Гоп!

У меня в планах зависнуть в отладчике, чтобы наконец понять, как там эта многопоточная лапша вообще работает. Ранее попытки понять это вычитыванием кода полностью провалились; веселые факты типа "знаете ли вы, что вызов updateSortOptions приводит к обновлению кеша картинок" просто выносят мозг.

Без понимания я не встрою никакой новый функционал, потому что он всю программу цепляет. Если разберусь - смогу и в STEX чем-то помочь.

А то, что я для STEX делал - это мелочи, на которые случайно натолкнулся в процессе поисков в STU.

zvezdochiot commented 6 days ago

Hi @plzombie , @noobie-iv .

Ещё раз обращаюсь к вам. Я опять в ступоре.

Для расчётов полей используется следующий базовый размер: https://github.com/ImageProcessing-ElectronicPublications/scantailor-experimental/blob/249d4e7c42bfe513bbccf6f8d6ef8ea814a3733b/src/stages/page_layout/PageLayout.cpp#L53-L55 https://github.com/ImageProcessing-ElectronicPublications/scantailor-experimental/blob/249d4e7c42bfe513bbccf6f8d6ef8ea814a3733b/src/stages/page_layout/ImageView.cpp#L699-L701 https://github.com/ImageProcessing-ElectronicPublications/scantailor-experimental/blob/249d4e7c42bfe513bbccf6f8d6ef8ea814a3733b/src/foundation/RelativeMargins.h#L42-L44 https://github.com/ImageProcessing-ElectronicPublications/scantailor-experimental/blob/249d4e7c42bfe513bbccf6f8d6ef8ea814a3733b/src/foundation/RelativeMargins.h#L50-L52 Как мне "вывести на табло" и иметь возможность поменять ручками этот базовый размер? Мои попытки приводят к дичи: либо всё ломается, либо нишиша не работает.

PS: Сейчас сканирую книгу, на которой просто необходим постоянный базовый размер для полей независимо от размеров контента. То бишь нужны одинаковые поля при сильно различающемся контенте.

noobie-iv commented 4 days ago

Я пока даже свою пародию до ума не довел, не говоря про вмешательство в полноценный СТ. Кеш превьюшек оказался сам многопоточным, внутре многопоточного тейлора. И они таки друг другу сигналят. Чтобы добавлять что-то в интерфейс, надо наизусть знать, в каких местах добавлять эти сигналы, и в каких местах ловить. Иначе что-то обязательно не законтачит. В больших программах, типа автокада, на такие темы здоровенные разделы справки с примерами приводят. А тут надо все такие места выискивать. На такие вопросы я смогу отвечать только после доделки своего микро-ст до минимально рабочего состояния.