split-manga-pages: a command line utility written in Python that converts your double-page layout manga to single-page layout.

Overview

split-manga-pages

split-manga-pages is a command line utility written in Python that converts your double-page layout manga (or any images in double page layout) to single-page layout. This can make it much easier to read said manga on small screens, such as those found on mobile devices

Installation

To install, you can download the newest executable version for your operating system from the Releases section (recommended for non-tech savvy people). Alterantively, you can build it from source yourself, following the Build Instructions section below. Or, you can follow the instructions just below to download and run the Python script (cross-platform). The advantage of doing this is that the executable takes can take 1-2 seconds to start up while the Python script starts instantly, and you can also easily modify the script yourself without having to rebuild if you know some Python.

Instructions for downloading python script

These steps are not requried if you download the executable from Releases or build from source

  1. Make sure you have python installed:
    1. Open a terminal
    2. Try to run python3 and python
    3. If either one of these give you a prompt saying something like Python 3.8.10 (default, Nov 26 2021...., then you are good to go
    4. If not, install Python
  2. Clone repository: git clone https://github.com/christofferaakre/split_manga_pages.git
  3. cd into directory: cd split_manga_pages
  4. Install dependencies: pip install -r requirements.txt
  5. Try to run the script: python3 split_manga_pages.py (If you are on Windows you might need to type python instead of python3
  6. If you get a message saying something like usage: split_manga_pages.py [-h] [-d DIRECTORY], it was installed correctly. Otherwise, you might need to install Python or the dependencies
  7. For convenience, put the script somewhere in your system path.

Usage

Run the executable from the command line with the appropriate command line arguments

Command line arguments

Argument Required Description
-d DIR, --directory DIR yes Directory containing the image files
-m, --mode yes The mode to be used. See Modes
-nk, --no-keep no Don't keep the original double page spreads when using detect mode
-h, --help no Show help and options for the script

Modes

Support modes are 'all' and 'detect'.

'all'

Treats all images in the directory as double page spreads. Converts them all to single page layouts, i.e. you get twice as many images as you had, and these are put in a directory called split_manga_pages.

'detect'

Uses the resolutions of the images and some simple statistical analysis to determine which images are single page spreads and which are double page. Then splits only the double page images into single page images, and also keeps the original double page image, so you get the original doble page image followed by the two single page images. Images are placed in the orginal directory.

Example

Mode 'all'

I have a folder called manga containing only double page images with names page001.png, page002.png, etc. I run python3 split_manga_pages.py -d manga -m all, and I get a new folder called split_manga_pages containing files page001part1.png1, page001part2.png, page002part1.png, page002part2.png, etc.

Mode 'detect'

I have a folder called manga containing mostly single page images, but every so often there is a double page spread. For example, there are files page001.png, page002.png, and page003.png. page002 is a double spread, whereas the other two are sinlge spread. I run python3 split_manga_pages.py -d manga -m detect, and now in the manga folder I will find files page001.png, page002.png, page002part1.png, page002part2.png, page003.png.

Build instructions

  1. Clone repository and cd into it
  2. run pyinstaller --onefile split-manga-pages.py
  3. The executable should be placed in the dist folder

Note that pyinstaller only builds executables for the current operating system you are on.

You might also like...
A command line utility for tracking a stock market portfolio. Primarily featuring high resolution braille graphs.
A command line utility for tracking a stock market portfolio. Primarily featuring high resolution braille graphs.

A command line stock market / portfolio tracker originally insipred by Ericm's Stonks program, featuring unicode for incredibly high detailed graphs even in a terminal.

📦 A command line utility to put text in a box.
📦 A command line utility to put text in a box.

boxie A command line utility to put text in a box. Installation pip install boxie If you are on Linux you may need to use sudo to access this globally

A handy command-line utility for generating and sending iCalendar events

A handy command-line utility for generating and sending iCalendar events This simple command-line utility is designed to generate an iCalendar event,

Tiny command-line utility for mapping broken keys to other positions.

brokenkey Tiny command-line utility for mapping broken keys to other positions. Installation Clone this repository using git: git clone https://github

This is a CLI utility that allows you to view RedFlagDeals.com on the command line.
This is a CLI utility that allows you to view RedFlagDeals.com on the command line.

RFD Description Motivation Installation Usage View Hot Deals View and Sort Hot Deals Search Advanced View Posts Shell Completion bash zsh Description

img-proof (IPA) provides a command line utility to test images in the Public Cloud

overview img-proof (IPA) provides a command line utility to test images in the Public Cloud (AWS, Azure, GCE, etc.). With img-proof you can now test c

A command-line utility that, given a markdown file, checks whether all its links work.

A command-line utility written in Python that checks validity of links in a markdown file.

slipit is a command line utility for creating archives with path traversal elements.

slipit is a command line utility for creating archives with path traversal elements. It is basically a successor of the famous evilarc utility with an extended feature set and improved base functionality.

Double Pendulum visualised with fetching system information in Python.
Double Pendulum visualised with fetching system information in Python.

Show off your terminal, in style. A nice relaxing double pendulum simulation using ASCII, able to simulate multiple pendulums at once, and provide tra

Releases(v0.1.0)
Owner
Christoffer Aakre
Christoffer Aakre
Bringing emacs' greatest feature to neovim - Tetris!

nvim-tetris Bringing emacs' greatest feature to neovim - Tetris! This plugin is written in Fennel using Olical's project Aniseed for creating the proj

129 Dec 26, 2022
A Python-based Wordle solver and CLI player

Wordle A Python-based Wordle solver and CLI player This was created using Python 3.9.7. SPOILER ALERT: the data directory contains spoilers for upcomi

Will Fitzgerald 1 Jul 24, 2022
The WalletsNet CLI helps you connect to WalletsNet

WalletsNet CLI The WalletsNet CLI helps you connect to WalletsNet. With the CLI, you can: Trigger webhook events or resend events for easy testing Tai

WalletsClub 8 Dec 22, 2021
stonky is a simple command line dashboard for monitoring stocks.

stonky is a simple command line dashboard for monitoring stocks.

Jessy Williams 228 Dec 14, 2022
grungegirl is the hacker's drug encyclopedia. programmed in python for maximum modularity and ease of configuration.

grungegirl. cli-based drug search for girls. welcome. grungegirl is aiming to be the premier drug culture application. it is the hacker's encyclopedia

Eristava 10 Oct 02, 2022
Faza - Faza terminal, Faza help to beginners for pen testing

Faza terminal simple tool for pen testers Use small letter only for commands Don't use space after command 'help' for more information Installation gi

Ag3ntQ 5 Feb 20, 2022
A simple cli tool to commit Conventional Commits

convmoji A simple cli tool to commit Conventional Commits. Requirements Install pip install convmoji convmoji --help Examples A conventianal commit co

3 Jul 04, 2022
Skiller - With this payload you can control the target computer with (cmd)

Skiller - With this payload you can control the target computer with (cmd)

1 Jan 02, 2022
🌈 Generate color palettes based on Neovim colorschemes.

Iris Iris is a Neovim plugin that generates a normalized color palette based on your colorscheme. It is named for the goddess Iris of Greek mythology,

N. G. Scheurich 45 Jul 28, 2022
🕰 The command line tool for scheduling Python scripts

hickory is a simple command line tool for scheduling Python scripts.

Max Humber 146 Dec 07, 2022
CLI helper to install Github releases on your system.

gh-release-install is a CLI helper to install Github releases on your system. It can be used for pretty much anything, to install a formatter in your CI, deploy some binary using an orcherstration to

Jonas L. 28 Nov 06, 2022
Lsp Plugin for working with Python virtual environments

py_lsp.nvim What is py_lsp? py_lsp.nvim is a neovim plugin that helps with using the lsp feature for python development. It tackles the problem about

Patrick Haller 55 Dec 27, 2022
A simple weather tool. I made this as a way for me to learn Python, API, and PyPi packaging.

A simple weather tool. I made this as a way for me to learn Python, API, and PyPi packaging.

Clint E. 105 Dec 31, 2022
Jupyter notebook client in neovim

🪐 Jupyter-Nvim Read jupyter notebooks in neovim Note: The plugin is still in alpha stage 👾 Usage Just open any *.ipynb file and voila! ✨ Contributin

Ahmed Khalf 85 Dec 29, 2022
A terminal tool for git. When we use git, do you feel very uncomfortable with too long commands

PIGIT A terminal tool for git. When we use git, do you feel very uncomfortable with too long commands. For example: git status --short, this project c

Zachary 1 Apr 09, 2022
Run an FFmpeg command and see the percentage progress and ETA.

Run an FFmpeg command and see the percentage progress and ETA.

25 Dec 22, 2022
Python library & console tool for controlling Xiaomi smart appliances

python-miio This library (and its accompanying cli tool) can be used to interface with devices using Xiaomi's miIO and MIoT protocols. Getting started

Teemu R. 2.4k Jan 02, 2023
Python package with library and CLI tool for analyzing SeaFlow data

Seaflowpy A Python package for SeaFlow flow cytometer data. Table of Contents Install Read EVT/OPP/VCT Files Command-line Interface Configuration Inte

<a href=[email protected]"> 3 Nov 03, 2021
A helper program to play wordle

A helper program to play wordle

1 Jan 22, 2022
A python program to detect your emotion and suggest a playlist.

mood_music A python program to detect your emotion and suggest a playlist. This program is written in python using opencv,FER() and tensorflow This pr

Aditya_Sai 1 Jan 02, 2022