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
Textual: a TUI (Text User Interface) framework for Python inspired by modern web development

Textual Textual is a TUI (Text User Interface) framework for Python inspired by

17.1k Jan 04, 2023
A powerful Minecraft command library.

Mecha A powerful Minecraft command library. from mecha import Mecha

32 Dec 10, 2022
Vsm - A manager for the under-utilized mksession command in vim

Vim Session Manager A manager for the under-utilized `mksession` command in vim

Matt Williams 3 Oct 12, 2022
Wordle breaker: A CLI tool to help you solve Wordle

Wordle Breaker A CLI tool to help you solve Wordle I decided to code a solution

Alex 4 Apr 27, 2022
🎈 A Mini CLI-based Operating System simulator

Mini OS Simulator Summary 🎈 A Mini CLI-based Operating System simulator, well, not really. It simulates a file system with songs and movies and stuff

Jaiyank S. 3 Feb 14, 2022
Pyrdle - Play Wordle in the CLI. Write an algorithm to play Wordle for you. Ruin all of the fun you've been having

Pyrdle - Play Wordle in the CLI. Write an algorithm to play Wordle for you. Ruin all of the fun you've been having

Charles Tapley Hoyt 11 Feb 11, 2022
Python Processing Tool for Vasp Ipnut/Output

PivotPy A Python Processing Tool for Vasp Input/Output. A CLI is available in Powershell, see Vasp2Visual. stylea{text-decoration: none !important;c

Abdul Saboor 5 Aug 16, 2022
A Hikari command handler for people who love ducks.

duckari A Hikari command handler made with love by ducks. Currently Duckari is work in progress. Documentation is WIP. The wiki is no longer used as d

2 Oct 09, 2022
Command Line Based Todo Script

Todo-CLI Features Full-Fledged Command Line Based Todo List with the following features planned: Interactive Interface OS Notifications Save and Remov

DSC IIEST 5 Nov 17, 2021
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

0 Oct 04, 2021
A simple cli utility for importing or exporting dashboard json definitions using the Grafana HTTP API.

P4CMD 🌴 A Python Perforce package that doesn't bring in any other packages to work. Relies on p4cli installed on the system. p4cmd The p4cmd module h

Beam Connectivity 31 Jan 06, 2023
Alacritty terminal used with Bash, Tmux, Vim, Mutt, Lynx, etc. and the many different additions added to each configuration file

Alacritty terminal used with Bash, Tmux, Vim, Mutt, Lynx, etc. and the many different additions added to each configuration file

Carter 19 Aug 24, 2022
🌍 Harness the power of whatsmydns from the command-line.

chkdns Harness the power of whatsmydns from the command-line. Installing with pip pip install chkdns Run chkdns --host github.com Alternatively you ca

Craig Gumbley 3 Oct 29, 2022
GetRepo-py is a command line client that queries GitHub API and searches repositories by given arguments

GetRepo-py is a command line client that queries GitHub API and searches repositories by given arguments

Davidcin 3 Feb 14, 2022
A command-line based, minimal torrent streaming client made using Python and Webtorrent-cli.

ABOUT A command-line based, minimal torrent streaming client made using Python and Webtorrent-cli. Installation pip install -r requirements.txt It use

Janardon Hazarika 17 Dec 11, 2022
Get latest astronomy job and rumor news in your command line

astrojobs Tired of checking the AAS job register and astro rumor mill for job news? Get the latest updates in the command line! astrojobs automaticall

Philip Mocz 19 Jul 20, 2022
A project designed to make taking notes easier than ever - by doing it all on command line

A project designed to make taking notes easier than ever - by doing it all on command line! Yes, all of your files are easily accessible through one command interface, and can be written to at any ti

1 Dec 10, 2021
pyGinit is a command line tools that help you to initialize your current project a local git repo and remote repo

pyGinit pyGinit is a command line tools that help you to initialize your current project a local git repo and remote repo Requirements Requirements be

AlphaBeta 15 Feb 26, 2022
Dark powered asynchronous completion framework for neovim/Vim8

deoplete.nvim Dark powered asynchronous completion framework for neovim/Vim8 Note: The development of this plugin is finished. Accepts minor patches a

Shougo 5.9k Dec 30, 2022
Dart Version Manager CLI implemented with Python and Typer.

Dart Version Manager CLI implemented with Python and Typer.

EducUp 6 Jun 26, 2022